You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Android TV SDK33新建项目启动失败:提示Activity类不存在

解决Android TV新项目启动报错:Activity类不存在

问题重现

新建未修改的Android TV项目(targetSdk/compileSdk均为33),启动时出现以下错误:

Error while executing: am start -n "com.example.myapplication/com.example.myapplication.MainActivity" -a android.intent.action.MAIN -c android.intent.category.LAUNCHER -D
Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.example.myapplication/.MainActivity }
Error type 3
Error: Activity class {com.example.myapplication/com.example.myapplication.MainActivity} does not exist.

Error while Launching activity
Failed to launch an application on all devices

已尝试清理Gradle缓存、Invalid Caches/Restart、重新构建项目,问题仍存在。

解决方案

  • 检查AndroidManifest.xml的Activity配置
    Android TV的启动Activity需要使用android.intent.category.LEANBACK_LAUNCHER而非手机端的LAUNCHER。确认MainActivity的intent-filter配置:

    <activity
        android:name=".MainActivity"
        android:exported="true">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LEANBACK_LAUNCHER" />
        </intent-filter>
    </activity>
    

    若配置为LAUNCHER,Android Studio尝试用该category启动时会找不到对应Activity。

  • 确认运行设备为Android TV类型
    普通手机模拟器/设备无法识别LEANBACK_LAUNCHER启动项,会导致AS自动切换用LAUNCHER启动。需使用Android TV模拟器或真实Android TV设备运行项目。

  • 检查应用ID一致性
    打开模块级build.gradle,确认defaultConfig中的applicationId与错误信息中的包名com.example.myapplication完全一致:

    defaultConfig {
        applicationId "com.example.myapplication"
        minSdk 21
        targetSdk 33
        // 其他配置
    }
    
  • 彻底卸载设备上的残留应用
    设备可能存在同名应用的缓存残留,执行adb命令彻底卸载后重新构建安装:

    adb uninstall com.example.myapplication
    

内容的提问来源于stack exchange,提问作者Meenakshi Khandelwal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.25 07:52:33