红鱼儿

delphi开发的APP如何跳转微信小程序

有这样的需求,在我开发的delphi app上,要跳转到一个微信小程序。

第一步,判断本机是否安装微信

function IsWeChatInstalled: Boolean;
var
  PkgMgr: JPackageManager;
begin
  Result := False;
  try
    PkgMgr := TAndroidHelper.Context.getPackageManager;
    PkgMgr.getPackageInfo(StringToJString('com.tencent.mm'), 0);
    Result := True;
  except
    Exit;
  end;
end;

<!-- 在 <manifest> 下,<application> 同级 -->

<queries>
<%queries-child-elements%>
<package android:name="com.tencent.mm" />
</queries>

不需要申请 QUERY_ALL_PACKAGES 高危权限,只需要在 AndroidManifest.xml 里加 <queries> 白名单(包可见性声明),象上面这样。

第二步,跳转微信小程序

procedure TMainForm.Button2Click(Sender: TObject);
var
  Intent: JIntent;
  Url: string;
begin

  if not IsWeChatInstalled then
  begin
    ShowMessage('没有安装微信');
    Exit;
  end;

  // 替换为你的【小程序AppID】和【页面路径】
  Url := 'weixin://dl/business/?t=mini_app'
       + '&appid=wxXXXXXXXXXXXXXXX'  // 小程序 AppID
       + '&path=pages/index/index';  // 小程序页面路径

  Intent := TJIntent.JavaClass.init(TJIntent.JavaClass.ACTION_VIEW,
    TJnet_Uri.JavaClass.parse(StringToJString(Url)));
  // 启动跳转
  TAndroidHelper.Context.startActivity(Intent);
end;

第三步,在微信小程序后台设置

 

posted on 2026-06-17 11:33  红鱼儿  阅读(27)  评论(0)    收藏  举报