3

http://code.google.com/p/iosched/を調べるソースを入手しました。マニフェストやコードは何も変更していないので、次のようになります。

<manifest
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    package="com.google.android.apps.iosched"

    ....

    <uses-sdk android:minSdkVersion="7" android:targetSdkVersion="15"/>

    ....

    <activity
        android:name=".ui.HomeActivity"
        android:label="@string/app_name"
        android:theme="@style/Theme.Iosched.Home">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

プロジェクトをビルドし、複数のデバイス (gb、icm) にインストールしました。起動すると、次のように表示されます。

06-03 14:51:40.457: E/AndroidRuntime(1442): 致命的な例外: メイン 06-03 14:51:40.457: E/AndroidRuntime(1442): java.lang.RuntimeException: アクティビティ ComponentInfo{com をインスタンス化できません。 google.android.apps.iosched/com.google.android.apps.iosched.ui.HomeActivity}: java.lang.ClassNotFoundException: com.google.android.apps.iosched.ui.HomeActivity 06-03 14:51:40.457 : E/AndroidRuntime(1442): android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1983) 06-03 14:51:40.457: E/AndroidRuntime(1442): android.app.ActivityThread.handleLaunchActivity(ActivityThread. java:2084) 06-03 14:51:40.457: E/AndroidRuntime(1442): android.app.ActivityThread.access$600(ActivityThread.java:130) 06-03 14:51:40.457: E/AndroidRuntime(1442) ): android.app.ActivityThread$H.handleMessage(ActivityThread.java:1195) 06-03 14:51:40.457: E/AndroidRuntime(1442): android.os.Handler.dispatchMessage(Handler.java:99) 06-03 14:51:40.457: E/AndroidRuntime(1442): でandroid.os.Looper.loop(Looper.java:137) 06-03 14:51:40.457: E/AndroidRuntime(1442): android.app.ActivityThread.main(ActivityThread.java:4745) 06-03 14: 51:40.457: E/AndroidRuntime(1442): java.lang.reflect.Method.invokeNative(Native Method) 06-03 14:51:40.457: E/AndroidRuntime(1442): java.lang.reflect.Method. (Method.java:511) 06-03 14:51:40.457: E/AndroidRuntime(1442): com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:786) 06-03 14: 51:40.457: E/AndroidRuntime(1442): com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553) 06-03 14:51:40.457: E/AndroidRuntime(1442): dalvik.system で.NativeStart.main(Native Method) 06-03 14:51:40.457: E/AndroidRuntime(1442): 原因: java.lang.ClassNotFoundException: com.google.android.apps.iosched.ui.HomeActivity 06-03 14:51: 40.457: E/AndroidRuntime(1442): dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:61) 06-03 14:51:40.457: E/AndroidRuntime(1442): java.lang.ClassLoader.loadClass(ClassLoader で.java:501) 06-03 14:51:40.457: E/AndroidRuntime(1442): java.lang.ClassLoader.loadClass(ClassLoader.java:461) 06-03 14:51:40.457: E/AndroidRuntime(1442) ): android.app.Instrumentation.newActivity(Instrumentation.java:1053) 06-03 14:51:40.457: E/AndroidRuntime(1442): android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1974) 06- 03 14:51:40.457: E/AndroidRuntime(1442): ... 11 詳細E/AndroidRuntime(1442): 原因: java.lang.ClassNotFoundException: com.google.android.apps.iosched.ui.HomeActivity 06-03 14:51:40.457: E/AndroidRuntime(1442): dalvik.system で。 BaseDexClassLoader.findClass(BaseDexClassLoader.java:61) 06-03 14:51:40.457: E/AndroidRuntime(1442): java.lang.ClassLoader.loadClass(ClassLoader.java:501) 06-03 14:51:40.457: E/AndroidRuntime(1442): java.lang.ClassLoader.loadClass(ClassLoader.java:461) 06-03 14:51:40.457: E/AndroidRuntime(1442): android.app.Instrumentation.newActivity(Instrumentation.java) :1053) 06-03 14:51:40.457: E/AndroidRuntime(1442): android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1974) 06-03 14:51:40.457: E/AndroidRuntime(1442): ... 11以上E/AndroidRuntime(1442): 原因: java.lang.ClassNotFoundException: com.google.android.apps.iosched.ui.HomeActivity 06-03 14:51:40.457: E/AndroidRuntime(1442): dalvik.system で。 BaseDexClassLoader.findClass(BaseDexClassLoader.java:61) 06-03 14:51:40.457: E/AndroidRuntime(1442): java.lang.ClassLoader.loadClass(ClassLoader.java:501) 06-03 14:51:40.457: E/AndroidRuntime(1442): java.lang.ClassLoader.loadClass(ClassLoader.java:461) 06-03 14:51:40.457: E/AndroidRuntime(1442): android.app.Instrumentation.newActivity(Instrumentation.java) :1053) 06-03 14:51:40.457: E/AndroidRuntime(1442): android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1974) 06-03 14:51:40.457: E/AndroidRuntime(1442): ... 11以上iosched.ui.HomeActivity 06-03 14:51:40.457: E/AndroidRuntime(1442): dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:61) 06-03 14:51:40.457: E/AndroidRuntime(1442) ): java.lang.ClassLoader.loadClass(ClassLoader.java:501) 06-03 14:51:40.457: E/AndroidRuntime(1442): java.lang.ClassLoader.loadClass(ClassLoader.java:461) 06- 03 14:51:40.457: E/AndroidRuntime(1442): android.app.Instrumentation.newActivity(Instrumentation.java:1053) 06-03 14:51:40.457: E/AndroidRuntime(1442): android.app. ActivityThread.performLaunchActivity(ActivityThread.java:1974) 06-03 14:51:40.457: E/AndroidRuntime(1442): ... 11 もっと見るiosched.ui.HomeActivity 06-03 14:51:40.457: E/AndroidRuntime(1442): dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:61) 06-03 14:51:40.457: E/AndroidRuntime(1442) ): java.lang.ClassLoader.loadClass(ClassLoader.java:501) 06-03 14:51:40.457: E/AndroidRuntime(1442): java.lang.ClassLoader.loadClass(ClassLoader.java:461) 06- 03 14:51:40.457: E/AndroidRuntime(1442): android.app.Instrumentation.newActivity(Instrumentation.java:1053) 06-03 14:51:40.457: E/AndroidRuntime(1442): android.app. ActivityThread.performLaunchActivity(ActivityThread.java:1974) 06-03 14:51:40.457: E/AndroidRuntime(1442): ... 11 もっと見るE/AndroidRuntime(1442): java.lang.ClassLoader.loadClass(ClassLoader.java:501) 06-03 14:51:40.457: E/AndroidRuntime(1442): java.lang.ClassLoader.loadClass(ClassLoader.java) :461) 06-03 14:51:40.457: E/AndroidRuntime(1442): android.app.Instrumentation.newActivity(Instrumentation.java:1053) 06-03 14:51:40.457: E/AndroidRuntime(1442): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1974) 06-03 14:51:40.457: E/AndroidRuntime(1442): ... 11 もっと見るE/AndroidRuntime(1442): java.lang.ClassLoader.loadClass(ClassLoader.java:501) 06-03 14:51:40.457: E/AndroidRuntime(1442): java.lang.ClassLoader.loadClass(ClassLoader.java) :461) 06-03 14:51:40.457: E/AndroidRuntime(1442): android.app.Instrumentation.newActivity(Instrumentation.java:1053) 06-03 14:51:40.457: E/AndroidRuntime(1442): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1974) 06-03 14:51:40.457: E/AndroidRuntime(1442): ... 11 もっと見るapp.ActivityThread.performLaunchActivity(ActivityThread.java:1974) 06-03 14:51:40.457: E/AndroidRuntime(1442): ... 11 もっと見るapp.ActivityThread.performLaunchActivity(ActivityThread.java:1974) 06-03 14:51:40.457: E/AndroidRuntime(1442): ... 11 もっと見る

「java.lang.ClassNotFoundException:com.google.android.apps.iosched.ui.HomeActivity」クラスが存在するため、奇妙に思えます。

何か提案できますか?

psプロパティをきれいにして修正しようとしましたが、無駄でした。

4

2 に答える 2

4

Eclipse で同じような問題が発生しています。これは、互換パッケージのエクスポートを選択していないためです。Eclipse -> Right click on project -> Properties -> Java Build Path -> Order & Export -> Make sure "Private Libraries" are checked.

問題は、FragmentActivity が最終的な apk ファイルに存在しないことです。

于 2013-06-03T11:36:08.500 に答える
1
<activity
        android:name=".HomeActivity"
        android:label="@string/app_name"
        android:theme="@style/Theme.Iosched.Home">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
</activity>

これが機能しない場合は、これを使用してください

<activity
        android:name="com.google.android.apps.iosched.HomeActivity"
        android:label="@string/app_name"
        android:theme="@style/Theme.Iosched.Home">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
</activity>
于 2013-06-03T11:31:46.013 に答える