Appium自动化测试:通过appium的inspector功能无法启动app的原因

news2024/9/23 13:23:30

在打开appium-desktop程序,点击inspector功能,填写app的配置信息,启动服务提示如下:

报错信息:

An unknown server-side error occurred while processing the command. Original error: Cannot start the 'cc.knowyourself.kymeditation' application. Visit https://github.com/appium/appium/blob/master/docs/en/writing-running-appium/android/activity-startup.md for troubleshooting. Original error: Error executing adbExec. Original error: 'Command 'E:\\android-sdk-windows\\platform-tools\\adb.exe -P 5037 -s HBSBB18821510293 shell am start -W -n cc.knowyourself.kymeditation/.business.home.HomeActivity -S -a android.intent.action.MAIN -c android.intent.category.LAUNCHER -f 0x10200000' exited with code 4294967295'; Stderr: 'Security exception: Permission Denial: starting Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=cc.knowyourself.kymeditation/.business.home.HomeActivity } from null (pid=14487, uid=2000) not exported from uid 10152 java.lang.SecurityException: Permission Denial: starting Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=cc.knowyourself.kymeditation/.business.home.HomeActivity } from null (pid=14487, uid=2000) not exported from uid 10152 at com.android.server.am.ActivityStackSupervisor.checkStartAnyActivityPermission(ActivityStackSupervisor.java:2028) at com.android.server.am.ActivityStarter.startActivity(ActivityStarter.java:931) at com.android.server.am.ActivityStarter.startActivity(ActivityStarter.java:656) at com.android.server.am.HwActivityStarter.startActivity(HwActivityStarter.java:235) at com.android.server.am.ActivityStarter.startActivityMayWait(ActivityStarter.java:1492) at com.android.server.am.HwActivityStarter.startActivityMayWait(HwActivityStarter.java:430) at com.android.server.am.ActivityStarter.execute(ActivityStarter.java:597) at com.android.server.am.ActivityManagerService.startActivityAndWait(ActivityManagerService.java:5911) at com.android.server.am.ActivityManagerShellCommand.runStartActivity(ActivityManagerShellCommand.java:474) at com.android.server.am.ActivityManagerShellCommand.onCommand(ActivityManagerShellCommand.java:161) at android.os.ShellCommand.exec(ShellCommand.java:103) at com.android.server.am.ActivityManagerService.onShellCommand(ActivityManagerService.java:17786) at android.os.Binder.shellCommand(Binder.java:642) at android.os.Binder.onTransact(Binder.java:540) at android.app.IActivityManager$Stub.onTransact(IActivityManager.java:3570) at com.android.server.am.ActivityManagerService.onTransact(ActivityManagerService.java:3654) at com.android.server.am.HwActivityManagerService.onTransact(HwActivityManagerService.java:609) at android.os.Binder.execTransact(Binder.java:739)'; Code: '4294967295'

出现这样的错误一定是因为当前的appActivity设置的不是app首次进入的appActivity

解决方法:

获取首次应用的活动名称可以通过 启动一次随机 monkey命令来获取

adb shell monkey -p 包名 -v -v -v 1

在把上图中的包名和activity名称复制下来,放到inspector的app配置信息中,再次启动即可

Python接口自动化测试零基础入门到精通(2023最新版)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1228624.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【NI-DAQmx入门】频率测量

1.频率概述 时域表示给出了信号在采样时刻的幅度。 频率是指循环或周期事件的复现率,对于模拟或数字波形,信号周期的倒数就是频率。快速傅立叶变换 (FFT) 提供了一种检查频域关系的方法。傅里叶定理指出,时域中的任何波形都可以用正弦和余弦的…

【Flink】窗口(Window)

窗口理解 窗口(Window)是处理无界流的关键所在。窗口可以将数据流装入大小有限的“桶”中,再对每个“桶”加以处理。 本文的重心将放在 Flink 如何进行窗口操作以及开发者如何尽可能地利用 Flink 所提供的功能。 对窗口的正确理解&#xff…

【Django-DRF用法】多年积累md笔记,第3篇:Django-DRF的序列化和反序列化详解

本文从分析现在流行的前后端分离Web应用模式说起,然后介绍如何设计REST API,通过使用Django来实现一个REST API为例,明确后端开发REST API要做的最核心工作,然后介绍Django REST framework能帮助我们简化开发REST API的工作。 全…

Ps:变换

可以向选区、整个图层、多个图层或图层蒙版应用变换 Transform,还可以向路径、矢量形状、矢量蒙版、选区边界或 Alpha 通道应用变换。 若要变换栅格(像素)图像,建议先将其转换为智能对象,以便进行非破坏性的变换。 Ps菜…

【Flink】核心概念:并行度与算子链

并行度(Parallelism) 当要处理的数据量非常大时,我们可以把一个算子操作,“复制”多份到多个节点,数据来了之后就可以到其中任意一个执行。这样一来,一个算子任务就被拆分成了多个并行的“子任务”&#x…

计算机毕业设计 基于SpringBoot的健身房管理系统的设计与实现 Java实战项目 附源码+文档+视频讲解目录

