2017-08-26 177 views
0

我有這個問題,我使用CloudPush模塊來檢索我的應用程序中的令牌,並在所有的測試工作正常,但是當我上傳應用程序到商店和人下載它,該應用程序只是沒有檢索到令牌,我每次創建一個cloudPush實例時都會注意到這個錯誤。Android - CloudPush不能在生產

[INFO] : *** Vamos a validar 
[INFO] : *** CREATE INSTANCE OF CLOUDHPUSH!!!!!!!!! 
[ERROR] : TiHTTPClient: (TiHttpClient-10) [30,1458] HTTP Error  (java.io.IOException): 404 : Not Found 
[ERROR] : TiHTTPClient: java.io.IOException: 404 : Not Found 
[ERROR] : TiHTTPClient: at ti.modules.titanium.network.TiHTTPClient$ClientRunnable.run(TiHTTPClient.java:1283) 
[ERROR] : TiHTTPClient: at java.lang.Thread.run(Thread.java:818) 
[INFO] : *** BEFORE SINGLE CALL BACK 
[INFO] : *** BEFORE retrieveDeviceToken 
[INFO] : Choreographer: Skipped 46 frames! The application may be doing too much work on its main thread. 
[INFO] : art: Background partial concurrent mark sweep GC freed 3578(221KB) AllocSpace objects, 0(0B) LOS objects, 24%% free, 15MB/20MB, paused 5.096ms total 51.635ms 
[ERROR] : GooglePlayServicesUtil: The Google Play services resources were not found. Check your project configuration to ensure that the resources are included. 
[WARN] : W/InstanceID/Rpc: Found 10076 
[INFO] : Device Token: APA91bHU56CLjjEcMyroqoWH3VJFCSqBIKT2A7Amctdjiuw1Rk5a8upzfJJotfIUTh6619Wx-g7OG2rTMuceHm4r8ASz41K_bEYG1vh2q3_mwTM0ERbij4asAB4IPKIUkEZQCW9HcAFL 

我的代碼是:

var self = Ti.UI.createWindow({ 
    orientationModes: [ Titanium.UI.PORTRAIT, Titanium.UI.UPSIDE_PORTRAIT], 
    backgroundColor: params.color6, 
    backgroundImage: "/images/fondo.jpg", 
     navBarHidden:true, 
     exitOnClose:true, 
     fullscreen:true 
    }); 
    self.addEventListener("open", function(){ 

    Ti.API.info("*** Vamos a validar"); 
    if(Ti.Platform.osname=='android'){ 

      Ti.API.info("*** CREATE INSTANCE OF CLOUDHPUSH!!!!!!!!!"); 
     var CloudPush = require('ti.cloudpush'); 
     Ti.API.info("*** BEFORE SINGLE CALL BACK"); 
     CloudPush.setSingleCallback(true); 
     Ti.API.info("*** BEFORE retrieveDeviceToken"); 
     CloudPush.retrieveDeviceToken({ 
      success: function deviceTokenSuccess(e) { 
       var token = e.deviceToken; 
       Ti.API.info('Device Token: ' + e.deviceToken); 
       Utiles.RegistrarEnServidor(token); 
      }, 
      error: function deviceTokenError(e) { 
       Ti.API.info("*** Failed to register for push"); 
      } 
     }); 

我不知道我做錯了......在所有的測試工作正常,但在Play商店應用程序無法正常工作,令牌從來沒有得到檢索。

鈦Appcelerator的工作室打造:4.9.1.201707200100
SDK:6.1.2GA
CloudPush:4.0.3

+0

您的代碼似乎沒有錯,但您可以嘗試刪除此行** CloudPush.setSingleCallback(true); **? –

+0

這是我在使用Cloudpush時從未使用的唯一更改。 –

+0

謝謝@PrashantSaini但問題仍然存在... –

回答

1

爲了使您的工作推你需要注意的幾的東西,讓他們看到一步一步:

tiapp.xml

<!-- Property keys for Arrow Push (required) --> 
<property name="acs-api-key-development" type="string">YOUR DEVELOPMENT API KEY HERE</property> 
<property name="acs-api-key-production" type="string">YOUR PRODUCTION API KEY HERE</property> 
<property name="acs-api-key" type="string">YOUR API KEY HERE</property> 

我希望您在正確的插槽中添加了正確的密鑰。您還需要添加你把服務API URL中tiapp.xml

<ti:app> 
    <property name="acs-push-api-url-production">https://api-prod.fooinc.com</property> 
    <property name="acs-push-api-url-development">https://api-dev.fooinc.com</property> 
</ti:app> 

通知/ Badegs在tiapp.xml

<property name="acs-grouped-notification-message-development" type="string">You have $number$ unread messages.</property> 
<property name="acs-grouped-notification-message-production" type="string">You have $number$ unread messages.</property> 
-or- 
<property name="acs-grouped-notification-message" type="string">You have $number$ unread messages.</property> 

也使鍵值在同一您的i18n文件夾for multiLang

根據您提供的代碼似乎都很好,所以沒有我根據我的猜測,代碼有錯誤。

證書和配置配置文件(僅適用於iOS)

您需要創建生產/開發適當的配置檔案和證書,還需要創建.PEM文件,這將幫助您發送/接收推特定設備和應用程序的通知,這是設備註冊工作的地方。所以你需要確保你已經正確創建了證書。你可以看看的過程,以創建證書,並從以下鏈接供應配置文件https://www.raywenderlich.com/156966/push-notifications-tutorial-getting-started

我希望這可以幫助你解決問題。在此之後,如果您還有其他問題,請告訴我。

好運和歡呼聲

阿希什塞巴斯蒂安

+0

我做了一切都沒有結果.. –

+0

@JuanCarlosSalinasOjeda:好吧,這很奇怪,如果它不是你必須使用'cloudPush'模塊,你當然可以去** GCM ** ** iamYellow **。它非常好,我已經多次使用它,並且非常類似於您已經完成的實現。請檢查出來,讓我知道它是否有效。 [https://github.com/iamyellow/gcm.js] –

+0

謝謝Sebastian ..這個模塊是否仍然可以使用SDK 6.1.2? –

0

我解決了模塊的問題: PushClient

我離開這裏,如果一些人有相同的問題。