1、獲取不到CID問題:
1. 查看配置文件是否有問題,appkey、appsecret、appid是否有空格存在。
2. 相關權限是否全部添加。
3. manifest.xml相關配置是否有添加。
4. SDK版本是否過舊。
5. 很大部分原因是因網絡不穩定導致的。
6. 查看一下manifest.xml配置文件里用戶有沒有設置自己的Receiver。Recevier沒有設置,是接收不到廣播消息的,就無法接收到廣播里傳過來的CID。
2、病毒查殺問題:
1. 先安裝一下殺毒軟件進行檢測。
2. 如果是使用版本過低的SDK導致報病毒,則需要下載修改后的SDK。
3. 看一下是否為“需導入的資料”里的bin/文件夾報的病毒,如果是則刪除里面的全部文件。
4. 如果是“真機測試包”報的病毒,則把此包刪除掉,用代碼重新編譯生成一個就可以了。
5. 目前所有病毒問題基本全部解決,如有問題,請下載個推官網最新的壓縮包。
3、網絡延遲問題:
1. 先測試一下,在工具箱里進行推送,看看是否會延遲。
2. 判斷網絡原因,是不是因為無線或信號不好導致的客戶端假在線。
3. 查日志,看一下客戶端的回執有沒有上來。
4. 查看此CID的相關日志,個推工具箱里根據CID查到CELL,然后根據CELL去查消息是否進入了離線消息(有可能是斷網一會又重連上后才收到消息)。
4、如何獲取到手機上APP的CID
1. 手機連接Eclipse,然后點DDMS,在LogCat里查看是否有日志輸出;如果沒有,在Devices里查看手機是否連接成功,如果沒有成功,最好用應用寶或91助手、360手機助手給手機安裝一下驅動。
2. 連接成功后,先把應用停止掉再重啟一下應用,把LogCat日志清除一下;在LogCat里查找Clientid字段,如果應用成功獲取到CID,就會如下圖展示,如果獲取不到則查詢不到CID。
5、在調用個推接口的時候,會返回狀態碼,注:返回客戶端狀態(status),有如下兩種狀態:在線返回:successed_online離線返回:successed_offline還有一種是 successed_ignore ,請問是什么意思?
1. 客戶端三個月未登陸了,Clientid已經失效了。用戶再次登錄的話,會產生新的Clientid。
2. 用戶精細分類:就類似於用戶畫像,通過大數據計算給用戶附上特定屬性。
3. 進程看護:就是在同個手機的多個個推進程會相互看護,這樣可以最大化的保證非活躍應用客戶端的被激活率。
4. 第2項的功能會保持客戶端的激活,只要用戶不卸載掉應用。
6、為什么CID和APPID綁定錯誤,導致消息接收不到?
1. 是因為第一次配置的APPID和應用的APPID不一致,但這個時候已經獲取到了CID,但是這個CID和APPID的綁定是錯誤的,導致消息接收不到。之后再修改APPID等信息,CID已經在libs下的包名下的數據存在了,如果已經存在CID則不會再重新獲取。解決辦法:雙清:即把sdCard下libs文件夾刪除掉,再把應用卸載了重新安裝,之后就可以獲取到新的CID,這個CID和APPID的綁定是正確的。
7、Tag何時才可以設置?
1. 拿到clientid之后,再設置tag。你先看下客戶端接入文檔,獲取透傳消息這塊中有包含 GET_CLIENTID的action,當收到這個clientid廣播之后你才可以settag()。至於放在哪里自己定。
8、stopService( )方法無效的原因?
1. 先查看一下是不是調用了System.exit(0),因為新版的SDK目前會因調用這個導致所有進程殺死,stopService()方法執行的過程中進程被殺死,所以會導致這個方法無效。
9、服務端調用接口給應用推送消息,為什么在個推平台里沒有這條推送的記錄呢?
調接口發送,不會在這個發送記錄中,等到第二天會出現在推送報表中的任務發送記錄中。
10、android客戶端為什么一定要加android.permission.WAKE_LOCK這個權限?
為了能使SDK進程在后台正常運行。
11、CID在哪些情況下會變或失效
Android:
1. 用戶超過三個月未登錄,之后再登錄會重新生成一個CID
2. 卸載應用,清除Sdcard下libs文件夾,重新安裝
3. 應用的包名修改
IOS:
BundleID改變
失效的情況:一個月未登錄后,不再對此CID進行推送消息;三個月未登錄,CID會被刪除。
12、魅族手機強制停止或殺死進程后,消息能接收到,但是點擊消息后無反應
這是因為魅族手機有自啟動管理功能,自啟動被禁止了,打開后就可以正常點擊有反應了。
13、個推點擊通知欄消息可以跳轉到指定的應用的界面中嗎?
可以,需要客戶端做一下處理。
可以用通知欄消息加透傳,把要跳轉的頁面的類名透傳到客戶端,客戶端接收到透傳消息后,獲取到頁面的類名,然后去打開對應的界面
14、客戶端SDK一直報10008的代號是什么意思?
獲取到10008是因為個推SDK的進程重啟,SDK停止后再初始,就會廣播出這個10008,之后才會獲取到clientid。
如果獲取到10008而后續沒有獲取到clientid,很有可能是當時網絡的原因導致clientid一直登錄不成功導致的,所以會一直離線
這種情況並沒有問題的,后續對你也不會有太大的影響,所以可以放心使用。