0%

今天工作的时候调整了项目的编码,发现run窗口报错后全部是乱码,而且不可恢复

解决方法:在studio64.exe.vmoptions加入-Dfile.encoding=UTF-8,搞定

阅读全文 »

早上起来发现莫名其妙的项目无法构建了

某些情况下,aidl文件内有中文注释会影响aidl的构建,造成无法生成文件

解决方法:取消所有的中文注释

阅读全文 »

减少moudle的使用,这样可以减少构建其他项目时间

减少lint检查项

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
lintOptions {
// 设置为 true,则当 Lint 发现错误时停止 Gradle 构建
abortOnError false
// 设置为 true,则当有错误时会显示文件的全路径或绝对路径 (默认情况下为true)
absolutePaths true
// 仅检查指定的问题(根据 id 指定)
check
// 设置为 true 则检查所有的问题,包括默认不检查问题
checkAllWarnings false
// 设置为 true 后,release 构建都会以 Fatal 的设置来运行 Lint。
// 如果构建时发现了致命(Fatal)的问题,会中止构建(具体由 abortOnError 控制)
checkReleaseBuilds false
// 检查指定的问题(根据 id 指定)
// enable
// 在报告中是否返回对应的 Lint 说明
explainIssues false
// 写入报告的路径,默认为构建目录下的 lint-results.html
// htmlOutput file("lint-report.html")
// 设置为 true 则会生成一个 HTML 格式的报告
// htmlReport false
// 设置为 true 则只报告错误
ignoreWarnings true
// 重新指定 Lint 规则配置文件
// lintConfig file("default-lint.xml")
// 设置为 true 则错误报告中不包括源代码的行号
noLines true
// 设置为 true 时 Lint 将不报告分析的进度
quiet true
// 覆盖 Lint 规则的严重程度,例如:
// severityOverrides["MissingTranslation": LintOptions.SEVERITY_WARNING]
// 设置为 true 则显示一个问题所在的所有地方,而不会截短列表
showAll true
// 配置写入输出结果的位置,格式可以是文件或 stdout
// textOutput 'stdout'
// 设置为 true,则生成纯文本报告(默认为 false)
// textReport false
// 设置为 true,则会把所有警告视为错误处理
warningsAsErrors false
// 写入检查报告的文件(不指定默认为 lint-results.xml)
// xmlOutput file("lint-report.xml")
// 设置为 true 则会生成一个 XML 报告
// xmlReport false
// 将指定问题(根据 id 指定)的严重级别(severity)设置为 Fatal
fatal 'NewApi', 'InlineApi'
// 将指定问题(根据 id 指定)的严重级别(severity)设置为 Error
error 'Wakelock', 'TextViewEdits'
// 将指定问题(根据 id 指定)的严重级别(severity)设置为 Warning
warning 'ResourceAsColor'
// 将指定问题(根据 id 指定)的严重级别(severity)设置为 ignore
ignore 'All'
// true--忽略有错误的文件的全/绝对路径(默认是true)
absolutePaths false
// 关闭指定问题检查
disable 'All'
}

增加内存,开启预编译类库

1
2
3
4
5
6
7
dexOptions {
preDexLibraries true
maxProcessCount 8
// Instead of setting the heap size for the DEX process, increase Gradle's
// heap size to enable dex-in-process. To learm more, read the next section.
javaMaxHeapSize "4g"
}
阅读全文 »

安装

npm install -g @ionic/cli

卸装

npm uninstall -g ionic

新建项目

ionic start projectName <mode>tabs

运行项目

ionic serve

添加android环境

ionic capacitor add android

阅读全文 »

1
Default method desugaring of `com.hj.pos.android.base.BaseAdapter` failed because its super class `androidx.recyclerview.widget.RecyclerView$Adapter` is missing

无法找到RecyclerView,但是它确实存在,改用引入项目,依赖就好了,具体原因待查

阅读全文 »

To only hide the status bar:

只隐藏状态栏

1
adb shell settings put global policy_control immersive.status=*

