16

我正在为 Android 构建许多应用程序,并希望在应用程序中有一个菜单按钮,基本上可以打开我在 Android 市场中的其他应用程序列表。

有没有办法创建一个意图并让 Android 市场在市场上搜索(我的公司),以便用户可以购买其他应用程序?

伊恩

4

6 回答 6

65

最好使用“market://details”而不是“market://search”:

Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setData(Uri.parse("market://details?id=com.android.example"));
startActivity(intent);

然后它直接打开应用程序的详细信息页面。通过搜索,它会显示单个搜索结果,用户必须额外单击才能进入详细信息页面。

于 2011-07-08T16:05:32.340 回答
23

是的,有一个记录在案的Intent语法http://market.android.com/search?q=pub:<Developer Name>market://search?q=pub:<Developer Name>)。

于 2010-08-09T18:19:30.977 回答
4

意图操作将是查看,并且 uri 是市场 url/uri。

像这样:

startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("market://search?q=pub:<developer name>") ) );
于 2011-03-09T11:05:33.300 回答
3

另一种方法是URL Intent使用您的应用程序的包名称启动一个。用户将弹出已安装的Browsers + Play Store应用程序列表,他可以在其中查看您的目标应用程序。

String appPackageName = "com.example.android";
String url = "https://play.google.com/store/apps/details?id=" + appPackageName;
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setData(Uri.parse(url));
startActivity(intent);

上面的代码在 Play Store 版本 4.1.6 上经过测试并按预期工作

于 2013-06-19T13:44:14.307 回答
2

在我的真实设备 Sony Xperia Pro 和 PocketBook 平板电脑上,即使您放置了一个播放网络商店的链接,例如https://play.google.com/store/apps/details?id=com.estrongs.android.pop 它也会询问如果您想在默认浏览器或 Play 市场中打开它。如果您选择 Play market - 应用程序将按预期显示。没有故意测试它,用 TextView 的 Autolink 测试。

于 2012-05-21T07:04:15.560 回答
0
@Override
public boolean onOptionsItemSelected(MenuItem item) {
     switch(item.getItemId()) {
         case R.id.adfree:
             final String appPackageName = "com.zooohooo.noads"; // Can also use getPackageName(), as below
             startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id=" + appPackageName)));
             return true;
         case R.id.rate:
             startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id=" + getPackageName())));
             return true;
     }
     return super.onOptionsItemSelected(item);
}
于 2014-05-13T06:05:55.693 回答