我正在尝试调试我的应用程序,单击按钮后,我收到 Activity Class {} 不存在错误,其内容如下:“错误:Activity 类 {sprint.telematics.sprinttelematicstracking/track.my.world.LoginActivity } 不存在。”
问题不在于“track.my.world”包名称,因为它确实存在,而在于正斜杠之前的部分:“sprint.telematics.sprinttelematicstracking”,因为应用程序中不再有任何名为此的内容。
我已将项目从 Eclipse 转移到 Android Studio,并将包名称从“sprint.telematics.sprinttelematicstracking”更改为“track.my.world”,此时错误开始发生。我的 Android list 文件包含正确的包,如图所示。
AndroidManifest
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="track.my.world"
android:versionCode="1"
android:versionName="1.0" >
<application
android:allowBackup="true"
android:icon="@drawable/trackmyworldicon"
android:label="@string/app_name"
android:theme="@style/AppTheme">
<activity
android:name="track.my.world.LoginActivity"
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 studio 正在寻找启动应用程序的位置,因为我认为它正在寻找 LoginActivity 的错误区域
谢谢
我的build.gradle文件:
buildscript {
repositories {
maven { url 'http://download.crashlytics.com/maven' }
}
dependencies {
classpath 'com.crashlytics.tools.gradle:crashlytics-gradle:1.+'
}
}
apply plugin: 'android'
apply plugin: 'crashlytics'
repositories {
maven { url 'http://download.crashlytics.com/maven' }
}
dependencies {
compile fileTree(dir: 'libs', include: '*.jar')
compile project(':google-play-services_lib')
compile project(':google-play-services_lib')
compile 'com.crashlytics.android:crashlytics:1.+'
}
android {
compileSdkVersion 18
buildToolsVersion "20.0.0"
defaultConfig {
applicationId "track.my.world"
minSdkVersion 10
targetSdkVersion 18
versionCode 1
versionName "1.0"
}
sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
java.srcDirs = ['srcc']
resources.srcDirs = ['srcc']
aidl.srcDirs = ['srcc']
renderscript.srcDirs = ['srcc']
res.srcDirs = ['res']
assets.srcDirs = ['assets']
}
instrumentTest.setRoot('tests')
debug.setRoot('build-types/debug')
release.setRoot('build-types/release')
}
}
最佳答案
您是否已将项目迁移到 gradle?
在这种情况下,请查看 build.gradle 文件中的 packageName。 Gradle 将在应用程序构建过程中覆盖 androidManifest.xml 中的包名称。
android {
compileSdkVersion 19
buildToolsVersion "19.1.0"
defaultConfig {
packageName "com.your.app"
minSdkVersion 14
targetSdkVersion 19
versionCode 1
versionName "1.0"
}
}
关于java - android Activity类不存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25161291/