我是Android开发的新手,并且正在尝试添加推送通知服务器和客户端(APK)。
我通过网络阅读的内容,我需要使用console.developers.google注册一个项目,然后获取一些ID以允许发送或接收推送通知。但是,我要做的是模拟本地计算机上的完整环境并进行测试。这可以实现吗?
例如,注册推送服务并在localhost和我的应用程序(WIP)上发送通知以再次接收和推送消息到服务 - 假设localhost机器未连接到互联网。
答案 0 :(得分:2)
由于推送通知如何使用Google服务器,因此无法实现。
推送通知将发送到谷歌服务器,并从那里分发到设备。然后由操作系统选择它们,并将其提供给任何将响应意图的应用程序。因此无法在本地执行此操作。
有关详细信息,请参阅文档here。
修改
根据您写的评论,这是一种非常酷的解决方法,我发现我可以发送通知:
adb shell am broadcast -a com.google.android.c2dm.intent.RECEIVE com.myapp
你和我之间的区别在于我没有使用-c作为设置类别。 您可以通过
查看所有可能的选项adb shell
然后输入
am broadcast
假设您只插入了一个设备。(请注意,您没有订阅通知,您必须将该通知发送到应用程序。然后应用程序被编程为通过com.google.android操作响应任何意图.c2dm.intent.RECEIVE。
这有帮助吗?
答案 1 :(得分:1)
您可以使用ADB模拟Android设备的推送通知。
sudo apt-get install adb
机器人:权限=" com.google.android.c2dm.permission.SEND" >
adb shell am broadcast -c com.myapp -a com.google.android.c2dm.intent.RECEIVE -e data" SomeData"