Gcm 或 C2DM 应用程序启动问题。(Titanium android)
Posted
技术标签:
【中文标题】Gcm 或 C2DM 应用程序启动问题。(Titanium android)【英文标题】:Gcm or C2DM application launch issue.(Titanium android) 【发布时间】:2012-09-12 11:56:06 【问题描述】:我正在开发要集成 GCM 的小型 android 应用程序。我为它使用了一个模块,它工作正常。唯一的问题是当我的应用程序打开时,如果我点击通知,它会重新启动我不想要的应用程序。如果应用程序已经在运行,我想要什么,然后只显示正在运行的窗口,如果应用程序关闭,然后启动应用程序... 在我收到的 onmessage 模块代码中看起来像
int icon = 0x7f020000;
CharSequence tickerText = new String("app anme: " + hashdata.get("messages"));
long when = System.currentTimeMillis();
CharSequence contentTitle = "app name";
CharSequence contentText = new String(" " + hashdata.get("messages"));
Intent notificationIntent = new Intent(this, GCMIntentService.class);
Intent launcherintent = new Intent("android.intent.action.MAIN");
launcherintent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_SINGLE_TOP | Intent.FLAG_ACTIVITY_CLEAR_TOP);
launcherintent.setComponent(ComponentName.unflattenFromString("com.example/com.example.ExampleActivity"));
launcherintent.addCategory("android.intent.category.LAUNCHER");
PendingIntent contentIntent = PendingIntent.getActivity(this, 0, launcherintent, 0);
Notification notification = new Notification(icon, tickerText, when);
notification.defaults = Notification.DEFAULT_ALL;
notification.flags = Notification.FLAG_AUTO_CANCEL;
notification.setLatestEventInfo(context, contentTitle, contentText,contentIntent);
String ns = Context.NOTIFICATION_SERVICE;
NotificationManager mNotificationManager = (NotificationManager) getSystemService(ns);
mNotificationManager.notify(1, notification);
如果应用程序关闭,我的模块工作正常..但是重新启动已经在运行的应用程序,这是不期望的......需要帮助......谢谢............ .
【问题讨论】:
【参考方案1】:对于 Gcm 实现,这是最好的教程,也可能对您有用。 Google Cloud Messaging For Android (GCM) Simple Tutorial
【讨论】:
以上是关于Gcm 或 C2DM 应用程序启动问题。(Titanium android)的主要内容,如果未能解决你的问题,请参考以下文章
为啥 C2DM/GCM 不使用 SMS 作为传输来节省电池寿命?
C2DM 关闭 - 如果仍然使用 C2DM API for GCM 会发生啥?