开发者

Android Link to Market from inside another app

开发者 https://www.devze.com 2023-01-10 16:27 出处:网络
I am building many apps for Android and wish to have a menu button in the apps that开发者_Python百科 basically opens a list of my other apps in the Android Market.

I am building many apps for Android and wish to have a menu button in the apps that开发者_Python百科 basically opens a list of my other apps in the Android Market.

Is there a way to create an intent and have the Android market pop up with a search (of my company) in the market so users can buy other apps?

ian


Even better to use "market://details" instead of "market://search":

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

Then it opens directly the details page of the app. With search it shows a single search result and the user has to do an additional click to get to the detail page.


Yes, there is a documented Intent syntax for that (http://market.android.com/search?q=pub:<Developer Name> or market://search?q=pub:<Developer Name>).


The intent action would be view, and uri the market url/uri.

Like this:

startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("market://search?q=pub:<developer name>") ) );


Another way is to launch a URL Intent with your application's package name in it. User will get popup with list of installed Browsers + Play Store app in which he can view your target app.

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);

Above code is tested and works as expected on Play Store version 4.1.6


On my real devices Sony Xperia Pro and PocketBook tablet, even when you put a link to play web store e.g. https://play.google.com/store/apps/details?id=com.estrongs.android.pop It will ask if you want to open it in the default browser or in the Play market. If you select Play market - application is shown as expected. Did not test it with intent, tested with Autolink from TextView.


@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);
}
0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号