我现在申请了一个应用程序,我想在其中实现Rate Us功能。所以我已经在我的应用程序中添加了这段代码
i = new Intent(Intent.ACTION_VIEW , Uri.parse("market://details?id=com.bet.compny"));
startActivity(i);
break;
但是当我点击按钮时,我们会强行关闭。这是我的log cat输出。
android.content.ActivityNotFoundException: No Activity found to handle Intent {
act=android.intent.action.VIEW dat=market://details?id=com.bet.compny }
任何帮助都会受到欢迎。
答案 0 :(得分:14)
Idk为什么你会得到错误,但这实际上应该有效。我也这样做:
startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id=" + APP_PNAME)));
但请记住,如果您在没有Play商店的模拟器/设备上进行测试,这会崩溃。所以我建议你把它包起来试试并抓住
答案 1 :(得分:5)
我总是使用下面对我们有用的代码:
Intent rateIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id=" + context.getPackageName()));
startActivity(rateIntent);
认为它会对你有所帮助。
答案 2 :(得分:2)
这是最好的方法;
Appirater是基于原始Appirater By的Android库 Arash Payan Appirater iPhone。目标是创造一个干净的设计 应用评级提示您可以放入任何Android应用程序 帮助提醒您的用户在Android Market上查看您的应用。
答案 3 :(得分:2)
使用try catch实施如下:
try{
startActivity(new Intent("android.intent.action.VIEW", Uri.parse("market://details?id="+getPackageName())));
}
catch (ActivityNotFoundException e){
startActivity(new Intent("android.intent.action.VIEW", Uri.parse("https://play.google.com/store/apps/details?id="+getPackageName())));
}
答案 4 :(得分:1)
最好且简单的代码
private final String mStoreLink;
没有活动需要上下文/活动
this.mStoreLink = "market://details?id=" + activity.getPackageName();
创建一个这样的方法。
public void rateUsOnGooglePlay() {
final Uri marketUri = Uri.parse(mStoreLink);
try {
activity.startActivity(new Intent(Intent.ACTION_VIEW, marketUri));
} catch (android.content.ActivityNotFoundException ex) {
Toast.makeText(activity, "Couldn't find PlayStore on this device", Toast.LENGTH_SHORT).show();
}
}
答案 5 :(得分:0)
这通常发生在没有Google Play商店的设备上
答案 6 :(得分:0)
我认为你已经在模拟器中测试了这段代码,并且模拟器没有plastore应用程序,所以出现了这个错误。
我实现了这个,我的代码是这样的。
startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id=applicationID of play sotre")));
请在下面的代码中输入try catch。
并在Android设备中尝试此代码。
答案 7 :(得分:0)
Uri marketUri = Uri.parse("market://details?id=" + packageName);
Intent marketIntent = new Intent(Intent.ACTION_VIEW, marketUri);
startActivity(marketIntent);
答案 8 :(得分:0)
try {
Uri marketUri = Uri.parse("market://details?id=" + getPackageName());
Intent marketIntent = new Intent(Intent.ACTION_VIEW, marketUri);
startActivity(marketIntent);
}catch(ActivityNotFoundException e) {
Uri marketUri = Uri.parse("https://play.google.com/store/apps/details?id=" + getPackageName());
Intent marketIntent = new Intent(Intent.ACTION_VIEW, marketUri);
startActivity(marketIntent);
}