【发布时间】:2009-12-27 00:57:19
【问题描述】:
我正在为 Android 上的应用开发精简版。如何启动打开 Android Market 的 Intent,最好显示我的应用程序的完整版本?这很难在模拟器上进行测试(这是我拥有的最接近设备的设备),因为似乎没有在其上安装 Market 的合法方式。
【问题讨论】:
我正在为 Android 上的应用开发精简版。如何启动打开 Android Market 的 Intent,最好显示我的应用程序的完整版本?这很难在模拟器上进行测试(这是我拥有的最接近设备的设备),因为似乎没有在其上安装 Market 的合法方式。
【问题讨论】:
上面的查询有效,但是当我尝试它时,它看起来像是根据名称显示搜索结果。
如果你使用类似的东西
intent.setData(Uri.parse("market://details?id=com.wolinlabs.SuperScorepad"));
相反,它会直接转到您应用的 Android Market 页面。
我认为这正是你想要的 (?)
【讨论】:
最终找到答案:
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setData(Uri.parse("market://search?q=pname:MyApp"));
startActivity(intent);
不过,无法在模拟器上进行测试。
【讨论】:
您好,我正在尝试实现相同但有一点点不同
我不想在我的应用程序中打开它
public void start(JSONArray args, CallbackContext callback) {
Intent launchIntent;
String packageName;
String activity;
String uri;
ComponentName comp;
try {
packageName = args.getString(0); //com.android.vending
activity = args.getString(1); //com.google.android.finsky.activities.LaunchUrlHandlerActivity
uri = args.getString(2); //'market://details?id=com.triplingo.enterprise'
launchIntent = this.cordova.getActivity().getPackageManager().getLaunchIntentForPackage(packageName);
comp = new ComponentName(packageName, activity);
launchIntent.setComponent(comp);
launchIntent.setData(Uri.parse(uri));
this.cordova.getActivity().startActivity(launchIntent);
callback.success();
} catch (Exception e) {
callback.error(e.toString());
}
}
最大的不同在于,您启动了一个新应用程序,而不仅仅是在您的应用程序中显示 GOOGLE PLAY 应用程序
这段代码是 Cordova 插件的一部分,但很明显你需要做什么才能在本地使用它。
重要的台词
launchIntent = this.cordova.getActivity().getPackageManager().getLaunchIntentForPackage(packageName);
comp = new ComponentName(packageName, activity);
launchIntent.setComponent(comp);
launchIntent.setData(Uri.parse(uri));
问候
【讨论】: