2020-10-3

    科技2022-07-12  141

    设备端口卫浴新闻封面新闻青岛新闻墨迹天气影视大全备注自己手机√√√√×夜神模拟器√√√√×Android 4.2.2(API 17)5554可以扫描,退出不了Error type 3Error type 3Error type 3闪退卫浴新闻”可以单独打开,中间三个app未安装成功,“影视大全”安装成功闪退Android 6.0(API 23)55603Error type 3Error type 3Error type 3Error type 3后四个app均未安装成功,“卫浴新闻”可以单独打开Android 5.1.1(API 22)55623Error type 3Error type 3Error type 3Error type 3后四个app均未安装成功,“卫浴新闻”可以单独打开Android 7.0(API 24)5564闪退killing emulator,waitingkilling emulator,waitingkilling emulator,waitingkilling emulator,waiting可以启动模拟器,但是自带的app有的不可以使用Android 7.1.1(API 25)5566闪退同上同上同上同上同上Android 8.0.0(API 26)5568-----启动不了Android 7.1.1(API 25)——y25_arm5570-----启动不了

    Android 4.2.2(API 17)

    安装“卫浴新闻”

    安装“封面新闻”、“青岛新闻”

    错误信息:Error type 3

    begin exploring starting cn.thecover.www.covermedia/cn.thecover.www.covermedia.ui.activity.FlashActivity ** No activities found to run, monkey aborted. Starting: Intent { act=android.intent.action.MAIN cmp=cn.thecover.www.covermedia/.ui.activity.FlashActivity } Error type 3 Error: Activity class {cn.thecover.www.covermedia/cn.thecover.www.covermedia.ui.activity.FlashActivity} does not exist. QObject::~QObject: Timers cannot be stopped from another thread OK: killing emulator, bye bye Traceback (most recent call last): File "/home/yang/anaconda3/lib/python3.6/urllib/request.py", line 1318, in do_open encode_chunked=req.has_header('Transfer-encoding')) File "/home/yang/anaconda3/lib/python3.6/http/client.py", line 1239, in request self._send_request(method, url, body, headers, encode_chunked) File "/home/yang/anaconda3/lib/python3.6/http/client.py", line 1285, in _send_request self.endheaders(body, encode_chunked=encode_chunked) File "/home/yang/anaconda3/lib/python3.6/http/client.py", line 1234, in endheaders self._send_output(message_body, encode_chunked=encode_chunked) File "/home/yang/anaconda3/lib/python3.6/http/client.py", line 1026, in _send_output self.send(msg) File "/home/yang/anaconda3/lib/python3.6/http/client.py", line 964, in send self.connect() File "/home/yang/anaconda3/lib/python3.6/http/client.py", line 936, in connect (self.host,self.port), self.timeout, self.source_address) File "/home/yang/anaconda3/lib/python3.6/socket.py", line 724, in create_connection raise err File "/home/yang/anaconda3/lib/python3.6/socket.py", line 713, in create_connection sock.connect(sa) ConnectionRefusedError: [Errno 111] Connection refused During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/yang/anaconda3/lib/python3.6/site-packages/uiautomator/__init__.py", line 396, in wrapper return _method_obj(*args, **kwargs) File "/home/yang/anaconda3/lib/python3.6/site-packages/uiautomator/__init__.py", line 117, in __call__ result = urllib2.urlopen(req, timeout=self.timeout) File "/home/yang/anaconda3/lib/python3.6/urllib/request.py", line 223, in urlopen return opener.open(url, data, timeout) File "/home/yang/anaconda3/lib/python3.6/urllib/request.py", line 526, in open response = self._open(req, data) File "/home/yang/anaconda3/lib/python3.6/urllib/request.py", line 544, in _open '_open', req) File "/home/yang/anaconda3/lib/python3.6/urllib/request.py", line 504, in _call_chain result = func(*args) File "/home/yang/anaconda3/lib/python3.6/urllib/request.py", line 1346, in http_open return self.do_open(http.client.HTTPConnection, req) File "/home/yang/anaconda3/lib/python3.6/urllib/request.py", line 1320, in do_open raise URLError(err) urllib.error.URLError: <urlopen error [Errno 111] Connection refused> During handling of the above exception, another exception occurred: Traceback (most recent call last): File "driver5.py", line 91, in <module> main(*sys.argv[1:]) File "driver5.py", line 79, in main explore(device, metainfo) File "/home/yang/ndss16/plghost/plg/explore.py", line 346, in explore DevState(dev, androdev, appinfo).explore() File "/home/yang/ndss16/plghost/plg/explore.py", line 120, in explore self.explore_activity(activity) File "/home/yang/ndss16/plghost/plg/explore.py", line 132, in explore_activity self.load_hierarchy() File "/home/yang/ndss16/plghost/plg/explore.py", line 85, in load_hierarchy self.root = self.androdev.loadscene() File "/home/yang/ndss16/plghost/plg/androdevice.py", line 61, in loadscene self.d.wait.idle() File "/home/yang/anaconda3/lib/python3.6/site-packages/uiautomator/__init__.py", line 71, in __call__ return self.func(*args, **kwargs) File "/home/yang/anaconda3/lib/python3.6/site-packages/uiautomator/__init__.py", line 743, in _wait return self.server.jsonrpc.waitForIdle(timeout) File "/home/yang/anaconda3/lib/python3.6/site-packages/uiautomator/__init__.py", line 400, in wrapper server.start() File "/home/yang/anaconda3/lib/python3.6/site-packages/uiautomator/__init__.py", line 428, in start files = self.push() File "/home/yang/anaconda3/lib/python3.6/site-packages/uiautomator/__init__.py", line 372, in push self.adb.cmd("push", filename, "/data/local/tmp/").wait() File "/home/yang/anaconda3/lib/python3.6/site-packages/uiautomator/__init__.py", line 260, in cmd cmd_line = ["-s", self.device_serial()] + list(args) File "/home/yang/anaconda3/lib/python3.6/site-packages/uiautomator/__init__.py", line 273, in device_serial raise EnvironmentError("Device not attached.") OSError: Device not attached.

    预计解决方法: 用cmd 的 adb 命令可以解决,亲自试了一下,真的成功了!! adb uninstall 错误包名

    Android 6.0(API 23)

    错误信息:3

    ConnectionRefusedError: [Errno 111] Connection refused

    关闭防火墙(ubuntu下面的命令:sudo ufw disable);

    urllib.error.URLError: <urlopen error [Errno 111] Connection refused>

    在代码没有出错的情况下,需要一个代理,具体操作自行百度。 设置urllib的代理,代码如下。

    #设置代理 import urllib.request proxy_support = urllib.request.ProxyHandler({"http":"http://username:password@proxy:port","https":"https://username:password@proxy:port"}) opener=urllib.request.build_opener(proxy_support)urllib.request.install_opener(opener)

    username:代理地址登录的用户名 password:代理地址登录用户名的密码 proxy:代理地址(IP地址) port:代理地址的端口号

    OSError: RPC server not started!

    考虑uiautomator版本的问题

    具体错误:

    begin exploring starting com.dianxun.wyxw/com.dianxun.wyxw.WebViewActivity Starting: Intent { act=android.intent.action.MAIN cmp=com.dianxun.wyxw/.WebViewActivity } Traceback (most recent call last): File "/home/yang/anaconda3/lib/python3.6/urllib/request.py", line 1318, in do_open encode_chunked=req.has_header('Transfer-encoding')) File "/home/yang/anaconda3/lib/python3.6/http/client.py", line 1239, in request self._send_request(method, url, body, headers, encode_chunked) File "/home/yang/anaconda3/lib/python3.6/http/client.py", line 1285, in _send_request self.endheaders(body, encode_chunked=encode_chunked) File "/home/yang/anaconda3/lib/python3.6/http/client.py", line 1234, in endheaders self._send_output(message_body, encode_chunked=encode_chunked) File "/home/yang/anaconda3/lib/python3.6/http/client.py", line 1026, in _send_output self.send(msg) File "/home/yang/anaconda3/lib/python3.6/http/client.py", line 964, in send self.connect() File "/home/yang/anaconda3/lib/python3.6/http/client.py", line 936, in connect (self.host,self.port), self.timeout, self.source_address) File "/home/yang/anaconda3/lib/python3.6/socket.py", line 724, in create_connection raise err File "/home/yang/anaconda3/lib/python3.6/socket.py", line 713, in create_connection sock.connect(sa) ConnectionRefusedError: [Errno 111] Connection refused During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/yang/anaconda3/lib/python3.6/site-packages/uiautomator/__init__.py", line 396, in wrapper return _method_obj(*args, **kwargs) File "/home/yang/anaconda3/lib/python3.6/site-packages/uiautomator/__init__.py", line 117, in __call__ result = urllib2.urlopen(req, timeout=self.timeout) File "/home/yang/anaconda3/lib/python3.6/urllib/request.py", line 223, in urlopen return opener.open(url, data, timeout) File "/home/yang/anaconda3/lib/python3.6/urllib/request.py", line 526, in open response = self._open(req, data) File "/home/yang/anaconda3/lib/python3.6/urllib/request.py", line 544, in _open '_open', req) File "/home/yang/anaconda3/lib/python3.6/urllib/request.py", line 504, in _call_chain result = func(*args) File "/home/yang/anaconda3/lib/python3.6/urllib/request.py", line 1346, in http_open return self.do_open(http.client.HTTPConnection, req) File "/home/yang/anaconda3/lib/python3.6/urllib/request.py", line 1320, in do_open raise URLError(err) urllib.error.URLError: <urlopen error [Errno 111] Connection refused> During handling of the above exception, another exception occurred: Traceback (most recent call last): File "driver5.py", line 91, in <module> main(*sys.argv[1:]) File "driver5.py", line 79, in main explore(device, metainfo) File "/home/yang/ndss16/plghost/plg/explore.py", line 346, in explore DevState(dev, androdev, appinfo).explore() File "/home/yang/ndss16/plghost/plg/explore.py", line 120, in explore self.explore_activity(activity) File "/home/yang/ndss16/plghost/plg/explore.py", line 132, in explore_activity self.load_hierarchy() File "/home/yang/ndss16/plghost/plg/explore.py", line 85, in load_hierarchy self.root = self.androdev.loadscene() File "/home/yang/ndss16/plghost/plg/androdevice.py", line 61, in loadscene self.d.wait.idle() File "/home/yang/anaconda3/lib/python3.6/site-packages/uiautomator/__init__.py", line 71, in __call__ return self.func(*args, **kwargs) File "/home/yang/anaconda3/lib/python3.6/site-packages/uiautomator/__init__.py", line 743, in _wait return self.server.jsonrpc.waitForIdle(timeout) File "/home/yang/anaconda3/lib/python3.6/site-packages/uiautomator/__init__.py", line 400, in wrapper server.start() File "/home/yang/anaconda3/lib/python3.6/site-packages/uiautomator/__init__.py", line 440, in start raise IOError("RPC server not started!") OSError: RPC server not started! error: could not connect to TCP port 5560: Connection refused

    Android 7.0(API 24)

    安装“卫浴新闻”

    错误信息:

    begin exploring starting com.dianxun.wyxw/com.dianxun.wyxw.WebViewActivity Starting: Intent { act=android.intent.action.MAIN cmp=com.dianxun.wyxw/.WebViewActivity } // CRASH: com.dianxun.wyxw (pid 2067) // Short Msg: Native crash // Long Msg: Native crash: Aborted // Build Label: Android/sdk_phone_x86/generic_x86:7.0/NYC/4174735:userdebug/test-keys // Build Changelist: 4174735 // Build Time: 1499888857000 // *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** // Build fingerprint: 'Android/sdk_phone_x86/generic_x86:7.0/NYC/4174735:userdebug/test-keys' // Revision: '0' // ABI: 'x86' // pid: 2067, tid: 2067, name: om.dianxun.wyxw >>> com.dianxun.wyxw <<< // signal 6 (SIGABRT), code -6 (SI_TKILL), fault addr -------- // Abort message: '[FATAL:gpu_info_collector_android.cc(193)] failed to create a pbuffer surface for fetching driver strings. EGL_SUCCESS (3000) // ' // eax 00000000 ebx 00000813 ecx 00000813 edx 00000006 // esi ac74b58c edi ac74b534 // xcs 00000073 xds 0000007b xes 0000007b xfs 0000003b xss 0000007b // eip ac678424 ebp bfbfd108 esp bfbfd0ac flags 00200292 // // backtrace: // #00 pc ffffe424 [vdso:ac678000] (__kernel_vsyscall+16) // #01 pc 0007a00c /system/lib/libc.so (tgkill+28) // #02 pc 00075855 /system/lib/libc.so (pthread_kill+85) // #03 pc 0002782a /system/lib/libc.so (raise+42) // #04 pc 0001ee06 /system/lib/libc.so (abort+86) // #05 pc 02ac77e8 /system/app/webview/webview.apk (offset 0x801000) // Traceback (most recent call last): File "/home/yang/anaconda3/lib/python3.6/urllib/request.py", line 1318, in do_open encode_chunked=req.has_header('Transfer-encoding')) File "/home/yang/anaconda3/lib/python3.6/http/client.py", line 1239, in request self._send_request(method, url, body, headers, encode_chunked) File "/home/yang/anaconda3/lib/python3.6/http/client.py", line 1285, in _send_request self.endheaders(body, encode_chunked=encode_chunked) File "/home/yang/anaconda3/lib/python3.6/http/client.py", line 1234, in endheaders self._send_output(message_body, encode_chunked=encode_chunked) File "/home/yang/anaconda3/lib/python3.6/http/client.py", line 1026, in _send_output self.send(msg) File "/home/yang/anaconda3/lib/python3.6/http/client.py", line 964, in send self.connect() File "/home/yang/anaconda3/lib/python3.6/http/client.py", line 936, in connect (self.host,self.port), self.timeout, self.source_address) File "/home/yang/anaconda3/lib/python3.6/socket.py", line 724, in create_connection raise err File "/home/yang/anaconda3/lib/python3.6/socket.py", line 713, in create_connection sock.connect(sa) ConnectionRefusedError: [Errno 111] Connection refused During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/yang/anaconda3/lib/python3.6/site-packages/uiautomator/__init__.py", line 396, in wrapper return _method_obj(*args, **kwargs) File "/home/yang/anaconda3/lib/python3.6/site-packages/uiautomator/__init__.py", line 117, in __call__ result = urllib2.urlopen(req, timeout=self.timeout) File "/home/yang/anaconda3/lib/python3.6/urllib/request.py", line 223, in urlopen return opener.open(url, data, timeout) File "/home/yang/anaconda3/lib/python3.6/urllib/request.py", line 526, in open response = self._open(req, data) File "/home/yang/anaconda3/lib/python3.6/urllib/request.py", line 544, in _open '_open', req) File "/home/yang/anaconda3/lib/python3.6/urllib/request.py", line 504, in _call_chain result = func(*args) File "/home/yang/anaconda3/lib/python3.6/urllib/request.py", line 1346, in http_open return self.do_open(http.client.HTTPConnection, req) File "/home/yang/anaconda3/lib/python3.6/urllib/request.py", line 1320, in do_open raise URLError(err) urllib.error.URLError: <urlopen error [Errno 111] Connection refused> During handling of the above exception, another exception occurred: Traceback (most recent call last): File "driver5.py", line 91, in <module> main(*sys.argv[1:]) File "driver5.py", line 79, in main explore(device, metainfo) File "/home/yang/ndss16/plghost/plg/explore.py", line 346, in explore DevState(dev, androdev, appinfo).explore() File "/home/yang/ndss16/plghost/plg/explore.py", line 120, in explore self.explore_activity(activity) File "/home/yang/ndss16/plghost/plg/explore.py", line 132, in explore_activity self.load_hierarchy() File "/home/yang/ndss16/plghost/plg/explore.py", line 85, in load_hierarchy self.root = self.androdev.loadscene() File "/home/yang/ndss16/plghost/plg/androdevice.py", line 61, in loadscene self.d.wait.idle() File "/home/yang/anaconda3/lib/python3.6/site-packages/uiautomator/__init__.py", line 71, in __call__ return self.func(*args, **kwargs) File "/home/yang/anaconda3/lib/python3.6/site-packages/uiautomator/__init__.py", line 743, in _wait return self.server.jsonrpc.waitForIdle(timeout) File "/home/yang/anaconda3/lib/python3.6/site-packages/uiautomator/__init__.py", line 400, in wrapper server.start() File "/home/yang/anaconda3/lib/python3.6/site-packages/uiautomator/__init__.py", line 440, in start raise IOError("RPC server not started!") OSError: RPC server not started! error: could not connect to TCP port 5564: Connection refused

    安装“封面新闻”、“青岛新闻”、“墨迹天气”、“影像大全”

    错误信息:killing emulator,waiting

    info killing emulator-5564 QObject::~QObject: Timers cannot be stopped from another thread OK: killing emulator, bye bye - waiting for device -

    Android 7.1.1(API 25)

    错误信息同Android 7.0(API 24)

    重新复制扫描代码,从命令行启动安装好的安卓模拟器,之后启动程序进行扫描。

    #!/usr/bin/env python import sys import os import subprocess import logging from threading import Thread os.environ.__delitem__('ANDROID_HOME') os.environ.__setitem__('ANDROID_HOME','/home/yang/Android/Sdk/') os.environ.update() import plg.utils.androidutil as au import plg.utils.logcat as lc from plg.metadata import getmetadata from plg.explore import explore from plg.settings import LAUNCHER_PKG from plg.androdevice import run_monkey MAX_EMULATOR_WAIT = 120 # in seconds def finish(device): print('killing', device, file=sys.stderr) au.killemulator(device) def main(app): port = 5560 log = 'log.txt' device = 'emulator-{}'.format(port) au.init() print('launching', device, file=sys.stderr) # config logcat lc_file = log lc.clearlogcat(device) lc.logcat(lc_file, device) # file open/close is done by callee metainfo = getmetadata(app) # launch monkey to prevent straying and deal with ANRs t = Thread(target=run_monkey, args=(device, metainfo['name'])) t.daemon = True t.start() print('begin exploring') explore(device, metainfo) print('finish exploring') finish(device) if __name__ == '__main__': logging.basicConfig(level=logging.WARNING, stream=sys.stderr) main(*sys.argv[1:])

    扫描过程中遇到的问题:

    (re)starting adb server * daemon not running; starting now at tcp:5037 * daemon started successfully killing any emulators already present launching emulator-5560 - waiting for device - begin exploring starting com.dianxun.wyxw/com.dianxun.wyxw.WebViewActivity Starting: Intent { act=android.intent.action.MAIN cmp=com.dianxun.wyxw/.WebViewActivity } Traceback (most recent call last): File "driver5_1.py", line 61, in <module> main(*sys.argv[1:]) File "driver5_1.py", line 54, in main explore(device, metainfo) File "/home/yang/ndss16/plghost/plg/explore.py", line 346, in explore DevState(dev, androdev, appinfo).explore() File "/home/yang/ndss16/plghost/plg/explore.py", line 120, in explore self.explore_activity(activity) File "/home/yang/ndss16/plghost/plg/explore.py", line 171, in explore_activity not self.is_special_focus()) File "/home/yang/ndss16/plghost/plg/explore.py", line 95, in is_special_focus return len(self.stack[0]) > 1 IndexError: list index out of range
    Processed: 0.010, SQL: 8