gpt4 book ai didi

android - 从 ionic 失败中打开市场

转载 作者:行者123 更新时间:2023-11-29 19:49:05 25 4
gpt4 key购买 nike

我有这个 ionic 应用程序,我在其中放置代码以打开浏览器并转到应用程序商店或谷歌播放,具体取决于操作系统。对 App Store 的调用有效。应用商店的字符串是:

market = 'https://itunes.apple.com/us/app/my_app_name/id12345';

而对于安卓是:

market = 'market://details?id=<package_name>';

打开浏览器的代码是:

cordova.InAppBrowser.open(market, '_blank', 'location=yes');

当我尝试在 android 中打开时,某种浏览器打开并显示消息:

"Web page not available. The webpage at market://details?id=my_app_id might be temporarly down ..."

在此之前,google play 的字符串是您通常在浏览器中使用的字符串,即:

http://play.google.com/store/apps/details?id=<package_name>

在那种情况下,消息是关于兄弟不支持调用 google play 的。它询问我是否要下载 google play 应用程序。

我想正确的方法是使用“市场”前缀?但仍然不明白为什么它没有显示该应用程序。

最佳答案

好的,所以我查看了 ios 的“cordova-plugin-market”源代码。 appstore 的 url 是这样构建的:

NSString *url = [NSString stringWithFormat:@"itms-apps://itunes.apple.com/app/%@", appId];

如果你想从 PC 浏览器导航,这就是 url 的样子:

https://itunes.apple.com/app/ id333903271(例如推特)

因此,如果您将此插件用于 Ios,请考虑添加“id”前缀,而不是使用 bundle Id(包名称),而是使用您应用的 Apple ID。对于 android 当然 com.example.package 就足够了

let appId;

if (this.platform.is("android")) {
appId = "com.example.package"
} else {
appId = "id1234567"
}

this.market.open(appId).then(response => {
console.debug(response);

}).catch(error => {
console.warn(error);
});

关于android - 从 ionic 失败中打开市场,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37292809/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com