To only hide the navigation bar:

只隐藏导航栏

1
adb shell settings put global policy_control immersive.navigation=*

To hide both status and nav bar:

隐藏状态栏和导航栏

1
adb shell settings put global policy_control immersive.full=*

Return things to normal:

阅读全文 »

首先,最重要的,签完不要在官网下载,太慢了

好用的镜像 http://mirrors.sohu.com/
1
2
3
4
mysql-community-server-5.7.28-1.el7.x86_64.rpm
mysql-community-common-5.7.28-1.el7.x86_64.rpm
mysql-community-client-5.7.28-1.el7.x86_64.rpm
mysql-community-libs-5.7.28-1.el7.x86_64.rpm
安装上传工具
1
yum install lrzsz
安装一个rpm包:

用法:rpm -ivh rpm_name

参数解释:

-i(install):安装软件包。
-v(verbose):显示安装的过程信息。可视化。
-h(hash):软件安装的时候列出哈希标记。即显示安装进度。
另外在安装一个rpm包时常用的附带参数有:
–force : 强制安装,即使覆盖属于其他包的文件也要安装
–nodeps : 当要安装的rpm包依赖其他包时,即使其他包没有安装,也要安装这个包。

安装mysql
阅读全文 »

am这个指令是 activity manager的缩写。这个命令可以启动Activity、打开或关闭进程、发送广播等操作。

am命令格式如下

