我该如何让它为我的android应用程序工作?
您首先需要创建开发者控制台上的谷歌API项目,可以按照guide
然后从你的Android项目修改Android.Manifest.xml文件所要求的权限,它应该看像这样:
<manifest package="com.couchbase.todolite"> // ...
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
<permission android:name="com.couchbase.todolite.permission.C2D_MESSAGE"
android:protectionLevel="signature" />
<uses-permission android:name="com.couchbase.todolite.permission.C2D_MESSAGE" />
<application android:name="com.couchbase.todolite.Application"> // ...
/* ... activities ... */
<receiver
android:name=".GcmBroadcastReceiver"
android:permission="com.google.android.c2dm.permission.SEND" >
<intent-filter>
<action android:name="com.google.android.c2dm.intent.RECEIVE" />
<category android:name="com.couchbase.todolite" />
</intent-filter>
</receiver>
<service android:name=".GcmMessageHandler" />
</application>
在你的应用程序中设置GCM方面按照此guide和长着instruc tions来处理Android客户端的同步通知。
你提到:
什么是它顺应了什么变化的实际作用,以及它如何决定谁需要发送同步请求?
这里的GCM用于触发从服务器端获取数据。提供对GCM服务器的请求以及要发送的消息以及要发送到应用客户端的地址。
我知道这件事。这一切都在我提到的问题中的教程中提到。如何使用GCM处理同步网关上的更改?示例项目中的通知工作人员二进制文件会检查同步网关上的更改何时发送并向特定客户端设备发送启动同步以启动同步。我如何在同步网关中使用我自己的通知工作程序二进制代码来处理同步网关中的内容? – kirtan403
该帖子在1.1发布之前发布。从那时起可用的webhook功能使这更容易(http://blog.couchbase.com/sync-gateway-webhooks)。我会使用它而不是在更改提要上进行监听。其次,你可以使用像node-gcm(https://github.com/ToothlessGear/node-gcm)这样的东西来组装一个NodeJS服务器(可能使用Express)来接收webhook负载并发送通知。 – jamiltz