0

私はマニフェストファイルにこの意図を持っています:

<activity
    android:name=".ProductStrategyActivity"
    android:label="@string/product_strategy_header" />    

これを実行しようとすると、例外が発生します。

        Intent myIntent = new Intent(LearnActivity.this, ProductStrategyActivity.class);
        LearnActivity.this.startActivity(myIntent);

クラスは私のsrc/com / app_name /content/ディレクトリにあるパッケージにあります。

問題は、マニフェストファイルでそのディレクトリを指定する必要があるということでしょうか?

申し訳ありませんが、例外を間違えました。スタックトレースは次のとおりです。

04-27 02:07:23.221: E/AndroidRuntime(1234): FATAL EXCEPTION: main
04-27 02:07:23.221: E/AndroidRuntime(1234): android.content.ActivityNotFoundException: Unable to find explicit activity class {com.problemio/com.problemio.content.ProductStrategyActivity}; have you declared this activity in your AndroidManifest.xml?
04-27 02:07:23.221: E/AndroidRuntime(1234):     at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1508)
04-27 02:07:23.221: E/AndroidRuntime(1234):     at android.app.Instrumentation.execStartActivity(Instrumentation.java:1384)
04-27 02:07:23.221: E/AndroidRuntime(1234):     at android.app.Activity.startActivityForResult(Activity.java:3190)
04-27 02:07:23.221: E/AndroidRuntime(1234):     at android.app.Activity.startActivity(Activity.java:3297)
04-27 02:07:23.221: E/AndroidRuntime(1234):     at com.problemio.LearnActivity$3.onClick(LearnActivity.java:113)
04-27 02:07:23.221: E/AndroidRuntime(1234):     at android.view.View.performClick(View.java:3511)
04-27 02:07:23.221: E/AndroidRuntime(1234):     at android.view.View$PerformClick.run(View.java:14105)
04-27 02:07:23.221: E/AndroidRuntime(1234):     at android.os.Handler.handleCallback(Handler.java:605)
04-27 02:07:23.221: E/AndroidRuntime(1234):     at android.os.Handler.dispatchMessage(Handler.java:92)
04-27 02:07:23.221: E/AndroidRuntime(1234):     at android.os.Looper.loop(Looper.java:137)
04-27 02:07:23.221: E/AndroidRuntime(1234):     at android.app.ActivityThread.main(ActivityThread.java:4424)
04-27 02:07:23.221: E/AndroidRuntime(1234):     at java.lang.reflect.Method.invokeNative(Native Method)
04-27 02:07:23.221: E/AndroidRuntime(1234):     at java.lang.reflect.Method.invoke(Method.java:511)
04-27 02:07:23.221: E/AndroidRuntime(1234):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
04-27 02:07:23.221: E/AndroidRuntime(1234):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
04-27 02:07:23.221: E/AndroidRuntime(1234):     at dalvik.system.NativeStart.main(Native Method)

その行LearnActivity.java:113は、現在のインテントに新しいインテントに移動するように指示する場所です。

ありがとう!

4

2 に答える 2

2
.ProductStrategyActivity

マニフェスト ファイルの上記の単語を以下に置き換えます

.content.directory.ProductStrategyActivity
于 2012-04-27T02:11:28.947 に答える
1

マニフェストエントリのandroid:nameは、絶対パッケージ名またはアプリケーションの名前空間に相対的な相対名前空間のいずれかです。

ただし、マニフェストエントリに問題がある場合は、NPEを取得できません。他の何かが間違っているに違いありません。

于 2012-04-27T02:00:20.957 に答える