appetizerio / insights.py Goto Github PK
View Code? Open in Web Editor NEWAppetizerIO CLI for Mobile DevOps Development
Home Page: https://appetizer.io/
License: Apache License 2.0
AppetizerIO CLI for Mobile DevOps Development
Home Page: https://appetizer.io/
License: Apache License 2.0
多名用户报告插桩后的APP在4.4系列系统上闪退现象
Node.js is not installed and some functionality might not work properly
valid access token
not a valid APK
Node.js 已经安装了
D:\Appetizer\insights.py>git pull
remote: Counting objects: 6, done.
remote: Compressing objects: 100% (4/4), done.
remote: Total 6 (delta 4), reused 4 (delta 2), pack-reused 0
Unpacking objects: 100% (6/6), done.
From https://github.com/appetizerio/insights.py
fd5cc02..2599e57 master -> origin/master
Updating fd5cc02..2599e57
Fast-forward
insights.py | 2 ++
1 file changed, 2 insertions(+)
D:\Appetizer\insights.py>python3 insights.py login name password
Traceback (most recent call last):
File "insights.py", line 404, in <module>
sys.exit(main())
File "insights.py", line 400, in main
return args.func(args)
File "insights.py", line 97, in login
}, verify=False)
File "D:\Python36\lib\site-packages\requests\api.py", line 112, in post
return request('post', url, data=data, json=json, **kwargs)
File "D:\Python36\lib\site-packages\requests\api.py", line 58, in request
return session.request(method=method, url=url, **kwargs)
File "D:\Python36\lib\site-packages\requests\sessions.py", line 508, in request
resp = self.send(prep, **send_kwargs)
File "D:\Python36\lib\site-packages\requests\sessions.py", line 618, in send
r = adapter.send(request, **kwargs)
File "D:\Python36\lib\site-packages\requests\adapters.py", line 440, in send
timeout=timeout
File "D:\Python36\lib\site-packages\urllib3\connectionpool.py", line 595, in urlopen
self._prepare_proxy(conn)
File "D:\Python36\lib\site-packages\urllib3\connectionpool.py", line 816, in _prepare_proxy
conn.connect()
File "D:\Python36\lib\site-packages\urllib3\connection.py", line 284, in connect
conn = self._new_conn()
File "D:\Python36\lib\site-packages\urllib3\connection.py", line 141, in _new_conn
(self.host, self.port), self.timeout, **extra_kw)
File "D:\Python36\lib\site-packages\urllib3\util\connection.py", line 51, in create_connection
if host.startswith('['):
AttributeError: 'NoneType' object has no attribute 'startswith'`
linux平台ubunut16.04.2 该命令正常 也是Git pull下来的同版本insghts.py
12-04 16:10:52.289 5827 5827 W System.err: java.lang.NoSuchMethodException: overridePendingAppTransitionThumbFromLauncher [class android.graphics.Bitmap, int, int, boolean, boolean]
12-04 16:10:52.289 3326 3768 W WindowManager: android.view.InflateException: Binary XML file line #35: Binary XML file line #35: Error inflating class <unknown>
12-04 16:10:52.289 3326 3768 W WindowManager: Caused by: android.view.InflateException: Binary XML file line #35: Error inflating class <unknown>
12-04 16:10:52.289 3326 3768 W WindowManager: Caused by: java.lang.reflect.InvocationTargetException
12-04 16:10:52.289 3326 3768 W WindowManager: Caused by: java.lang.UnsupportedOperationException: Failed to resolve attribute at index 35: TypedValue{t=0x2/d=0x1010059 a=-1}
12-04 16:10:52.290 5827 5827 E Launcher: invoke overridePendingAppTransitionThumb failed, java.lang.NoSuchMethodException: overridePendingAppTransitionThumbFromLauncher [class android.graphics.Bitmap, int, int, boolean, boolean]
12-04 16:10:52.353 28008 28008 W System.err: java.lang.reflect.InvocationTargetException
12-04 16:10:52.354 28008 28008 W System.err: Caused by: java.lang.NullPointerException: Attempt to get length of null array
12-04 16:10:52.425 4355 4355 D PhoneStatusBarUtils: java.lang.NullPointerException: Attempt to invoke virtual method 'int android.graphics.drawable.Drawable.getIntrinsicWidth()' on a null object reference
12-04 16:10:52.486 4355 4355 D PhoneStatusBarUtils: java.lang.NullPointerException: Attempt to invoke virtual method 'int android.graphics.drawable.Drawable.getIntrinsicWidth()' on a null object reference
12-04 16:10:52.487 4355 4355 D PhoneStatusBarUtils: java.lang.NullPointerException: Attempt to invoke virtual method 'int android.graphics.drawable.Drawable.getIntrinsicWidth()' on a null object reference
12-04 16:10:52.520 28008 28008 W System.err: -----------UncaughtException(Base)------------
12-04 16:10:52.520 28008 28008 W System.err: java.lang.NullPointerException: Attempt to invoke virtual method 'void com.tencent.server.fore.e.ys(int)' on a null object reference
12-04 16:10:52.600 4355 4355 D PhoneStatusBarUtils: java.lang.NullPointerException: Attempt to invoke virtual method 'int android.graphics.drawable.Drawable.getIntrinsicWidth()' on a null object reference
12-04 16:10:52.814 28008 28036 W System.err: -----------UncaughtException(Base)------------
12-04 16:10:52.814 28008 28036 W System.err: java.lang.NullPointerException: Attempt to invoke virtual method 'meri.pluginsdk.l com.tencent.server.base.g.xU(int)' on a null object reference
12-04 16:10:53.090 28060 28060 W System.err: java.lang.reflect.InvocationTargetException
12-04 16:10:53.090 28060 28060 W System.err: Caused by: java.lang.NullPointerException: Attempt to get length of null array
12-04 16:10:53.159 4355 4355 D PhoneStatusBarUtils: java.lang.NullPointerException: Attempt to invoke virtual method 'int android.graphics.drawable.Drawable.getIntrinsicWidth()' on a null object reference
12-04 16:10:53.269 4355 4355 D PhoneStatusBarUtils: java.lang.NullPointerException: Attempt to invoke virtual method 'int android.graphics.drawable.Drawable.getIntrinsicWidth()' on a null object reference
12-04 16:10:55.756 4355 4355 D PhoneStatusBarUtils: java.lang.NullPointerException: Attempt to invoke virtual method 'int android.graphics.drawable.Drawable.getIntrinsicWidth()' on a null object reference
12-04 16:10:56.048 5827 5827 W System.err: java.lang.NoSuchMethodException: overridePendingAppTransitionThumbFromLauncher [class android.graphics.Bitmap, int, int, boolean, boolean]
12-04 16:10:56.048 5827 5827 E Launcher: invoke overridePendingAppTransitionThumb failed, java.lang.NoSuchMethodException: overridePendingAppTransitionThumbFromLauncher [class android.graphics.Bitmap, int, int, boolean, boolean]
12-04 16:10:56.896 28103 28103 W System.err: java.lang.reflect.InvocationTargetException
12-04 16:10:56.897 28103 28103 W System.err: Caused by: java.lang.NullPointerException: Attempt to get length of null array
12-04 16:10:56.913 5827 5875 E BitmapFactory: Unable to decode stream: java.io.FileNotFoundException: /oem/etc/theme/icons/dynamic_icon/com.vivo.weather/res/drawable-sw360dp-xxhdpi/dynamic_weather_overcast.png (No such file or directory)
12-04 16:10:56.916 5827 5875 E BitmapFactory: Unable to decode stream: java.io.FileNotFoundException: /oem/etc/theme/icons/dynamic_icon/com.vivo.weather/res/drawable-sw360dp-xxhdpi/dynamic_weather_degree.png (No such file or directory)
12-04 16:10:56.918 5827 5875 E BitmapFactory: Unable to decode stream: java.io.FileNotFoundException: /oem/etc/theme/icons/dynamic_icon/com.vivo.weather/res/drawable-sw360dp-xxhdpi/dynamic_weather_minus.png (No such file or directory)
12-04 16:10:56.937 28103 28103 W System.err: -----------UncaughtException(Base)------------
12-04 16:10:56.938 28103 28103 W System.err: java.lang.NullPointerException: Attempt to invoke virtual method 'void com.tencent.server.fore.e.ys(int)' on a null object reference
12-04 16:10:57.553 28103 28127 W System.err: -----------UncaughtException(Base)------------
12-04 16:10:57.553 28103 28127 W System.err: java.lang.NullPointerException: Attempt to invoke virtual method 'meri.pluginsdk.l com.tencent.server.base.g.xU(int)' on a null object reference
12-04 16:11:00.020 5827 5875 E BitmapFactory: Unable to decode stream: java.io.FileNotFoundException: /oem/etc/theme/icons/dynamic_icon/com.android.BBKClock/res/drawable-sw360dp-xxhdpi/clock_hour.png (No such file or directory)
12-04 16:11:00.022 5827 5875 E BitmapFactory: Unable to decode stream: java.io.FileNotFoundException: /oem/etc/theme/icons/dynamic_icon/com.android.BBKClock/res/drawable-sw360dp-xxhdpi/clock_minute.png (No such file or directory)
12-04 16:11:00.024 5827 5875 E BitmapFactory: Unable to decode stream: java.io.FileNotFoundException: /oem/etc/theme/icons/dynamic_icon/com.android.BBKClock/res/drawable-sw360dp-xxhdpi/clock_dial.png (No such file or directory)
12-04 16:11:00.030 5827 5875 E BitmapFactory: Unable to decode stream: java.io.FileNotFoundException: /oem/etc/theme/icons/dynamic_icon/com.android.BBKClock/res/drawable-sw360dp-xxhdpi/clock_dial_center.png (No such file or directory)
insights.py版本:最新
python版本:3.5.4
os版本:10.13.3 (17D102)
操作命令:python insights.py analyze apk_appetizer_processed.apk -s xxx --clear
命令返回信息如下:
Android Debug Bridge version 1.0.39
Version 0.0.1-4500957
Installed as /data/android-sdk-macosx/platform-tools/adb
valid access token: xxx
0. harvest and compress device logs
/sdcard/io.appetizer/com.....client.log: 1 file pulled. 24.1 MB/s (8148846 bytes in 0.322s)
1. request analysis from the server
{'success': True, 'key': 'xxx', 'token': 'xxx'}
2. upload log files
pkg: com......client
log file: com......client.log.zip
uploading......
3. server analyzing
waiting...... server is downloading log
waiting...... server is downloading log
waiting...... server is uploading the report
waiting...... server is uploading the report
server has generated and uploaded the report
4. cleanup
All done! You can now view the report via Appetizer Desktop
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void io.appetizer.c.a.i()' on a null object reference
I need test app on TV,but the device doesn't have sdcard slot,so I modify DEVICE_LOG_BASE = '/sdcard/io.appetizer/'
to DEVICE_LOG_BASE = '/data/misc/konka/io.appetizer/'
,and chmod 777 io.appetizer
.
after install the processed apk, it doesn't log into the dir, and continuously print D/io.appetizer: no permission, still save into memory
on logcat.
ps: I reset DEVICE_LOG_BASE = '/sdcard/io.appetizer/'
and use U Disk it doesn't work either
现在自动化集成过程,就差不能下载报告,可以支持吗?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.