adb shell am

  1. start [options]
    根据Intent 启动Activity
    options参数如下:
    -D:开启debug模式
    -W:等待启动完成
    --start-profiler:将profiler中的结果输出到指定文件中
    -P:和–start-profiler一样,区别在于,在app进入idle状态时profiler结束
    -R : 重复启动Activity,但每次重复启动都会关闭掉最上面的Activity
    -S:关闭Activity所属的App进程后再启动Activity
    --opengl-trace:开启OpenGL tracing
    --user :使用指定的用户来启动activity,如果不输入,则使用当前用户执行
    INTENT参数参见附录1:
    命令样例:
    1
    2
    3
    4
    5
    6
    7
    8
    //使用Action方式打开系统设置-输入法设置
    adb shell am start -a android.settings.INPUT_METHOD_SETTINGS

    //使用组件名方式启动照相机功能
    adb shell am start -n com.android.camera/.Camera

    //打开拨号界面,并传递一个DATA_URI数据给拨号界面
    am start -a android.intent.action.CALL -d tel:10086
  2. startservice [options]
    根据Intent 启动Service
    options参数如下:
    --user :使用指定的用户来启动activity,如果不输入,则使用当前用户执行
    INTENT参数参见附录1:
    命令样例:
    1
    2
    //使用ComponentName 方式启动一个Service
    adb shell am startservice com.some.package.name/.YourServiceSubClassName
  3. force-stop
    关闭指定包名的应用程序
    命令样例:
    1
    adb shell am force-stop com.some.package
  4. kill [options]
    杀死与应用程序的包名称相关联的所有进程。该命令只会杀死安全的进程,不会影响用户体验。
    options参数如下:
    --user :使用指定的用户来启动activity,如果不输入,则使用当前用户执行
    命令样例:
    1
    adb shell am kill com.some.package
  5. kill-all
    杀死全部的后台进程
    命令样例:
    1
    adb shell am kill-all
  6. broadcast [options]
    发送一个广播
    options参数如下:
    --user :使用指定的用户来启动activity,如果不输入,则使用当前用户执行
    命令样例:
    1
    2
    //恢复出厂设置的方法,会清除内存所有内容(慎重测试!!!!)
    adb shell am broadcast -a android.intent.action.MASTER_CLEAR
  7. instrument [options]
    启动对instrument实例的监视
    options参数如下:
    -r: 以原始形式输出测试结果。该选项通常是在性能测试时与-e perf true一起使用。
    -e : 提供了以键值对形式存在的测试选项。格式一般为 -e [, …].
    -p : 将profiling数据写入制定的文件
    -w: 保持adb shell打开直至测试完成
    --no-window-animation:关闭运行时window动画
    --user :使用指定的用户来启动activity,如果不输入,则使用当前用户执行
    命令样例:
    1
    adb shell am instrument -w com.android.phone.tests/com.android.phone.runners.FunctionalTestRunner
  8. profile start
    开始收集目标进程运行过程中的函数调用关系
    其中PROCESS是所要收集的进程,直接用进程号即可, FILE是收集后trace所在的文件,一般直接放在/sdcard 目录 下,所以直接用/sdcard/文件名 即可。
    命令样例:
    1
    adb shell am profile start 17495 /mnt/sdcard/profile.txt
    9、profile stop
    其中PROCESS是所要收集的进程,直接用进程号即可
    停止收集目标进程运行过程中的函数调用关系
    命令样例:
    1
    adb shell am profile stop 17495
  9. dumpheap [options]
    将指定进程号的堆信息输出到指定的文件中
    options参数如下:
    --user :使用指定的用户来启动activity,如果不输入,则使用当前用户执行
    -n: 直接存储原始堆信息,而不是系统管理后的堆信息
    命令样例:
    1
    adb shell am dumpheap -n 17495 /mnt/sdcard/dumpheap.txt
  10. set-debug-app [options]
    设置特定包名的应用程序开启debug
    options参数如下:
    -w: 等待应用程序启动
    --persistent: 持久化
    命令样例:
    1
    adb shell am set-debug-app -w com.some.package
  11. clear-debug-app
    取消设置debug状态的应用程序
    命令样例:
    1
    adb shell am clear-debug-app
  12. monitor [options]
    监视Crash 或者ANR错误
    options参数如下:
    --gdb: 在给定的端口上启动gdbserv监控crash/ANR错误.
    命令样例:
    1
    adb shell am monitor
  13. screen-compat [on|off]
    开启或关闭指定package的屏幕兼容模式
    命令样例:
    1
    adb shell am screen-compat on com.some.package
  14. display-size [reset|]
    重写模拟器/设备显示大小。这个命令是有帮助的测试你的应用程序在不同的屏幕大小,通过模仿一个小屏幕分辨率,使用一个大屏幕的设备,反之亦然。
    命令样例:
    1
    adb shell am display-size 1280x800
  15. display-density
    重写模拟器/设备显示密度。该命令有助于测试你的应用程序在不同的屏幕密度对高密度屏幕环境,使用低密度屏幕,反之亦然。
    命令样例:
    1
    adb shell am display-density 480
  16. to-uri
    将intent转换为Uri
    命令样例:
    1
    adb shell am to-uri -a android.settings.INPUT_METHOD_SETTINGS
  17. to-intent-uri
    将intent转换为intent:Uri
    命令样例:
    1
    adb shell am to-intent-uri -a android.settings.INPUT_METHOD_SETTINGS

    附录1:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    -a <ACTION>
    intent action, 例如 "android.intent.action.VIEW".
    -d <DATA_URI>
    intent data URI, 例如 "content://contacts/people/1".
    -t <MIME_TYPE>
    intent MIME type, 例如 "image/png".
    -c <CATEGORY>
    intent category, 例如 "android.intent.category.APP_CONTACTS".
    -n <COMPONENT>
    指定组件名称以包名称前缀来创建一个Intent, 例如 "com.example.app/.ExampleActivity".
    -f <FLAGS>
    在intent 中添加 flags, Java代码中对应的是 Intent.setFlags().
    --esn <EXTRA_KEY>
    添加 a null extra. 这个参数不支持 URI intents.
    -e|--es <EXTRA_KEY> <EXTRA_STRING_VALUE>
    添加一个 string 数据,数据结构是键值对
    --ez <EXTRA_KEY> <EXTRA_BOOLEAN_VALUE>
    添加一个 boolean 数据,数据结构是键值对
    --ei <EXTRA_KEY> <EXTRA_INT_VALUE>
    添加一个 int 数据,数据结构是键值对
    --el <EXTRA_KEY> <EXTRA_LONG_VALUE>
    添加一个 long 数据,数据结构是键值对
    --ef <EXTRA_KEY> <EXTRA_FLOAT_VALUE>
    添加一个 float 数据,数据结构是键值对
    --eu <EXTRA_KEY> <EXTRA_URI_VALUE>
    添加一个 URI data 数据,数据结构是键值对
    --ecn <EXTRA_KEY> <EXTRA_COMPONENT_NAME_VALUE>
    添加一个组件的名称, 这个属性将会被转换成 ComponentName 对象进行传递.
    --eia <EXTRA_KEY> <EXTRA_INT_VALUE>[,<EXTRA_INT_VALUE...]
    添加一个int数组
    --ela <EXTRA_KEY> <EXTRA_LONG_VALUE>[,<EXTRA_LONG_VALUE...]
    添加一个long数组
    --efa <EXTRA_KEY> <EXTRA_FLOAT_VALUE>[,<EXTRA_FLOAT_VALUE...]
    添加一个floats数组
    --grant-read-uri-permission
    包含 flag值 FLAG_GRANT_READ_URI_PERMISSION.
    --grant-write-uri-permission
    包含 flag值 FLAG_GRANT_WRITE_URI_PERMISSION.
    --debug-log-resolution
    包含 flag值 FLAG_DEBUG_LOG_RESOLUTION.
    --exclude-stopped-packages
    包含 flag值 FLAG_EXCLUDE_STOPPED_PACKAGES.
    --include-stopped-packages
    包含 flag值 FLAG_INCLUDE_STOPPED_PACKAGES.
    --activity-brought-to-front
    包含 flag值 FLAG_ACTIVITY_BROUGHT_TO_FRONT.
    --activity-clear-top
    包含 flag值 FLAG_ACTIVITY_CLEAR_TOP.
    --activity-clear-when-task-reset
    包含 flag值 FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET.
    --activity-exclude-from-recents
    包含 flag值 FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS.
    --activity-launched-from-history
    包含 flag值 FLAG_ACTIVITY_LAUNCHED_FROM_HISTORY.
    --activity-multiple-task
    包含 flag值 FLAG_ACTIVITY_MULTIPLE_TASK.
    --activity-no-animation
    包含 flag值 FLAG_ACTIVITY_NO_ANIMATION.
    --activity-no-history
    包含 flag值 FLAG_ACTIVITY_NO_HISTORY.
    --activity-no-user-action
    包含 flag值 FLAG_ACTIVITY_NO_USER_ACTION.
    --activity-previous-is-top
    包含 flag值 FLAG_ACTIVITY_PREVIOUS_IS_TOP.
    --activity-reorder-to-front
    包含 flag值 FLAG_ACTIVITY_REORDER_TO_FRONT.
    --activity-reset-task-if-needed
    包含 flag值 FLAG_ACTIVITY_RESET_TASK_IF_NEEDED.
    --activity-single-top
    包含 flag值 FLAG_ACTIVITY_SINGLE_TOP.
    --activity-clear-task
    包含 flag值 flag FLAG_ACTIVITY_CLEAR_TASK.
    --activity-task-on-home
    包含 flag值 FLAG_ACTIVITY_TASK_ON_HOME.
    --receiver-registered-only
    包含 flag值 FLAG_RECEIVER_REGISTERED_ONLY.
    --receiver-replace-pending
    包含 flag值 FLAG_RECEIVER_REPLACE_PENDING.
    --selector
    必须使用 -d 和 -t 参数 来设置intent 数据和类型.
    <URI> <COMPONENT> <PACKAGE>
    直接指定URI、组件名、包名方式启动Activity是无法使用上述选项的,当参数不合法时,am命令默认的识别方式是,URI方式需要包含":";组件名方式是包含"/";其他的格式,am命令默认识别为包名方式。
阅读全文 »

问题

最近遇到AS文件指向错误,明明一个java文件,打开却是项目的xml配置

解决

只有删除.user/AS****/system
阅读全文 »