1. 程式人生 > >Cocos2d-x 接入sdk遇到的小問題

Cocos2d-x 接入sdk遇到的小問題

Cocos2d-x 接入sdk遇到的小問題

第一次報錯:呼叫sdk的函式的時候,異常,Can’t create handler inside thread that has not caller Looper.prepare();

第一次報錯

解決方案: 在呼叫之前加入Looper.prepare();

第二次報錯: 再次呼叫sdk的函式的時候,又異常了,Only one Looper may be created per thread

第二次報錯

報錯原因: 看了一點Looper的原始碼,知道了因為Looper.prepare();的時候就重新new了一個Looper,但一個Thread裡只能有一個Looper。

解決方案: 在Looper.prepare();之前用if(Looper.myLooper() ==null)來判斷是否當前Thread裡已存在Looper,如果存在則直接呼叫sdk的函式。

注意: 不知道是不是正確的解決方案,但執行起來沒有問題。有遇到同樣問題的可以參考下。 **