android - 从 Library 项目启动 Android 应用程序

标签 android android-intent push-notification android-library

我正在 Android 库中开发 Android 应用程序的 PushNotification。我无法在单击推送通知消息时启动 Android 应用程序。 我无法在库项目中获取 Android 应用程序类以在generatePushNotification() 方法中启动。以下是库项目中的代码 fragment 。

private static void generateNotification(Context context, String message) {
    int icon = R.drawable.ic_launcher;
    long when = System.currentTimeMillis();
    NotificationManager notificationManager = (NotificationManager)
            context.getSystemService(Context.NOTIFICATION_SERVICE);
    Notification notification = new Notification(icon, message, when);

    String title = context.getString(R.string.app_name); 
 // Here I am getting the android application context as sActiveContext
    Intent notificationIntent = new Intent(context,  "need to launch the android application main activity");
    notificationIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP |
            Intent.FLAG_ACTIVITY_SINGLE_TOP);
    PendingIntent intent =
            PendingIntent.getActivity(context, 0, notificationIntent, 0);
    notification.setLatestEventInfo(context, title, message, intent);
    notification.flags |= Notification.FLAG_AUTO_CANCEL; 
    notification.defaults |= Notification.DEFAULT_SOUND;

    notification.defaults |= Notification.DEFAULT_VIBRATE;
    notificationManager.notify(0, notification);      

}

如何从图书馆项目启动 Android 应用程序。?

最佳答案

如果您的问题是您希望提供给 Intent 的 Activity 在库项目中未被识别,您可以使用 packageManager.getLaunchIntentForPackage()获取从此包启动 Activity 的 Intent ,其中包含 CATEGORY_LAUNCHER属性

String packageName = context.getPackageName();
Intent launchIntent = context.getPackageManager().getLaunchIntentForPackage(packageName);

然后你可以用 launchIntent 替换 new Intent(context, "need to launch the android application main Activity")

关于android - 从 Library 项目启动 Android 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18843118/

相关文章:

android - 带有 Google Glass 库/管理器问题的 OpenCV

android以编程方式打开电池设置

ios - iOS 推送通知如何工作?

android - 如何播放仅适用于我的应用程序的推送通知到达的铃声?

push-notification - GCM与百度推送的区别

android - 当锁定屏幕中屏幕方向发生变化时,如何防止我的 Android 应用程序崩溃?

android - 如何处理警告:Unchecked call to 'ObservableField(T)' as a member of raw type 'android.databinding.ObservableField'

android - 无法启动接收器 com.parse.ParseBroadcastReceiver : java. lang.IllegalArgumentException:上次操作后操作无效

Android - 与内容提供者的 Intent 匹配

即使操作系统杀死应用程序后,Android Activity 仍保留在堆栈中