Android studio Android Studio在运行.apk时获得错误的包名

Android studio Android Studio在运行.apk时获得错误的包名,android-studio,android-manifest,Android Studio,Android Manifest,我将包名从com.mycompany.myapplication更改为com.mycompany.testapp 一切正常,但当我尝试在模拟器上运行它时,我得到: 会话已重新启动 目标设备:NexusS[emulator-5554] 上传文件 本地路径:/home/antony/AndroidStudioProjects/testappProject/testapp/build/apk/testapp-debug-unaligned.apk 远程路径:/data/local/tmp/com.my

我将包名从com.mycompany.myapplication更改为com.mycompany.testapp

一切正常,但当我尝试在模拟器上运行它时,我得到:

会话已重新启动 目标设备:NexusS[emulator-5554] 上传文件 本地路径:/home/antony/AndroidStudioProjects/testappProject/testapp/build/apk/testapp-debug-unaligned.apk 远程路径:/data/local/tmp/com.mycompany.myapplication 安装com.mycompany.myapplication 设备外壳命令:pm install-r“/data/local/tmp/com.mycompany.myapplication” pkg:/data/local/tmp/com.mycompany.myapplication 成功

启动应用程序:com.mycompany.myapplication/com.mycompany.testapp.MainActivity。 设备SHELL命令:am start-D-n“com.mycompany.myapplication/com.mycompany.testapp.MainActivity”-a android.intent.action.MAIN-c android.intent.category.LAUNCHER 开始:Intent{act=android.Intent.action.MAIN cat=[android.Intent.category.LAUNCHER]cmp=com.mycompany.myapplication/com.mycompany.testapp.MainActivity} 错误类型3 错误:活动类{com.mycompany.myapplication/com.mycompany.testapp.MainActivity}不存在

请注意,远程路径^^^是错误的

如果我去模拟器,我可以从菜单启动应用程序,只是当我试图从Android Studio运行应用程序时,出现了这个错误

我还看到在logcat的右上角,下拉列表为我提供了“无过滤器”或“app:com.mycompany.myapplication”。所以我甚至不能正确地调试


这些对com.mycompany.myapplication的引用来自何处?我该如何解决这个问题?

我会回答,以防其他人被这个问题困扰。奇怪的是,重启Android Studio解决了这个问题。没什么比这更复杂,也没什么不明显的。

我试图重启Android Studio,但问题仍然存在

然后,解决方案对我有效

  • 删除目录
    ~/.gradle/caches/
    。在Android Studio打开时执行此操作是可以的。 (请参阅)
  • 在Android Studio上按“与Gradle文件同步项目”图标
  • 运行项目,远程路径将是正确的

  • 我最后做的是在build.gradle、build和launch中更改“application ID”。然后从手机中删除应用程序并将应用程序ID还原回新版本的AndroidStudio(如0.9.1),此解决方案适用于我:

    1) 删除~/.greadle/2.1/taskArtifacts
    2) 清洁项目

    3) 运行项目清除缓存并重新启动对我来说很有效

        defaultConfig {
        applicationId "com.*****.newPackageId"
        minSdkVersion 11
        targetSdkVersion 20
    }
    

    转到Android Studio的“文件”菜单,然后选择“无效缓存/重新启动…”。。。选项

    以下是我解决问题的方法。很简单

    单击窗口顶部的“将项目与渐变文件同步”按钮

    如果您正在使用较新版本的Android Studio,请查找此按钮:


    我做了所有提到的事情,但没有效果。然后我在build.gradle文件中找到了一些东西,并根据我的新包对其进行了更改。这对我有用

        defaultConfig {
        applicationId "com.*****.newPackageId"
        minSdkVersion 11
        targetSdkVersion 20
    }
    

    我的问题是,我的一些.xml文件(特别是AndroidManifest.xml)的头以某种方式发生了更改

    标题有问题:

    <?xml code="1.0" encoding="utf-8"?>
    
    
    
    将此更改为:

    <?xml version="1.0" encoding="utf-8"?>
    
    
    

    请注意问题标题显示的是
    code=“1.0”
    而不是
    version=“1.0”

    如果您的应用程序与您的MainActivity同名,并且您尝试了eve,请尝试删除

    android:label=“MyMainActivity”


    标记Mainactivity,然后运行应用程序。这对我有效:)

    尝试删除taskArtifacts文件夹,使其无效,。。。什么都没用


    最终对我起作用的是强迫Gradle同步解决了我的问题。(刚刚在build.gradle中添加了一个空的新行,让它要求我同步,同步后它就工作了)。

    我遇到了完全相同的问题

    • 首先检查舱单
    • 然后检查你的gradle文件
    • 最后,可能值得检查“test”和“androidTest”java文件
    如果您不知道如何处理这些文件,请查看上面更完整的答案

  • 构建APK
  • 将其传输到设备
  • 安装它
  • 现在,您可以使用ADB安装相同的应用程序

  • 我也有同样的问题上述解决方案中没有一个对我有帮助,因此我发布了另一个解决方案,这对我有帮助

    当我在智能手机上“手动”删除我的应用程序时,问题出现了

    我去了设置->应用程序。我的应用程序中有“已安装但不适用于此用户”(或类似内容)
    解决方案是删除应用程序设置中的所有用户。(当我使用主菜单删除应用程序时,没有这样做)

    上述解决方案中没有一个对我有效,但这确实有效:

    重构包的名称,如下所示:

    com.name.examplename
    
    改为:

    com.name.examplename2
    
    使用包的新名称更改应用程序ID:

    applicationId "com.name.examplename2"
    
    最后,转到:

    文件>使缓存无效/重新启动


    等待android studio重新启动,再次运行您的应用程序并获得快乐

    检查您的清单文件。您将包名从
    com.mycompany.myapplication
    更改为
    com.mycompany.testapp
    ——修复您的清单。感谢您的评论。为什么我被否决了?项目中的任何地方都没有对com.mycompany.myapplication的引用,包括在AndroidManifest.xml中。还有其他想法吗?请尝试查看您的跑步配置,看看您是否在那里指定了它。谢谢,我已经检查了跑步配置。我刚在更改应用程序包名称后遇到此问题。重新启动Android Studio(即使缓存失效)也不起作用。还有其他想法吗?重新启动没有帮助,但重新导入项目有帮助。重新启动android studio对我也没有帮助。但“与gradle文件同步项目”是吗