![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Android
兴同学
这个作者很懒,什么都没留下…
展开
-
Android VerticalGridView 焦点选项居中
Android Tv Demo有个引导页,右侧是一个VerticalGridView,亮点在于其焦点始终位于大概中间位置。如下图那怎么实现这个功能呢?查看源码后找到了关键代码:mActionsGridView.setWindowAlignmentOffsetPercent(keylinePercent);mActionsGridView.setWindowAlignment(VerticalGridView.WINDOW_ALIGN_NO_EDGE);如果要完全居中,将keylinePercen原创 2021-04-29 15:12:09 · 1232 阅读 · 0 评论 -
Android TextView跑马灯
public class MarqueeTextView extends AppCompatTextView { private boolean isMarqueeEnable = false; public MarqueeTextView(Context context) { super(context); init(context); } public MarqueeTextView(Context context, @Nullabl.原创 2021-04-27 16:43:01 · 135 阅读 · 0 评论 -
Android 全局异常捕获
很简洁的Android 全局异常捕获使用方法public class AppApplication extends Application { @Override public void onCreate() { super.onCreate(); CrashCollector.attach(); }} 源代码public class CrashCollector { static Thread.UncaughtEx原创 2021-03-08 14:05:48 · 245 阅读 · 0 评论 -
Android gradle编译常用脚本
Gradle aar命名及输出脚本 libraryVariants.all { variant -> //修改产物输出路径 variant.getPackageLibrary().destinationDir = new File(project.rootDir.absolutePath + "/output")// if (variant.buildType.name == 'debug') { variant.outputs.all { out原创 2021-03-05 14:17:02 · 230 阅读 · 0 评论 -
Android excel文案转strings.xml多国语言
Android 适配多国语言时,需要将翻译好的文案导入Android工程,翻译文案大多以excel方式提供,本工具提供将excel表格的文案转成android需要的strings.xml。使用时需要根据excel表格的格式稍作修改下载链接...原创 2020-12-24 17:13:42 · 416 阅读 · 1 评论 -
Python将android strings.xml导出到excel
引言:做Android开发的时候要做国际化,需要将Android工程中的字符串资源导出到excel,让专业团队翻译。由于项目比较多,手动复制不现实,故使用python 将xml文件中对应的字符串解析到excel中。用法复制以下代码到python文件中,如string2excel.py, 添加可执行权限(mac 电脑 chmod +x string2excel.py),将所有要导出的strings.xml复制到string2excel.py同一目录下,执行./string2excel.py 就会在同级目录原创 2020-12-24 15:39:50 · 566 阅读 · 0 评论 -
Retrofit2上传文件到AWS S3预签名URL(Upload a file to AWS S3 pre-signed URL using Retrofit2)
引言 Retrofit + Okhttp 上传文件到亚马孙s3服务器场景:Android项目中有个上传日志的功能,后台会通过接口返回一个S3预签名的URL,我通过这个URL使用PUT上传文件。文件上传成功后,我在S3仓库拿到的文件打不开,明显是文件损坏。接口描述:获取一个S3上传文件签名, url签名调用时,使用[put]方法, body是文件二进制流代码分析网络请求框架是Retrofit + Okhttp方法-(文件上传成功后,我在S3仓库拿到的文件打不开,明显是文件损坏。)接口 /**原创 2020-11-19 11:08:29 · 480 阅读 · 0 评论 -
Android 绘制电池图标
效果图:代码public class BatteryView extends View { private int mMargin = 30; //电池内芯与边框的距离 private int mBoder = 20; //电池外框的宽带 private int mWidth = 700; //总长 private int mHeight = 400; //总高 private int mHeadWidth = 60; priva原创 2020-11-03 17:25:39 · 637 阅读 · 0 评论 -
Android 编译错误 Error: Invoke-customs are only supported starting with Android O (--min-api 26)
Android Studio编译报错:Error: Invoke-customs are only supported starting with Android O (–min-api 26)解决方案:build.gradle文件中android节点下增加: compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8原创 2020-10-28 10:22:19 · 244 阅读 · 0 评论 -
Android Studio 优先源码编译的framework.jar(使用系统隐藏的api)
引言场景:做系统开发或者想使用隐藏的api时,通常只能使用反射的方式,缺点:需要使用的api或变量太多时不方便使用。解决办法:将需要在编译时使用的jar包参与编译,不编译到产品apk里,使app运行时调用的是系统api步骤1、将jar包放入libs目录,如下图2、在app 的build.gradle加入参与编译的jardependencies { compileOnly files('libs/framework.jar')}3、调整 .iml里配置的引用库的优先级。原创 2020-10-27 17:57:22 · 1520 阅读 · 0 评论 -
android gradle复制apk
apply plugin: 'com.android.application'android { compileSdkVersion 30 defaultConfig { applicationId "com.android.androidstudy" minSdkVersion 21 targetSdkVersion 30 versionCode 1 versionName "1.0"原创 2020-09-08 16:51:51 · 492 阅读 · 0 评论 -
android Adb 发广播、查包名、切换输入法等指令
己查看列表的输入法内容adb shell ime list -s 设置输入法(如搜狗)adb shell ime set com.sohu.inputmethod.sogou.xiaomi/.SogouIME查看app版本(如com.android.google)adb shell pm dump com.android.google | grep "versionName"发广播adb shell am broadcast -a com.android.test --es test_原创 2020-09-08 16:33:55 · 857 阅读 · 0 评论 -
mac 电脑批量安装apk脚本
背景在android开发过程中,经常安装和卸载单个或多个app, 为了提高工作效率,写了个脚本用于自动安装app。环境mac 电脑脚本#! /bin/bashfor file in ./*do if test -f $file && [ "${file##*.}"x = "apk"x ] then echo 准备安装 $file adb install -r $file else echo $file 不是原创 2020-09-04 21:07:44 · 789 阅读 · 0 评论