博主介绍:✌从事软件开发10年之余,专注于Java技术领域、Python人工智能及数据挖掘、小程序项目开发和Android项目开发等。CSDN、掘金、华为云、InfoQ、阿里云等平台优质作者✌ 🍅文末获取源码联系🍅 👇🏻 精…

3-docker安装centos7

CentOS7.9下安装完成docker后,后续我们可以在其上安装centos7系统。具体操作如下: 1.以root用户登录CentOS7.9服务器,拉取centos7 images 命令: docker pull centos:centos7 2.加载centos7 images并登录验证 命令:…

Linux调试器---gdb的使用

顾得泉:个人主页 个人专栏:《Linux操作系统》 《C/C》 键盘敲烂,年薪百万! 一、gdb的背景 gdb,全称为GNU调试器(GNU Debugger),是一个功能强大的源代码级调试工具,主要…

【C++】【Opencv】霍夫直线检测即cv::HoughLinesP()函数详解和示例

cv::HoughLinesP()(函数霍夫直线)功能分析是一种用于检测图像中直线的算法,它基于霍夫变换的原理。通过该算法,我们可以从图像中提取出直线信息,从而对图像进行分析和处理。主要经理边缘检测和霍夫直线处理两个步骤。本…

【LeetCode刷题-树】--100.相同的树

100.相同的树 /*** Definition for a binary tree node.* public class TreeNode {* int val;* TreeNode left;* TreeNode right;* TreeNode() {}* TreeNode(int val) { this.val val; }* TreeNode(int val, TreeNode left, TreeNode right) {* …

C/C++统计数 2021年12月电子学会青少年软件编程(C/C++)等级考试一级真题答案解析

目录 C/C统计数 一、题目要求 1、编程实现 2、输入输出 二、算法分析 三、程序编写 四、程序说明 五、运行结果 六、考点分析 C/C统计数 2021年12月 C/C编程等级考试一级编程题 一、题目要求 1、编程实现 给定一个数的序列S,以及一个区间[L, R], 求序列…

Codeforces Round 910 (Div. 2)(D~F)

1898D - Absolute Beauty 题意:给定长度为n的数组a和b,定义b数组的价值为,现可以交换一次b数组中的任意两个元素,求b数组的价值最大值。 思路:绝对值问题可以放在数轴上去解决。绝对值即为区间长度 观察上述三种情况&…

认识.NET Aspire:高效构建云原生应用的利器

简介 在几天前的.NET 8发布会上,来自微软的Glenn Condron和David Fowler为我们演示了.NET Aspire,在Visual Studio的帮助下,它展现出了惊人的开发效率。 短短的十分钟内,David现场演示了如何轻松创建了一个具有服务发现&#xf…

汽车标定技术--A2L格式分析

目录 1.A2L由来 2.A2L格式 2.1 PROJECT 2.2 MODULE中包含的内容 3. INCA和CANape兼容吗? 最近有朋友用Vector ASAP2Editor编译的A2L文件在INCA7.4中无法识别,我记得以前做的时候是可以识别的,难不成最近有什么变动吗?出于好…

JavaScript的学习,就这一篇就OK了!(超详细)

目录 Day27 JavaScript(1) 1、JS的引入方式 2、ECMAScript基本语法 3、ECMAScript 基本数据类型​编辑 3.1 数字类型 3.2 字符串 3.3 布尔值 3.4 空值(Undefined和Null) 3.5 类型转换 3.6 原始值和引用值 4、运算符 5、流程控制语句 5.1 分…

云原生微服务-理论篇

文章目录 分布式应用的需求分布式架构治理模式演进ESB 是什么?微服务架构 MSA微服务实践细节微服务治理框架sidercar 什么是service mesh?康威定律微服务的扩展性什么是MSA 架构?中台战略和微服务微服务总体架构组件微服务网关服务发现与路由…

ps找不到msvcp140.dll怎么办?亲测5个有效的修复方法分享

运行Photoshop时提示找不到MSVCP140.dll,这是因为计算机MSVCP140.dll文件丢失或者损坏。msvcp140.dll是微软Visual C 2015运行库的一部分,它包含了许多用于支持C运行的函数和类。当我们在使用某些程序时,如果这个程序依赖于msvcp140.dll&…

【c++随笔13】多态

【c随笔13】多态 多态性(Polymorphism)在面向对象编程中是一个重要概念,它允许以统一的方式处理不同类型的对象,并在运行时动态确定实际执行的方法或函数。一、什么是多态性?1、关键概念:C的多态性2、多态定…

构造函数,原型对象,实例对象

1.构造函数、原型对象、实例对象三者分别是什么? 构造函数:用来创建对象的函数,创建实例对象的模板 。构造函数的函数名尽量首字母大写(为了区分普通函数和构造函数)原型对象:每一个函数在创建的时候,系统都会给分配一…

【Android Jetpack】DataStore的介绍

DataStore Jetpack DataStore是一种数据存储解决方案,允许您使用协议缓冲区存储键值对或类型化对象。DataStore使用Kotlin协程和Flow以异步、一致的事务方式存储数据。 注意:如果您需要支持大型或复杂数据集、部分更新或参照完整性,请考虑使…