2012-05-09 4 views
1

sample project for doing Android Push notifications with Urban Airshipを実行しようとしています。私のプログラムは、このAirshipConfigOptionsクラスを見つけることができないようです。プロジェクトはうまく構築され、実行時にのみこのエラーがスローされます。ここでNoClassDefFoundError:com.urbanairship.AirshipConfigOptions(Androidプッシュ開発)

は私のプロジェクト構造は次のようになります。

05-09 18:50:10.926: I/dalvikvm(2007): Could not find method com.urbanairship.AirshipConfigOptions.loadDefaultOptions, referenced from method com.urbanairship.push.sample.MyApplication.onCreate 05-09 18:50:10.946: I/dalvikvm(2007): threadid=3: reacting to signal 3 05-09 18:50:11.016: W/dalvikvm(2007): VFY: unable to resolve static method 46: Lcom/urbanairship/AirshipConfigOptions;.loadDefaultOptions (Landroid/content/Context;)Lcom/urbanairship/AirshipConfigOptions; 05-09 18:50:11.016: D/dalvikvm(2007): VFY: replacing opcode 0x71 at 0x0003 05-09 18:50:11.115: D/dalvikvm(2007): DexOpt: unable to opt direct call 0x004a at 0x0f in Lcom/urbanairship/push/sample/MyApplication;.onCreate 05-09 18:50:11.115: D/AndroidRuntime(2007): Shutting down VM 05-09 18:50:11.115: W/dalvikvm(2007): threadid=1: thread exiting with uncaught exception (group=0x409c01f8) 05-09 18:50:11.125: E/AndroidRuntime(2007): FATAL EXCEPTION: main 05-09 18:50:11.125: E/AndroidRuntime(2007): java.lang.NoClassDefFoundError: com.urbanairship.AirshipConfigOptions 05-09 18:50:11.125: E/AndroidRuntime(2007): at com.urbanairship.push.sample.MyApplication.onCreate(MyApplication.java:46) 05-09 18:50:11.125: E/AndroidRuntime(2007): at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:969) 05-09 18:50:11.125: E/AndroidRuntime(2007): at android.app.ActivityThread.handleBindApplication(ActivityThread.java:3954) 05-09 18:50:11.125: E/AndroidRuntime(2007): at android.app.ActivityThread.access$1300(ActivityThread.java:123) 05-09 18:50:11.125: E/AndroidRuntime(2007): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1185) 05-09 18:50:11.125: E/AndroidRuntime(2007): at android.os.Handler.dispatchMessage(Handler.java:99) 05-09 18:50:11.125: E/AndroidRuntime(2007): at android.os.Looper.loop(Looper.java:137) 05-09 18:50:11.125: E/AndroidRuntime(2007): at android.app.ActivityThread.main(ActivityThread.java:4424) 05-09 18:50:11.125: E/AndroidRuntime(2007): at java.lang.reflect.Method.invokeNative(Native Method) 05-09 18:50:11.125: E/AndroidRuntime(2007): at java.lang.reflect.Method.invoke(Method.java:511) 05-09 18:50:11.125: E/AndroidRuntime(2007): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784) 05-09 18:50:11.125: E/AndroidRuntime(2007): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551) 05-09 18:50:11.125: E/AndroidRuntime(2007): at dalvik.system.NativeStart.main(Native Method) 05-09 18:50:11.215: E/dalvikvm(2007): Unable to open stack trace file '/data/anr/traces.txt': Is a directory 05-09 18:50:11.486: I/dalvikvm(2007): threadid=3: reacting to signal 3 05-09 18:50:11.526: I/dalvikvm(2007): Wrote stack traces to '/data/anr/traces.txt' 05-09 18:50:11.795: I/dalvikvm(2007): threadid=3: reacting to signal 3 05-09 18:50:11.815: I/dalvikvm(2007): Wrote stack traces to '/data/anr/traces.txt'

はまた、私はすでに、私はJARファイルを配置する必要があることを認識しています:ここで

enter image description here

は私が取得していますエラーです"lib"フォルダではなく、 "lib"フォルダではdocumented hereと表示されます。


アップデート1:

私は私ののAndroidManifest.xmlで以下の活動を持っています。ここでは

 <activity android:name="com.urbanairship.push.sample.MainActivity" 
       android:label="@string/app_name"> 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 
      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
    </activity> 

    <activity android:name="com.urbanairship.push.sample.PushPreferencesActivity" /> 
    <activity android:name="com.urbanairship.push.sample.LocationActivity" /> 

は私のJavaのビルド・パスのスクリーンショットです: enter image description here

答えて

1

アンドロイドマニフェストファイルのすべてを宣言してもよろしいですか?ライブラリとアクティビティをsrcに追加してから実行するだけでは、新しいアクティビティをすべてマニフェストに追加する必要があります。

スタックトレースの様子から、あなたは飛行船のための行方不明のようです。

また、ビルドプロパティを確認し、飛行船がビルドオーダーであることを確認してください。

+0

@Ed Duderino、コメントありがとうございます。私はちょうど私のプロジェクトでビルドのパスと活動を含めるために自分の投稿を更新しました。それが問題なのかどうかは不明です。思考? –

+0

これは確かにビルドの問題です。時には、プロジェクトをインポートするときに日食が特に難しい場合があります。私は最初にあなたが提供したリンクの指示を見直しました。私があなたの場合は、あなたの場所を拭き取り、プロジェクトを再作成し、指示に厳密に従います。場合によっては、インポート時に適切なバージョンのJavaとAndroidライブラリをプロジェクトに追加する必要があります。サービスと受信者の宣言に関するマニフェストの指示にも特に注意してください。 –