- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我已经为推送通知实现了 GcmIntentService,一切正常,但是当更新版本到 Android 8 (Oreo) 时,它在 oreo 设备上崩溃了。我是否可以继续使用 GcmIntentService 进行推送通知。
请提前分享您的观点
获取异常
java.lang.RuntimeException: Unable to start receiver com.example.PushNotificationReceiver:
java.lang.IllegalStateException: Not allowed to start service Intent {
act=com.google.android.c2dm.intent.RECEIVE flg=0x1000010 pkg=com.example
cmp=com.example/.pushnotification.GCMIntentService (has extras) }:
app is in background uid UidRecord{635678a u0a186 RCVR bg:+1m44s591ms idle
procs:1 seq(0,0,0)}
最佳答案
Google already announced GCMs deprecation. Please proceed in migrating to FCM.
AL 是对的,但 GCM 只会在 2019 年 4 月 11 日真正不再工作,如所述here .
我相信您遇到的问题与此无关,而是您正试图从接收器类启动后台服务。从 Android 8 开始,当应用程序在前台不可见时,应用程序将无法再启动后台服务。
引用: https://developer.android.com/about/versions/oreo/android-8.0-changes#back-all
关于android - Android 8 (Oreo) 上的 GcmIntentService 崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51075414/
我的应用程序运行正常,但我遇到了以下错误: 10-04 14:04:38.182: W/MessageQueue(8625): Handler (android.media.MediaPlayer$E
我想将 GCMIntentService 放在包根目录以外的目录中。 GCM documentation指出 By default, it must be named .GCMIntent
在我的应用程序中,我使用了 GCM 服务。我想在 onMessage 函数中发出哔哔声或播放一个小的 mp3 文件。 我的 GCMIntentService 是从 GCMBaseIntentServi
我已经阅读了在这里找到的关于 WakeLock 的各种解决方案,例如在 AndroidManifest.xml 中添加 Permission 以及确保将 GCMIntentService 的 Cons
我正在尝试在我的 android 应用程序中实现 GCMIntentService。 当我尝试将注册 ID 保存在我的数据库中时,asynhttp 显示以下错误 "sending message to
我正尝试在我的 Android 应用中实现 GCM。服务器端和客户端设置似乎是正确的,因为当我从服务器端“推送”一个字符串时调用了 onMessage 方法。我可以从 Intent 中读取额外内容,但
我使用 GCM 在发布图片时收到通知,然后我下载并处理它: public class GcmBroadcastReceiver extends WakefulBroadcastReceiver {
我在拥有多个自定义类型的帐户时遇到了问题。 我用GCM (Google Cloud Messaging)从我们的应用程序服务器接收消息。现在,由于您需要自己实现 GCMIntentService ex
这个问题在这里已经有了答案: 关闭9年前。 Possible Duplicate: Android RuntimeException: Unable to instantiate the servic
所以我遇到了一些问题。我试图让我的应用程序根据通过 GCM 收到的消息执行操作。在本例中,应该使用 TextToSpeech 类来发出声音。它有点有效,但不是我第一次发送消息。我意识到这可能是因为 T
未调用 GCMIntentService 的 onRegisterd() 方法。 在日志中显示如下:onReceive:com.google.android.c2dm.intent.REGISTRAT
我正在关注来自 Android 开发人员的 GCM 演示。遇到以下情况。我在 GCMIntentService 中的 OnHandleIntent 没有被调用。有人可以帮忙吗? package com
我正在尝试在 GCM 上注册我的应用程序,但我不知道为什么我的应用程序从未注册过。 GCMRegistrar.register(this, SENDER_ID); 被调用,但我的 GCMIntentS
使用 Google 的 GCM 服务构建 Android 应用程序。 我已经在 GCMIntentService 类中实现了 onRegistered 方法。 问题是我想将主要 Activity 中的
我正在我的应用程序中实现 GCM。我已按照 developer.android.com 的 GCM 教程中给出的所有步骤进行操作 我的应用程序的构建目标指向 Goolge API 8(Android
我的应用程序过去运行得非常好。最近我更新了 eclipse(插件),现在我收到了这个错误。我没有更改我的代码,所以我知道它应该继续工作。但事实并非如此。我正在使用 google eclipse 插件,
您好,我想从 GCMIntentService 发送数据到我的主要 Activity ,我想在那里接收它?我该如何实现? 我非常坚持这一点在我的主要 Activity 中,我有一个列表,我想根据收到的
我正在尝试从 GCMBaseIntentService 运行 AsyncTask,但是当我这样做时应用程序崩溃了。令人感动的是,我想使用 MainActivity 中的上下文来让我的 AsyncTas
我想在收到 GCM 通知时获取用户在 Android 中的位置。 所以在我的 GCMIntentService extends GCMBaseIntentService 中,我这样做了: @Ov
我已经在我的 android 应用程序中成功实现了用于推送通知的 GCM 框架。但是我对 Google 在 GcmIntentService 类中覆盖的功能有点困惑。 @Override protec
我是一名优秀的程序员,十分优秀!