adb安装我的应用程序后,我可以验证它是否有adb shell pm list packages AppName:

package:air.com.client.AppName

所以我知道它在那里,但是当我尝试使用adb shell启动它时,启动-a android.intent.action.MAIN -n air.com.client / .AppName,我收到此错误:

Starting: Intent { cmp=air.com.client/.AppName}

Error type 3

Error: Activity class {air.com.client/air.com.client.AppName} does not exist.

如果重要的话,正如您可能已经注意到的那样,这是一个打包为Android应用程序的AIR应用程序.有任何想法吗?我在某处错过了什么吗?当我使用aapt dump xmltree时,我可以看到我的.apk在intent-filter节点中包含了一个android.intent.action.MAIN条目,这是值得的.

最后,为了理智,使用相同的命令模板,我可以启动设置应用程序,没有任何问题:

adb shell am start -a android.intent.action.MAIN -n com.android.settings/.Settings

解决方法:

注意applicationIdSuffix !!

在build.gradle中使用applicationIdSuffix时,后缀仅适用于您的应用程序ID,而不适用于生成的.apk中的实际包结构,这意味着以较短的方式引用您的活动(.MainActivity,而不是使用其完全限定名称)将添加应用程序ID后缀也是活动的路径,因此AS将无法找到它.例如.:

我的应用程序的包名是my.application.package,我在app模块的build.gradle中有这个:

buildTypes {

someBuildType {

[...]

applicationIdSuffix ".dev"

}

}

在尝试执行时,让我们从命令行说出“MainActivity”(位于根包中):

$adb shell am start -n my.application.package.dev/.MainActivity

实际上解决了

$adb shell am start -n my.application.package.dev/my.application.package.dev.MainActivity

但是MainActivity实际上位于my.application.package.MainActivity中,而不是my.application.package.dev.MainActivity中,因为applicationIdSuffix只更改应用程序ID,而不是实际的包结构,因此无法找到它.

因此,您应该使用活动的完全限定名称:

$adb shell am start -n my.application.package.dev/my.application.package.MainActivity

标签:android,adb,air

来源: https://codeday.me/bug/20191001/1839174.html

Android adb启动错误,使用adb shell启动Android应用程序时出现错误“活动类不存在”...相关推荐

  1. 正确解决:FTP文件夹错误,将文件复制到FTP服务器时发生错误。请检查是否有权限将文件放到该服务器上。

    目录 Win10上传文件到Linux服务器报错: 正确解决方式: Win10上传文件到Linux服务器报错: FTP文件夹错误,将文件复制到FTP服务器时发生错误.请检查是否有权限将文件放到该服务器上 ...

  2. 应用程序错误电脑黑屏_电脑运行程序出现APPCRASH错误的三种解决方法

    好多小伙伴说电脑在运行程序时出现appcrash错误,导致软件无法正常运行,其实电脑是很复杂的程序代码设计的,遇到一些奇怪的问题也不奇怪,系统运行程序出现APPCRASH错误,很多新手用户都不知道怎么 ...

  3. Citrix XenApp 6.0 发布应用程序时 ICO 错误的解决方法

    XenApp 6.0在测试运行中发现某些应用程序发布过程中出现ICO错误信息,而无法进行下去.如下图 这个信息显示我发布应用程序 MindManager 9时,出现ICO格式错误信息.点击继续,下一步 ...

  4. 怎么找不到JAVA9_在Java 9上运行应用程序时获取错误“找不到模块”:log4j.core

    [INFO] ---------------------------------------------- --------------- [ERROR] /C:/Users/sumit.garg/w ...

  5. c语言出现了语法错误能编译吗,如何调试C程序的语法错误和逻辑错误

    如何调试C程序的语法错误和逻辑错误 语法错误] 语法错误,这是C语言初学者出现最多的错误,比如,分号":"是每个C语句的结束的标志,在C语句后忘记写":"就是语 ...

  6. 问题:当运行exe程序时遇到错误0000007时如何解决

    这里我是需要用的一个DDS库安装程序,但是经过一系列安装操作后,最后一步验证是否成功时出现了问题: 点击 该exe应用程序提示:应用程序错误0xc000007b 给出我使用后成功了的解决方法: 首先下 ...

  7. keil v5中下载程序时遇到错误:NO ULINK2/ME Device found

    在使用keil v5中使用J-LINK连接STM32F407ZE时,下载程序时, 遇到错误:NO ULINK2/ME Device found 点击确定后又会弹出:Error: 点一下魔术棒 然后&q ...

  8. matlab输入指令错误怎么修改,在MATLAB中运行程序时,显示错误: 此上下文中不允许函数定义。 怎么修改?...

    点击查看在MATLAB中运行程序时,显示错误: 此上下文中不允许函数定义. 怎么修改?具体信息 答:MATLAB程序运行错误后,切换到MATLAB命令行中,观察命令行中的错误信息,确定错误原因. 1. ...

  9. ftp上传显示服务器错误,FTP文件夹错误:打开FTP服务器上的文件夹时发生错误

    问题描述:通过我的电脑或资源管理器连接FTP服务器时提示"FTP文件夹错误:打开FTP服务器上的文件夹时发生错误.请检查是否有权限访问该文件夹.详细信息:The operation time ...

最新文章

  1. 华为麒麟990发布!余承东:全球首款旗舰5G SoC,业界最强手机AI算力,友商还都是PPT...
  2. //随机生成1位大写字母\小写字母\数字
  3. 牛客网在线编程java_NowCoder
  4. php 监听 扫描枪,jquery监听扫码枪获得值
  5. (王道408考研操作系统)第二章进程管理-第一节4:进程通信(配合Linux)
  6. linux sftp目录无法切换,linux – SFTP用户无法编辑或创建文件
  7. Matlab之函数绘图函数ezplot
  8. 计算机制图基本知识6,机械制图及计算机绘图教案.doc
  9. 【大规模MIMO学习笔记】大规模MIMO的信道特点
  10. 基于python下django框架 实现校园排课选课系统详细设计
  11. 计算机地图制图pdf,2计算机地图制图的数据基础.ppt
  12. 程序员的幽默笑话(深意爆笑)
  13. VMware虚拟机多开克隆教程
  14. 无人机监控交通流量实时传输路况智慧交通系统说明
  15. rd授权管理器不显示服务器,2008 r2 找不到RD授权管理器
  16. mysql contact 函数_mysql concat函数用法举例
  17. 计算机3d影视的应用程序,计算机3D技术在电影中的应用
  18. 【MD】高等数学常用符号
  19. 【微信公众号VUEh5获取展示微信内置地图(gcj02)转为百度地图】
  20. CSS3-transform变形功能

热门文章

  1. 通过atan实现atan2函数
  2. 诚之和:首个俄罗斯太空电影摄制组准备返回地球
  3. 知识图谱(KG)存储、可视化、公开数据集、图计算、图编程工具分享
  4. 【周志华机器学习】绪论
  5. 元宇宙岗位薪资排行榜,出炉!
  6. 位运算与位运算的常见用法
  7. OpenCart中文开源建站 | 系统界面更新对比(第 1 期)
  8. python怎么查看安装了哪些库
  9. 丘成桐大学生数学竞赛数学物理
  10. vi 编辑器进入后无法退出