Android 在PendingEvent.getActivity中未找到捕获活动异常

Android 在PendingEvent.getActivity中未找到捕获活动异常,android,android-notifications,android-pendingintent,Android,Android Notifications,Android Pendingintent,我有一个待定的通知操作“Rate app”的意图,该操作会将我带到playstore对该应用进行评级。 出于正常目的,使用应用程序中的startActivity(),我们可以处理activitynotfound异常,然后将用户带到broswer中应用程序的web url。我希望通过单击通知操作进行类似的异常处理 下面是代码片段 Uri uri = Uri.parse("market://details?id=" + context.getPackageName()); Intent goToMa

我有一个待定的通知操作“Rate app”的意图,该操作会将我带到playstore对该应用进行评级。 出于正常目的,使用应用程序中的startActivity(),我们可以处理activitynotfound异常,然后将用户带到broswer中应用程序的web url。我希望通过单击通知操作进行类似的异常处理

下面是代码片段

Uri uri = Uri.parse("market://details?id=" + context.getPackageName());
Intent goToMarket = new Intent(Intent.ACTION_VIEW, uri);
goToMarket.addFlags(Intent.FLAG_ACTIVITY_NO_HISTORY | Intent.FLAG_ACTIVITY_NEW_DOCUMENT | Intent.FLAG_ACTIVITY_MULTIPLE_TASK);
PendingIntent ratePendingIntent = PendingIntent.getActivity(context, requestID + 1, goToMarket, PendingIntent.FLAG_UPDATE_CURRENT);
action = new android.support.v4.app.NotificationCompat.Action(android.R.drawable.star_on, "Rate me",ratePendingIntent);
然后我只需将此操作设置为通知生成器,
builder.setAction(动作)

我认为您正在使用的模拟器没有google play服务


确保您使用flash google play服务。

是的,但无论采用哪种方式,捕获异常都是一种很好的做法。try catch block将是最简单、最安全的实现方法。但你知道这取决于你如何发展。例如,我喜欢使用if控件返回代码。我知道这很旧,但我正在寻找相同问题的答案。try/catch块将不起作用,因为在PendingEvent启动之前不会抛出异常。你在try区要做的就是设置Pending帐篷。