1

数独ゲームを作成していますが、ボタンを押すとゲームがクラッシュします。これが私のコードです:

FPSudoku.java:

package org.example.fpsudoku;

import android.app.Activity; import
android.os.Bundle; import
android.content.Intent; import
android.view.View; import
android.view.View.OnClickListener;

public class FPSudoku extends Activity
implements OnClickListener{
     @Override    public void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.main);

      View newButton = findViewById(R.id.new_game_button);
      newButton.setOnClickListener(this);
      View aboutButton = findViewById(R.id.how_to_play_button);
      aboutButton.setOnClickListener(this);
      View exitButton = findViewById(R.id.exit_game_button);
      exitButton.setOnClickListener(this);
          }

      public void onClick(View v) {
          switch (v.getId()) {
          case R.id.how_to_play_button:
          Intent i = new Intent(this, Howtoplay.class);
          startActivity(i);
          break;

      } 
  }
}

Howtoplay.java

package org.example.fpsudoku;

import android.app.Activity; import
android.os.Bundle;

public class Howtoplay extends
Activity {  @Override   protected void
onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.howtoplay);
    }

}

更新しました

アンドロイドmanifest.xml

<application android:icon="@drawable/icon" android:label="@string/app_name">
    <activity android:name=".FPSudoku"
              android:label="@string/app_name">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
        <activity android:name=".Howtoplay"
                  android:label="@string/how_to_play_title" >
                </activity>
                </activity>

</application>

更新されたlogcat

