"shared()"メソッドが何らかの理由で認識されていないため、アプリケーションのコードがコンパイルされません。私が見誤差は次のとおりです。Urban Airship "エラー:シンボルメソッドshared()を見つけることができません"
error: cannot find symbol method shared()
私は私の「build.gradle(モジュール:アプリ)」でこれを使用していたファイル:
dependencies {
......................
// Urban Airship SDK
compile 'com.urbanairship.android:urbanairship-sdk:8.3.+'
......................
}
を、私はこの「共有()」メソッドが含まれるだろうと思いましたUrban Airship SDKバージョン8.3 +で私は呼んでいます。私は、彼らが提供アーバン飛行船サンプルアプリが表示されたら、「共有()」メソッドをhttps://github.com/urbanairship/android-library/blob/master/urbanairship-sdk/src/main/java/com/urbanairship/UAirship.javaで宣言されています
/**
* Returns the shared UAirship singleton instance. This method will block
* until airship is ready.
*
* @return The UAirship singleton.
* @throws IllegalStateException if takeoff is not called prior to this method.
*/
@NonNull
public static UAirship shared() {
synchronized (airshipLock) {
if (!isTakingOff && !isFlying) {
throw new IllegalStateException("Take off must be called before shared()");
}
return waitForTakeOff(0);
}
}
「共有()」メソッドは私のために使用できない理由についての任意のアイデア?これは私が私のコードでそれを使用する方法の一例であり、この方法が認識されない、私は、ソースコードのさまざまな部分から、数回それを呼び出すが、それは常に同じです:
String appid=PushManager.shared().getAPID();
ありがとうございました。
私が "Urban Airship SDK"の依存関係のために "コンパイルファイル( 'libs/urbanairship-lib-3.3.0.jar')を使用していた時、以前は正しく機能していました。今、私はアップグレードしています。代わりに、これを私の依存関係で使用しています。 "com.urbanairshipandandroid:neighborhoodairship-sdk:8.1.3+"をコンパイルしてください。今は "shared()"メソッドが私のために働いていません。私は彼らがUrban Airship Sample Appで使用していることを知っています。たとえば、https://github.com/urbanairship/android-library/blob/master/urbanairship-sdk/src/main/java/com/urbanairship/UAirship.java : "UAirship飛行船= UAirship.shared();" –
私はhttp://docs.urbanairship.com/api/ua/#post-api-custom-eventsでこの情報を読んでいました:「Android 5.0 SDKより前:PushManager.shared().setDeviceTagsEnabled(false);. Android SDK 5.0以降:UAirship.shared()。getPushManager().setDeviceTagsEnabled(false); "私の問題は、以前のUrban Airship SDK 3.3.0を使用していたので、今は8.3。+にアップグレードしているので、新しいUrban Airship SDKの構文を尊重する必要があります。 –
私はこの情報もhttp://stackoverflow.com/questions/26717398/urbanairship-android-unable-to-getapidで見つけました: 'APIDはもはやアーバン飛行船の5.xシリーズでは使用されていません。新しい "チャネル"識別子が使用されます。 APIDと本質的に同じです。代わりに "String appid = PushManager.shared()。getAPID();"の代わりにおそらく "String appid = UAirship.shared()。getPushManager()。getChannelId();"は私のためにエラーをスローしませんし、私が質問で述べた "shared()"メソッドも使用しています。 –