IBM Worklight - 推送通知功能在 Android 模拟器中不起作用
Posted
技术标签:
【中文标题】IBM Worklight - 推送通知功能在 Android 模拟器中不起作用【英文标题】:IBM Worklight - Push Notifications feature does not work in Android emulator 【发布时间】:2013-06-10 09:54:42 【问题描述】:我正在尝试为Worklight push notification on android 设置示例项目。当我在 Android 模拟器中启动应用程序时,只有前两个按钮(isSubscribed 和 isSupported)是可点击的。其他两个按钮(订阅和取消订阅)保持禁用状态。
我的步骤是:
-
将项目导入 Eclipse
将 SenderID 和 API 密钥替换为在 application-descriptor.xml 中从 GCM 控制台获取的密钥
部署 PushAdapter(包含在项目中)
构建和部署
在模拟器中启动 Android 应用程序
缺少什么?
【问题讨论】:
【参考方案1】:要让推送通知在 Android 模拟器中工作,您需要确保安装在 Android SDK 管理器中:
Google APIs add-on 对应于您在项目中使用的 API 级别(在 Worklight 中,它必须是 API 级别 8 或更高)。您创建的 AVD 应使用此 Google API
Google Cloud Messaging for Android Library(可在附加类别中找到)
注意:Android 模拟器中的推送通知仅在运行 Android OS 4.x.x 的 AVD 中工作。
接下来,您需要设置 GCM:无论您使用的是设备还是模拟器,这些步骤都是相关的。
-
创建 Gmail 电子邮件地址
进入GCM的网页:http://developer.android.com/google/gcm/gs.html
点击“Google API 控制台页面”
如果您从未完成上述第 3 步,您将被要求创建一个项目,该项目将有一个 ID。此 ID 是您在 application-descriptor.xml 中放置的
senderId
值
点击“创建新的服务器密钥...”/“创建新的 Android 密钥”
生成的密钥是您在 application-descriptor.xml 中放置的 API key
值
现在您需要:
-
构建和部署应用程序
部署适配器
在设备或模拟器上运行应用程序
【讨论】:
我按照您的步骤进行操作,但仍然无法设置。启动时,它报告:“无法注册推送通知。应用程序将无法接收通知”。推送通知是否必须有服务器? 这是模拟器还是真机?您运行的是 Android OS 2.x 还是 4.x?如果您使用 2.x,您的设备必须与“设置”中的 Gmail 地址同步。如果是 4.x,则需要按照我上面的说明进行操作。是的,如果您计划使用 Worklight 使用推送通知,应用程序必须连接到 Worklight Server。 我在 4.x 上使用模拟器。如何设置 Worklight 服务器? 按照培训模块...请使用您已采取的完整步骤(从导入项目,到设置并在设备上运行)编辑您的问题,也许您已经走错了一步。 如果尝试使用 Android 模拟器进行推送通知,请查看我编辑的答案,了解您需要安装的内容;如果你有一个设备会更简单......以上是关于IBM Worklight - 推送通知功能在 Android 模拟器中不起作用的主要内容,如果未能解决你的问题,请参考以下文章