このエラーの解決策が見つかりません。永続的な解決策を教えてください。私はそれを解決する方法がわかりません。
01-04 11:06:42.302: E/AndroidRuntime(1906): Java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{e.gochat/e.gochat.gochat.MainActivity}: Java.lang.ClassNotFoundException: Didn't find class "e.gochat.gochat.MainActivity" on path: DexPathList[[Zip file "/data/app/e.gochat-1.apk"],nativeLibraryDirectories=[/data/app-lib/e.gochat-1, /vendor/lib, /system/lib]]
01-04 11:06:42.302: E/AndroidRuntime(1906): at Android.app.ActivityThread.performLaunchActivity(ActivityThread.Java:2102)
01-04 11:06:42.302: E/AndroidRuntime(1906): at Android.app.ActivityThread.handleLaunchActivity(ActivityThread.Java:2226)
01-04 11:06:42.302: E/AndroidRuntime(1906): at Android.app.ActivityThread.access$700(ActivityThread.Java:135)
01-04 11:06:42.302: E/AndroidRuntime(1906): at Android.app.ActivityThread$H.handleMessage(ActivityThread.Java:1397)
01-04 11:06:42.302: E/AndroidRuntime(1906): at Android.os.Handler.dispatchMessage(Handler.Java:102)
01-04 11:06:42.302: E/AndroidRuntime(1906): at Android.os.Looper.loop(Looper.Java:137)
01-04 11:06:42.302: E/AndroidRuntime(1906): at Android.app.ActivityThread.main(ActivityThread.Java:4998)
01-04 11:06:42.302: E/AndroidRuntime(1906): at Java.lang.reflect.Method.invokeNative(Native Method)
01-04 11:06:42.302: E/AndroidRuntime(1906): at Java.lang.reflect.Method.invoke(Method.Java:515)
01-04 11:06:42.302: E/AndroidRuntime(1906): at com.Android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.Java:777)
01-04 11:06:42.302: E/AndroidRuntime(1906): at com.Android.internal.os.ZygoteInit.main(ZygoteInit.Java:593)
01-04 11:06:42.302: E/AndroidRuntime(1906): at dalvik.system.NativeStart.main(Native Method)
01-04 11:06:42.302: E/AndroidRuntime(1906): Caused by: Java.lang.ClassNotFoundException: Didn't find class "e.gochat.gochat.MainActivity" on path: DexPathList[[Zip file "/data/app/e.gochat-1.apk"],nativeLibraryDirectories=[/data/app-lib/e.gochat-1, /vendor/lib, /system/lib]]
01-04 11:06:42.302: E/AndroidRuntime(1906): at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.Java:56)
01-04 11:06:42.302: E/AndroidRuntime(1906): at Java.lang.ClassLoader.loadClass(ClassLoader.Java:497)
01-04 11:06:42.302: E/AndroidRuntime(1906): at Java.lang.ClassLoader.loadClass(ClassLoader.Java:457)
01-04 11:06:42.302: E/AndroidRuntime(1906): at Android.app.Instrumentation.newActivity(Instrumentation.Java:1061)
01-04 11:06:42.302: E/AndroidRuntime(1906): at Android.app.ActivityThread.performLaunchActivity(ActivityThread.Java:2093)
01-04 11:06:42.302: E/AndroidRuntime(1906): ... 11 more
01-04 11:07:06.772: I/Process(1906): Sending signal. PID: 1906 SIG: 9
これは私のアプリですマニフェストXML
<manifest xmlns:Android="http://schemas.Android.com/apk/res/Android"
package="e.gochat"
Android:versionCode="1"
Android:versionName="1.0" >
<uses-sdk
Android:minSdkVersion="9"
Android:targetSdkVersion="18" />
<permission
Android:name="e.gochat.permission.C2D_MESSAGE"
Android:protectionLevel="signature" />
<uses-permission Android:name="e.gochat.permission.C2D_MESSAGE" />
<uses-permission Android:name="Android.permission.INTERNET" />
<uses-permission Android:name="Android.permission.GET_ACCOUNTS" />
<uses-permission Android:name="Android.permission.WAKE_LOCK" />
<uses-permission Android:name="com.google.Android.c2dm.permission.RECEIVE" />
<uses-permission Android:name="Android.permission.READ_CONTACTS" />
<application
Android:name="e.gochat.Common"
Android:allowBackup="true"
Android:icon="@drawable/ic_launcher"
Android:label="@string/app_name"
Android:theme="@style/AppTheme" >
<activity
Android:name="e.gochat.MainActivity">
<intent-filter>
<action Android:name="Android.intent.action.MAIN" />
<category Android:name="Android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity Android:name="e.gochat.ChatActivity"
/>
<activity
Android:name="e.gochat.SettingsActivity"
Android:label="@string/title_activity_settings" />
<receiver
Android:name="e.gochat.client.GcmBroadcastReceiver"
Android:permission="com.google.Android.c2dm.permission.SEND" >
<intent-filter>
<action Android:name="com.google.Android.c2dm.intent.RECEIVE" />
<category Android:name="e.gochat" />
</intent-filter>
</receiver>
<provider
Android:name="e.gochat.DataProvider"
Android:authorities="e.gochat.provider"
Android:exported="false">
</provider>
</application>
ここで何が悪いのか分かりません。 .jarファイルをJavaビルドパスに追加しましたが、このclassnotfound例外が発生しています。Android.app.Applicationをインポートすると、アプリがロードされます
パッケージ名はわかりませんが、e.gochat
の場合はこれを実行してください。
package="e.gochat"
をmanifest.xmlに追加します
<manifest xmlns:Android="http://schemas.Android.com/apk/res/Android"
package="e.gochat"
.....
.....
>
Android:name
の各アクティビティ宣言で、アクティビティ名の前にドットを置きます。
<activity
Android:name=".MainActivity">
............
</activity>
<activity
Android:name=".ChatActivity">
[〜#〜] edit [〜#〜]
編集後、e.gochat
がパッケージ名であることがわかります。
これで、回答の後半で述べたように、各アクティビティ/プロバイダー/レシーバー名からe.gochat
を削除するだけです。
Androidが追加します。
Android studio。のインスタントランGotoファイルを無効にするには->設定->ビルド、実行、展開->インスタントラン->のチェックを外して、この問題を解決しました。インスタントラン
Android Studioを使用して
Android Stuido 0.8.2にアップグレードした後、この問題が発生しました。
プロジェクト全体を再インポートするまで、何も機能しませんでした。
File -> Close Project -> Import Project... -> Choose the same project -> OK
これは私のためにそれを修正しました
デバイスからアプリをアンインストールしてプロジェクトを再度実行すると、修正されました。
私にとって、これは<Android 5.0を実行しているデバイスで発生したものです。これは multidexサポートが有効になっていないため (これは、ライブラリを含む合計65kを超えるメソッドです)。 Multidexは自動で、Android 5.0+(具体的には [〜#〜] art [〜#〜] )を使用するデバイスでネイティブです。
これが私に影響を与えた理由は、レイアウトファイルのパス名が間違っていたためです。
<Android.support.v4.app.view.ViewPager xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:id="@+id/pager"
Android:layout_width="match_parent"
Android:layout_height="match_parent">
</Android.support.v4.app.view.ViewPager>
ViewPagerの正しい絶対パスは
Android.support.v4.view.ViewPager
パスを修正した後、動作しました。アクティビティ名の前に「。」を付ける必要はありませんでした。
この問題には、さまざまなシナリオに基づいた複数の回答があります。 Android Studioプロジェクトでライブラリ(.aar)を使用すると、同じエラーが発生しました。
私の場合の根本的な原因は、.aarファイルで使用されていたアプリのbuild.gradleファイルにサードパーティのlib依存関係を追加するのを逃したことです。
例:-ライブラリ(.aar)は 'com.squareup.okhttp3:okhttp:3.4.1'を使用していました。だから私は追加する必要がありました
'com.squareup.okhttp3:okhttp:3.4.1'をコンパイルします
アプリのbuild.gradleで。それが誰かを助けることを願っています。
この問題は、build.gradle
ファイルからMultiDexSupportを削除することで解決しました。
defaultConfig {
multiDexEnabled true // This line was causing above problem
}
MultiDexSupportを削除することで問題が解決しました
Android STUDIOキッシャーの答えに加えて:
Gradle defaultconfigでmultiDexEnabled = true
を有効にすると、小さなプロジェクトでエラーが発生しました。生成された.apkファイルを使用すると、アプリの起動時に既知のエラーメッセージでクラッシュします。
私にとっては、gradle経由で.apkファイルを構築したときに解決しました(Android studio)-> "yourapp"-> Tasks-> install-> installDebugの右側
これがこの奇妙なエラーで誰かを助けることを願っています
Android私がまだ実行していたバージョンでは利用できなかったリスナーを実装したため、同じエラーが発生しました。
MainActivityの例:
// RecyclerView.OnScrollChangeListener is only available on API >= 23
public class MainActivity implements RecyclerView.OnScrollChangeListener
{
}
API <23のデバイスでこのアクティビティを実行すると、このエラーも発生します...