首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当获取徽章信息时,appium-uiautomator2-server-v0.1.8.apk‘退出代码1“

当获取徽章信息时,appium-uiautomator2-server-v0.1.8.apk‘退出代码1“
EN

Stack Overflow用户
提问于 2017-12-27 15:38:49
回答 1查看 1.8K关注 0票数 0

我正在尝试学习Appium,使用文档中给出的说明:

http://appium.io/docs/en/about-appium/getting-started/?lang=en

我已经将这些代码放入一个名为AppiumTest.js的文件中。

代码语言:javascript
复制
const wdio = require('webdriverio');

const opts = {
  port: 4723,
  desiredCapabilities: {
    platformName: "Android",
    platformVersion: "8.0",
    deviceName: "Pixel_API_26",
    app: "C:/Users/SStaple/AppData/Local/Android/Sdk/ApiDemos-debug.apk",
    automationName: "UiAutomator2"
  }
};

const client = wdio.remote(opts);

client
  .init()
  .click("~App")
  .click("~Alert Dialogs")
  .back()
  .back()
  .end();

在启动Appium之后,我将使用命令: node AppiumTest.js从Node.js命令提示符中运行它。运行Android 8模拟器也是必要的。

(Appium Server v1.7.1)

我在Appium Server窗口中得到一个输出。有许多错误。显示的第一个错误是:

代码语言:javascript
复制
Error "Command 'C\:\\Users\\SStaple\\AppData\\Local\\Android\\Sdk\\build-tools\\26.0.2\\aapt.exe d badging C\:\\Users\\SStaple\\AppData\\Local\\Programs\\appium-desktop\\resources\\app\\node_modules\\appium\\node_modules\\appium-uiautomator2-driver\\uiautomator2\\appium-uiautomator2-server-v0.1.8.apk' exited with code 1" while getting badging info

我尝试在命令提示符中单独运行此命令:

代码语言:javascript
复制
C:\Users\SStaple\AppData\Local\Android\Sdk\build-tools\26.0.2\aapt.exe d badging C:\Users\SStaple\AppData\Local\Programs\appium-desktop\resources\app\node_modules\appium\node_modules\appium-uiautomator2-driver\uiautomator2\appium-uiautomator2-server-v0.1.8.apk

我得到的结果是:

代码语言:javascript
复制
W/zipro   (13656): Error opening archive C:\Users\SStaple\AppData\Local\Programs\appium-desktop\resources\app\node_modules\appium\node_modules\appium-uiautomator2-driver\uiautomator2\appium-uiautomator2-server-v0.1.8.apk: Invalid file
ERROR: dump failed because no AndroidManifest.xml found

有什么想法吗?

更新28/12/2017 -我找到了解决方案!

案卷看上去很可疑。它的大小是0Kb!我从https://github.com/appium/appium-uiautomator2-server/releases下载了apk文件,并使用了该文件。这个是1,518 KB大小。(显然,在安装beta时,npm没有将apk文件放在正确的位置上存在一些问题。)

解决了这个问题后,我可以继续下一个问题了!

EN

回答 1

Stack Overflow用户

发布于 2017-12-28 08:56:07

这是一个带有apk签名的已知问题

您可以从尝试更新依赖项开始:

代码语言:javascript
复制
npm install appium-uiautomator2-driver
npm install appium-adb

如果没有帮助,您还可以尝试更多的方法(但对于Linux来说是这样):

修改./node-v6.11.4-linux-armv7l/lib/node_modules/appium/node_modules/appium-adb/build/lib/tools/apk-signing.js,这样即使它看起来没有签名,它也会返回一个true。

代码语言:javascript
复制
case 20: 
 context$1$0.prev = 20;
 context$1$0.t0 = context$1$0’catch’; 
 _loggerJs2[‘default’].debug(“App not signed with debug cert.”); 
 return context$1$0.abrupt(‘return’, true);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47994831

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档