android:testOnly="true"什么意思

android:testOnly="true" 这个标记原本是用来标记测试用的,所以带这个标记的包一般情况下是不能安装上的,需要使用特殊的方式安装.AS3.0.0默认会在我们run的时候在application节点添加这个属性,然后在安装时会给我们加上 -t flag,所以在自己安装的时候没有问题.

issue
AS run 出来的包在连接的测试机上可以安装,但是给其他人安装时就会有问题.而且是竟然可以上传到应用商城去,没有被拒绝,导致用户下载了却提示不能安装。GooglePlay是不允许上传标记为test的包的。

从 apk 的 manifest 中查看信息,多出了android:testOnly="true"

Android:安装时提示:INSTALL_FAILED_INSUFFICIENT_STORAGE

可能是/data下空间不足,安装了太多应用程序导致,可通过格式化手机处理,我的手机格式化在设置里的备份与格式化那里

linux 运行.sh出现 Permission denied 解决办法

原因:这个脚本没有执行权限
解决方法:  chmod +x run_experiments.sh
然后在运行就可以解决了
网上还有别的  sudo chmod -R 777  需要root 权限才可以。

如何知道自己的linux是64还是32位

通过getconf LONG_BIT命令,返回32就是32位,返回64就是64位

安卓UI线程

当应用启动,系统会创建一个主线程(main thread)。
这个主线程负责向UI组件分发事件(包括绘制事件),也是在这个主线程里,你的应用和Android的UI组件发生交互。
所以main thread也叫UI thread也即UI线程。

系统不会为每个组件单独创建线程,在同一个进程里的UI组件都会在UI线程里实例化,系统对每一个组件的调用都从UI线程分发出去。
结果就是,响应系统回调的方法(比如响应用户动作的onKeyDown()和各种生命周期回调)永远都是在UI线程里运行。

另外,Andoid UI toolkit并不是线程安全的,所以你不能从非UI线程来操纵UI组件。你必须把所有的UI操作放在UI线程里,所以Android的单线程模型有两条原则:
1.不要阻塞UI线程。
2.不要在UI线程之外访问Android UI toolkit(主要是这两个包中的组件:android.widget and android.view)。

https://blog.csdn.net/linjcai/article/details/81245418

查看安卓进程

// ps (英文全拼:process status)命令用于显示当前进程的状态,类似于 windows 的任务管理器
adb shell ps | findstr keyword

cmd 命令行执行命令输出内容太多,通过鼠标翻页看不完的解决办法

1. 在命令行后面加 | more,输出时第一页满时程序会暂停,单击“Enter”键显示下一行,单击“空格键”显示下一页。不能往回翻。

2. 将输出重定向到文件中:
命令 > out.txt:每次这次命令,文件内容会重写。
命令 >> out.txt :每次执行命令,输出内容会追加在out.txt文件末尾。

查看cpu使用情况:

输入命令:top -m 10 -s cpu(-m显示最大数量,-s 按指定行排序)

在这里插入图片描述

安卓日志查看

cmd
# 清除旧日志信息。
adb logcat -c
# 开始抓取日志,同时在手机上操作闪退步骤
adb logcat -v time >.//logcat1.log

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