2016-09-05 5 views
1

AndroidとiOS用のNativeScriptアプリケーションでOneSignal Push Notificationを実装しようとしています。 iOSの場合は、CocoaPodでうまく動作します。しかし、Android用のOneSignalパッケージをコンパイルしようとすると、com.onesignalにアクセスできなくなります。NativeScriptのAndroid用OneSignalロードライブラリがありません

dependencies { 
    compile 'com.onesignal:OneSignal:[email protected]' 
    compile 'com.google.android.gms:play-services-gcm:+' 
    compile "com.google.android.gms:play-services-location:+" 
} 

android { 
    defaultConfig { 
    generatedDensities = [] 
    applicationId = "<HIDDEN>" 
    multiDexEnabled true 
    manifestPlaceholders = [manifestApplicationId: "<HIDDEN>", onesignal_app_id: "<HIDDEN>", onesignal_google_project_number: "<HIDDEN>"] 
    } 
    aaptOptions { 
    additionalParameters "--no-version-vectors" 
    } 
} 

私はこれが私にこのライン与えコマンドtns build android を実行しました:::prepareComOnesignalOneSignal311Library UP-TO-DATE

をので最初のオフ、私は私のApp_Resources /アンドロイド/ App.gradleにこれを追加しました

私のapp.jsは次のようになります:

このアプリケーションを実行すると、エミュレータは私に次のような白い画面を表示します。 onesignalはnullです:

Unhandled Exception 
java.lang.RuntimeException: Unable to start activity ComponentInfo{no.trv.tommeplan/com.tns.NativeScriptActivity}: com.tns.NativeScriptException: 
Calling js method onCreate failed 

TypeError: Cannot read property ‘OneSignal’ of undefined 
File: «/data/data/no.trv.tommeplan/files/app/app.js, line: 5, column:31... 

だから基本的には、comオブジェクトをダンプするときのみcom.android、com.appとcom.tnsが含まれています。だから、信号はインポートされていないようです。今、私は立ち往生した。誰もがアイデアを持っていますか?

答えて

1

すべてを正しく行ったようです。しかし、私の推測では、多くの人が見落としているものを忘れてしまったということです:) &をビルドした場合は、app.gradleにlibを追加する前にこの.apkをデバイス/エミュレータで実行しましたが、実際に更新されていない可能性があります。デバイス/エミュレータのapk。私はなぜこれがAndroidで起こるのかわからない、それは私が想定しているキャッシュのようなものだ。

ここで概要を説明します:https://bradmartin.net/2016/07/20/ahhh-this-nativescript-plugin-doesnt-work/とここに手順を記載します。

  1. アンインストールデバイス/エミュレータからの.apk
  2. /デバイス上で更新された.apkをインストールするtns run androidまたはtns livesync androidを実行
  3. (単に特定されるように)新鮮なの.apkを取得するためにtns build androidを実行エミュレータ。
  4. ビールを(うまくいけば)得る。

本当にライブラリが正しくインストールされている場合は、問題が解決するはずです。

+0

私は今本当に誓い、叫び、幸せになりたいです。これは3日間私を悩ませています。あなたは完全に正しいです。 –

関連する問題