小编Mur*_*rat的帖子

GCM的注册ID重复

我们有一个使用GCM的应用.当用户首次打开应用程序时,应用程序会检查共享首选项以查看用户是否先前已注册.如果注册ID不是从GCM获取并存储到共享首选项.还有一个第三方服务器,其中存储了用户ID和注册ID.我阅读并实现了以下针对规范id问题的案例:

  1. 在发送通知期间,如果接收到新的注册ID(规范id),则使用第三方服务器中的规范id更新旧的注册ID.
  2. 当用户卸载应用程序时,当第三方服务器向卸载的应用程序注册ID发送通知时,未收到注册消息,并且从第三方数据库中删除注册ID.

作为开发人员,我们在数据库中存储了许多注册ID.因为我们经常卸载并安装应用程序.通常用户不会这样做.然后我们考虑使用设备ID作为设备的唯一ID,并检查用户是否先前注册过.可以使用Android设备ID吗?我应该考虑什么来防止设备的多个注册ID?这些多个注册ID会导致多次推送到Android设备.多个注册ID主要由以下原因引起:

  1. 该应用程序最近已卸载并重新安装.如何检测用户已卸载并已安装且已有注册ID?
  2. 最近清除了缓存和/或清除了应用程序的数据.我怎样才能检测到用户清除了应用数据并且已经注册了注册ID?

处理规范ID的最佳做法是什么?

android canonical-link google-cloud-messaging

6
推荐指数
1
解决办法
900
查看次数

Camera addCallbackBuffer机制如何工作?

以下是addCallbackBuffer的解释:http: //developer.android.com/reference/android/hardware/Camera.html#addCallbackBuffer(byte [])

我无法理解这种机制以及如何使用它.我们可以添加一个或多个缓冲区.假设我们添加了10个缓冲区.填充10个缓冲区时是否调用OnPreviewFrame方法?

假设从缓冲区队列中删除缓冲区,并使用该缓冲区调用OnPreviewFrame.当我们使用到达的缓冲区调用addCallbackBuffer方法时,是否将缓冲区添加到队列的头部,然后使用该缓冲区调用下一个OnPreviewFrame?

当我们调用addCallbackBuffer时,我们如何获取帧的时间戳?

当我们调用addCallbackBuffer时是否有任何帧丢失?

camera android buffer frame

4
推荐指数
1
解决办法
3082
查看次数

如何设置httpclient的字符编码

我正在使用这个httpclient:http://loopj.com/android-async-http/我正在使用这个httpclient 获取json.我想设置这个httpclient的字符enconding.客户端返回的JSONObject包含土耳其字符,例如şğöü.但它已损坏,我无法查看这些字符.

如何设置此httpclient的字符编码?

android httpclient character-encoding

1
推荐指数
1
解决办法
4604
查看次数