2014-06-15 36 views
2

我花了幾天的時間嘗試通知工作,閱讀各種插件,我已經走到了我的繩索的盡頭。我已經能夠成功地接收到與Android和iOS解析的測試應用程序的通知,但每當我嘗試添加到自己的應用程序我看到adb logcat如何使用Parse,Phonegap和phonegap-parse-plugin接收通知?

科爾多瓦版本的錯誤:3.5.0-0.2.4

phonegap-parse-plugin

這些是步驟i執行:

cordova create pushTest cordova platform add android cordova plugin add https://github.com/benjie/phonegap-parse-plugin

然後WWW的內部/ JS/index.js我改變onDeviceReady函數看起來像第是(我的實際應用標識和clientKey取代)

onDeviceReady: function() { app.receivedEvent('deviceready'); parsePlugin.initialize(appId, clientKey, function() { parsePlugin.subscribe('', function() { alert('OK'); }, function(e) { alert('error'); }); }, function(e) { alert('error'); }); }

然後我清除我的安裝類解析,以確保應用程序註冊成功。我也確保我安裝到我的android設備的任何以前的應用程序已被刪除。然後......

cordova build adb install platforms/android/ant-build/HelloCordova-debug.apk

我得到一個警報彈出,上面寫着「OK」,我必須在解析安裝類的新紀錄。我確定該應用程序未在我的Android設備的前臺運行。然後我從Parse發送一個推送通知,並且在運行時我沒有看到任何東西adb logcat 從我嘗試過的其他一些調試中,我嘗試將1.3.8版本的Parse SDK替換爲舊版本來自platforms/android/libs dir的文件並將新文件放在那裏。一旦我這樣做,我看到下面的錯誤在adb logcat

(2795): GCM message io.cordova.hellocordova 0:1402793727153630%0#39597f64f9fd7ecd W/GCM-DMM (2795): broadcast intent callback: result=CANCELLED forIntent { act=com.google.android.c2dm.intent.RECEIVE pkg=io.cordova.hellocordova (has extras) }

該錯誤是我一直堅持的東西,喜歡與指導。

我的代碼(減去我的appid和clientKey),請訪問:https://github.com/rpiwetz/notif7

回答

1

您可能要檢查this插件發送和使用解析爲Android

+0

我試過以下爲插件的安裝方向,但'科爾多瓦create'過程中不產生一個「MainActivity」,所以安裝步驟1和2不能完成。你有一個代碼集,只是有一個基本的科爾多瓦應用程序與這個插件安裝和工作看? –

+0

Unofrtnatlu我沒有,但我以前試過這個代碼,它工作,反正andriod文件夾與MainActivity類應創建後添加android平臺,而不是在創建 –

0

我有非常類似的問題收到通知時,init函數工作正常,但我沒有收到通知。最後,我手動添加一些代碼來的主要活動類:

// register device for parse 
Parse.initialize(this, "app_id", "client_key"); 
PushService.setDefaultPushCallback(this, MyApp.class); 
ParseAnalytics.trackAppOpened(getIntent()); 
ParseInstallation.getCurrentInstallation().saveInBackground(); 

來源:https://stackoverflow.com/a/24426563/884842