记录点零碎的小知识点。
目录
中引用include中的控件
2.将文件复制到手机根目录中
string占位符
4.动态更改shape色值
5.查看apk签名文件信息
6.虚线
协程切换
8.使用gradle plugin版本高于4.2时,可能会自动开启资源优化
动态设置margin
移除点击效果
11.约束布局
12.请求体忽略字段
13.去掉字体内边距
查看当前界面activity名称
转apk
查看cup类型
查看jks公钥
18.查看依赖树
发送广播携带参数
20.下载不到远程库怎么办
中引用include中的控件
需要给include一个id,再通过这个id去拿里面的控件id。
<include
android:
layout="@layout/item_family_list" />
Databinding依赖
buildFeatures {
dataBinding = true
}
2.将文件复制到手机根目录中
adb push filePath/ /sdcard
string占位符
<string name="money">金额:%1$s</string>
填充:
(getString(),"100")
4.动态更改shape色值
if ( != null) {
( as GradientDrawable).apply {
(2, colorResId)//设置边框,width为像素
((colorResId))//设置填充色值
}
} else {
val drawable =
((.shape_stroke_corner8_blue) as GradientDrawable).apply {
(2, colorResId)//设置边框,width为像素
((colorResId))//设置填充色值
}
val d =
(drawable, d[1], d[2], d[3])
}
5.查看apk签名文件信息
keytool -printcert -jarfile
6.虚线
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:andro
android:shape="line">
<stroke
android:width="1dp"
android:color="#979797"
android:dashWidth="6dp"
android:dashGap="3dp" />
<size android:height="0.5dp" />
</shape>
协程切换
() {
var urlName :String?= null
withContext(){
delay(2000)
urlName = (, mRequest)
}
val mUrl = "${()}$urlName"
}
8.使用gradle plugin版本高于4.2时,可能会自动开启资源优化
开启资源优化后,资源名称被混淆,会导致补丁工具在生成补丁时一直卡在"开始构建补丁.....",无法正常解析apk包。解决方案:在 中新增=false,重新生成基线包和修复包,然后再生成补丁。
=false
动态设置margin
父布局为ConstraintLayout时,如果你想使用原布局中的布局参数,仅仅是想修改marginTop的值,那么可以这样做:
val params = as
val top = barHeight + barHeight / 2
(, top, , )
= params
父布局为LinearLayout时,改为线性布局对应的布局参数就可以了
移除点击效果
设置下面属性即可
app:tabRippleColor="@color/transparent"
11.约束布局
layout_constraintHorizontal_bias 水平偏移
layout_constraintVertical_bias 垂直偏移
当控件因为wrap_content,top_toTop及bottom_toTop导致的居中时,可以用偏移量改变控件位置
12.请求体忽略字段
@Transient
var selected: Boolean = false
13.去掉字体内边距
<item name="android:includeFontPadding">false</item><!-- 去掉字体内边距 -->
有时候UI设计师不会考虑字体自带的内边距,然而我们的字体基本都是有内边距的,所以我的想法是在app的主题中去掉字体内边距。
查看当前界面activity名称
查看activity:
adb shell dumpsys window windows | findstr "Current"
adb shell
dumpsys activity | grep -i run
mac有效:
adb shell "dumpsys window | grep mCurrentFocus"
查看fragment:
adb shell "dumpsys activity top | grep '#0: ' | tail -n 1"
转apk
示例:
java -jar bundletool-all-1.8. build-apks --bundle=/Users/xwk/Documents/谷歌上架/aab/ --output=/Users/xwk/Documents/谷歌上架/aab/ --ks=/Users/xwk/Documents/谷歌上架/aab/ --ks-pass=pass:123456 --ks-key-alias=xxx --key-pass=pass:123456
安装:
java -jar E:\BoundleTool\bundletool-all-1.11. install-apks --apks=D:\ProjectWork\ProjectWorkSurvaval2\SourceCode\APK\YouLoft\9.26\MountAndMagic9.
查看cup类型
adb shell getprop
查看jks公钥
keytool -importkeystore -srckeystore app/mxchip_bta.jks -destkeystore app/mxchip_bta.jks -deststoretype pkcs12
18.查看依赖树
./gradlew :app:dependencies --configuration compile
发送广播携带参数
adb shell am broadcast -a --es intentKey "intentValue"
20.下载不到远程库怎么办
解决思路: 直接去maven或者jitpack上去找源头,看看到底存在不存在,再看是否是下载资源问题 / /
找到后,再看对应的版本对不对。
需要下载jar或者aar包的话jitpack可以这么拼:
Central Repository: com/github/tencent/VasSonic/1.1