02-25 00:36:08.623: DEBUG/AndroidRuntime(818): >>>>>>>>>>>>>> AndroidRuntime START
<<<<<<<<<<<<<< 02-25 00 :36:08.623: DEBUG/AndroidRuntime(818): CheckJNIがON
02-25 00:36:08.763: DEBUG/AndroidRuntime(818): --- ネイティブ関数登録中 ---
02-25 00:36:09.504: DEBUG /dalvikvm(237): GC_EXPLICIT は 130 オブジェクト / 6944 バイトを 127 ミリ秒で解放しました
02-25 00:36:09.544: DEBUG/PackageParser(43): パッケージをスキャンしています: /data/app/vmdl10845.tmp
02-25 00:36:09.544 : WARN/PackageParser(43): パッケージ /data/app/vmdl10845.tmp の問題:
02-25 00:36:09.544: WARN/PackageParser(43): 下の不明な要素: /data/app/vmdl10845.tmp でのアクティビティバイナリ XML ファイルの行 #15
02-25 00:36:09.634:INFO/PackageManager(43): 非システム パッケージの削除: org.example.fpsudoku
02-25 00:36:09.634: INFO/ActivityManager(43): パッケージ org.example.fpsudoku の強制停止 uid=10036
02-25 00:36:09.734: DEBUG/PackageManager(43): パッケージ org.example.fpsudoku のスキャン
02-25 00:36:09.734: INFO/PackageManager(43): パッケージ org.example.fpsudoku codePath が /data/app/org.example.fpsudoku-1.apk から /data/app/org.example.fpsudoku に変更されました-2.apk; データの保持と新しい
02-25 00:36:09.744: INFO/PackageManager(43): /data/app/org.example.fpsudoku-2.apk changed; の使用 解凍
02-25 00:36:09.754: DEBUG/installd(35): DexInv: --- BEGIN '/data/app/org.example.fpsudoku-2.apk' ---
02-25 00:36:09.904 : DEBUG/dalvikvm(825): DexOpt: ロード 28 ミリ秒、ベリファイ 17 ミリ秒、オプト 2 ミリ秒
02-25 00:36:09.904: DEBUG/installd(35): DexInv: --- END '/data/app/org.example.fpsudoku-2.apk' (成功) ---
02-25 00:36 :09.914: WARN/PackageManager(43): pkg のコード パス: org.example.fpsudoku が /data/app/org.example.fpsudoku-1.apk から /data/app/org.example.fpsudoku-2 に変更されました。 apk
02-25 00:36:09.914: WARN/PackageManager(43): pkg のリソース パス: org.example.fpsudoku は /data/app/org.example.fpsudoku-1.apk から /data/app/org に変更されます.example.fpsudoku-2.apk
02-25 00:36:09.914: DEBUG/PackageManager(43): アクティビティ: org.example.fpsudoku.FPSudoku
02-25 00:36:09.924: INFO/ActivityManager(43): 力パッケージを停止しています org.example.fpsudoku uid=10036
02-25 00:36:10.004: INFO/installd(35): 移動 /data/dalvik-cache/data@app@org.example.fpsudoku-2.apk@classes.dex -> /data/dalvik-cache/ data@app@org.example.fpsudoku-2.apk@classes.dex
02-25 00:36:10.014: DEBUG/PackageManager(43): /data/app/org.example.fpsudoku-2 に新しいパッケージがインストールされました。 apk
02-25 00:36:10.174: DEBUG/dalvikvm(43): GC_FOR_MALLOC が 7382 個のオブジェクトを解放/97ms で 491576 バイト
02-25 00:36:10.274: INFO/ActivityManager(43): パッケージ org.example.fpsudoku を強制的に停止uid=10036
02-25 00:36:10.334: DEBUG/dalvikvm(117): GC_EXPLICIT が 814 オブジェクトを解放 / 53ms で 43456 バイト
02-25 00:36:10.554: DEBUG/dalvikvm(43): GC_EXPLICIT が 3804 オブジェクトを解放 / 210760 102 ミリ秒のバイト数
02-25 00:36:10.574: WARN/RecognitionManagerService(43): 利用可能な音声認識サービスが見つかりません
02-25 00:36:10.614: INFO/installd(35): unlink /data/dalvik-cache/data@app@ org.example.fpsudoku-1.apk@classes.dex
02-25 00:36:10.654: DEBUG/AndroidRuntime(818): VM をシャットダウンしています
02-25 00:36:10.664: DEBUG/dalvikvm(818): デバッガーが切り離された; オブジェクト レジストリには 1 つのエントリがありました
02-25 00:36:10.694: INFO/AndroidRuntime(818): 注: スレッド 'Binder Thread #3' のアタッチに失敗しました
02-25 00:36:11.254: DEBUG/AndroidRuntime(831): > >>>>>>>>>>>>> AndroidRuntime START
<<<<<<<<<<<<<< 02-25 00:36:11.254: DEBUG/AndroidRuntime(831): CheckJNI が ON
02- 25 00:36:11.414:
02-25 00:36:12.034: INFO/ActivityManager(43): 開始アクティビティ: 意図 { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10000000 cmp=org.example. fpsudoku/.FPSudoku }
02-25 00:36:12.064: INFO/ActivityManager(43): アクティビティ org.example.fpsudoku の proc org.example.fpsudoku を開始します org.example.fpsudoku/.FPSudoku: pid=837 uid=10036 gids={}
02 -25 00:36:12.094: DEBUG/AndroidRuntime(831): VM 02-25 をシャットダウンしています
00:36:12.104: DEBUG/dalvikvm(831): デバッガーが切り離されました。オブジェクト レジストリには 1 つのエントリがありました
02-25 00:36:12.954: INFO/ActivityManager(43): 表示されたアクティビティ org.example.fpsudoku/.FPSudoku: 901 ミリ秒 (合計 901 ミリ秒)
02-25 00:36:14.024: INFO/ ActivityManager(43): 開始アクティビティ: インテント { cmp=org.example.fpsudoku/.Howtoplay }
02-25 00:36:14.034: DEBUG/AndroidRuntime(837): VM をシャットダウンしています
02-25 00:36:14.034: WARN/dalvikvm(837): threadid=1: キャッチされない例外で終了するスレッド (group=0x4001d800)
02 -25 00:36:14.044: エラー/AndroidRuntime(837): 致命的な例外: メイン
02-25 00:36:14.044: エラー/AndroidRuntime(837): android.content.ActivityNotFoundException: 明示的なアクティビティ クラス {org. example.fpsudoku/org.example.fpsudoku.Howtoplay}; AndroidManifest.xml でこのアクティビティを宣言しましたか?
02-25 00:36:14.044: エラー/AndroidRuntime(837): android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1404) で
02-25 00:36:14.044: エラー/AndroidRuntime(837): Android で。 app.Instrumentation.execStartActivity(Instrumentation.java:1378)
02-25 00:36:14.044: エラー/AndroidRuntime(837): android.app.Activity.startActivityForResult(Activity.java:2817) で
02-25 00:36:14.044: エラー/AndroidRuntime(837): Android で。 app.Activity.startActivity(Activity.java:2923)
02-25 00:36:14.044: ERROR/AndroidRuntime(837): org.example.fpsudoku.FPSudoku.onClick(FPSudoku.java:31)
02-25 00: 36:14.044: エラー/AndroidRuntime(837): android.view.View.performClick(View.java:2408)
02-25 00:36:14.044: エラー/AndroidRuntime(837): android.view.View$PerformClick で.run(View.java:8816)
02-25 00:36:14.044: エラー/AndroidRuntime(837): android.os.Handler.handleCallback(Handler.java:587)
02-25 00:36:14.044: エラー/AndroidRuntime(837): android.os.Handler.dispatchMessage(Handler.java:92) で
02-25 00:36:14.044: エラー/AndroidRuntime(837): android.os.Looper.loop(Looper.java:123) で
02-25 00:36:14.044: エラー/AndroidRuntime(837): Android で。 app.ActivityThread.main(ActivityThread.java:4627)
02-25 00:36:14.044: エラー/AndroidRuntime(837): java.lang.reflect.Method.invokeNative(ネイティブ メソッド)
02-25 00:36:14.044 で: エラー/AndroidRuntime(837): java.lang.reflect.Method.invoke(Method.java:521)
02-25 00:36:14.044: エラー/AndroidRuntime(837): com.android.internal.os で。 ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
02-25 00:36:14.044: エラー/AndroidRuntime(837): com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626) で
02-25 00:36:14.044: エラー/AndroidRuntime(837): dalvik.system.NativeStart.main(Native Method)
02-25 00:36:14.054: WARN/ActivityManager(43): 強制終了アクティビティ org.example .fpsudoku/.FPSudoku
02-25 00:36:14.564: WARN/ActivityManager(43): HistoryRecord{43f8d620 org.example.fpsudoku/.FPSudoku}
02-25 00:36:15.764: INFO/Process( 837): 信号を送信しています。PID: 837 SIG: 9
02-25 00:36:15.774: INFO/ActivityManager(43): プロセス org.example.fpsudoku (pid 837) が停止しました。
02-25 00:36:15.774: INFO/WindowManager(43): WIN DEATH: ウィンドウ{440296f8 org.example.fpsudoku/org.example.fpsudoku.FPSudoku paused=false}
02-25 00:36:15.824: WARN/InputManagerService(43): pid 837 uid 10036
02-25 00:36:18.894 に setActive(false) 通知を送信する RemoteException を取得しました: DEBUG/SntpClient(43): 要求時間に失敗しました: Java .net.SocketException: アドレス ファミリはプロトコルでサポートされていません
02-25 00:36:20.194: DEBUG/dalvikvm(237): GC_EXPLICIT は 156 オブジェクト / 11312 バイトを 133ms で解放しました
02-25 00:36:24.782: WARN/ActivityManager(43 ): HistoryRecord{43f8d620 org.example.fpsudoku/.FPSudoku} のアクティビティ破棄タイムアウト
02-25 00:36:25.254: DEBUG/dalvikvm(262): GC_EXPLICIT は 26 オブジェクト / 1144 バイトを 131 ミリ秒で解放しました

4

1 に答える 1

6

LogCat に隠されているのは、質問に対する答えです。

ActivityNotFoundException: Unable to find explicit activity class {org.example.fpsudoku/org.example.fpsudoku.Howtoplay}; have you declared this activity in your AndroidManifest.xml?
于 2011-02-24T23:38:46.533 に答える