Android开发
xzy2046
Where is my Answer??
展开
-
Android修改系统语言(DatePicker等组件显示的语言不对,该怎么办)
private void updateLocale() { try { Locale locale = getResources().getConfiguration().locale; if (locale == Locale.SIMPLIFIED_CHINESE) { //常量比较 return;...原创 2019-11-18 19:04:04 · 1060 阅读 · 0 评论 -
Android Studio升级1.0 现有程序 build.gradle配置文件更新
1.gradle插件版本更新: dependencies {- classpath 'com.android.tools.build:gradle:0.8.+'+ classpath 'com.android.tools.build:gradle:1.0.0' } zipStorePat原创 2015-01-29 20:23:46 · 977 阅读 · 0 评论 -
Android 5.0 通讯录sort_key不可用
官方提交如下:https://android.googlesource.com/platform/packages/providers/ContactsProvider/+/a6a9fa802d1b56c206c670ca1d313bc64effcb5d%5E!/commita6a9fa802d1b56c206c670ca1d313bc64effcb5d原创 2015-01-20 19:17:14 · 875 阅读 · 0 评论 -
自定义可点击 富文本组件
zz: http://www.cnblogs.com/luction/p/3645210.html有的时候可能想在TextView中添加一些图片,比如下图,发短信输入联系人时,要把联系人号码换成一个图片,但这个图片无法用固定的某张图,而是根据内容进行定制的,这更像一个view。 当然,如果你不是view而是固定的图片,比如发信息时用表情图片替代特殊符号,那么实现起来会转载 2015-08-25 21:08:58 · 919 阅读 · 0 评论 -
Alpha百分比对应表
HexOpacity Values100% — FF95% — F290% — E685% — D980% — CC75% — BF70% — B365% — A660% — 9955% — 8C50% — 8045% — 7340% — 6635% — 5930% — 4D25% — 4020% — 3315% — 26原创 2015-04-26 11:11:14 · 2077 阅读 · 0 评论 -
Android通过build.gradle配置应用版本等信息
android { compileSdkVersion Integer.parseInt(System.properties['compileSdkVersion']) buildToolsVersion System.properties['buildToolsVersion']可以读取整个项目的gradle.properties中定义的值:systemP原创 2015-08-25 21:06:41 · 863 阅读 · 0 评论 -
Android 开发技巧 (资源文件篇)
Android开发中有一些容易被忽略的小技巧,本文是日常开发中的一些心得。tip 1.tools命名空间xmlns:tools="http://schemas.android.com/tools"AndroidStudio和ADT都支持实时显示xml布局效果,tools命名空间下的属性就是用来帮助实时加载显示效果的。常用的如tools:text<RelativeLayou原创 2015-04-24 09:19:56 · 1119 阅读 · 0 评论 -
Android获得文件所在文件夹名称
new File(path).getParentFile().getName();原创 2015-10-21 16:31:18 · 829 阅读 · 0 评论 -
git删除远程分支
git branch -r -d origin/branch-name原创 2015-10-13 10:35:08 · 457 阅读 · 0 评论 -
Android6.0权限适配实践
Android6.0权限适配实践概要判断是否需要请求权限如何请求权限如何部分请求权限处理权限请求回调关于“自定义提示”的说明问题一:获取权限后进入设置取消权限再回到应用的问题问题二:勾选“不再询问”的说明判断是否需要请求权限关于权限申请,第一手的资料可以查看官方文档:http://developer.android.com/intl/zh-cn/training/permission原创 2015-12-23 13:41:20 · 5184 阅读 · 0 评论 -
Android自动化测试之UIAutomator(一)
Android程序开发迭代周期短,测试case重复度高,大部分case属于功能验证,常规的测试方法是测试人员按照预先写好的Case手顺进行测试,人工比对操作结果和预期结果。这种测试手段重复度高,效率低,无趣,易出错,并且对测试人员能力提升帮助有限。Android手机机型狂多,屏幕尺寸各异,语言各异,因此测试重复度很高,完全依赖人力并不现实。同时自动化测试可以方便的整合入Jenkins等CI工具,可以覆盖掉相当部分的UI正确性检测。原创 2014-09-14 13:55:42 · 6561 阅读 · 0 评论 -
Android可动态改变compoundDrawable颜色的TextView
常常可以看到,许多应用的TabItem都是以Icon+Text的形式存在,例如微信,京东。当tabItem被置为selected状态的时候,icon和文字的颜色会发生变化。如下图所示:对于这种图片+文字的排版方式我们可以通过一个TextView实现 <TextView android:drawableTop="@draw原创 2016-03-01 14:15:03 · 2409 阅读 · 0 评论 -
Battery Historian 环境搭建
项目地址https://github.com/google/battery-historian安装方式Docker 或者通过go 编译。README 中 Docker使用的镜像地址国内使用不了。可以使用第三方镜像,但是版本一般都很老,不靠谱。建议自行在本地编译。或者直接使用下面这个现成服务:https://bathist.ef.lc/...原创 2018-03-28 21:44:33 · 664 阅读 · 0 评论 -
在Android上使用libgdx-box2d物理引擎
前言相比Ios UiKit原生支持物理引擎,Android确实麻烦的不要不要。为什么用 libgdxAndroid上最方便的方案是jbox2D,缺点是在java层实现,物理多了之后性能很卡。笔者近期没有测试,11年左右在里程碑1上使用的时候那是巨卡无比。libgdx的物理引擎其实是封装的native版本box2D,在满足性能需求的同时,避免了开发JNI的烦恼,对于java程序员来说目...原创 2019-04-10 11:32:51 · 1006 阅读 · 0 评论 -
Android 有checkbox时Activity启动默认不显示输入法。
网上很多资料说要放一个空的Linearlayout,完全是在误导大众,正确的方法如下: Android Manifest对Activity做如下设置:android:windowSoftInputMode="stateHidden"原创 2015-01-10 12:00:45 · 1160 阅读 · 0 评论 -
LinearLayout显示分割线(Divider)
Android LinearLayout显示分割线有两种方式:1.使用一个宽/高为1dp的View: android:layout_width="match_parent" android:layout_height="1dp" android:background="#FF0000" />2.直接使用LinearLayout的divider属性:原创 2014-12-20 18:39:49 · 7923 阅读 · 0 评论 -
Android Maven打包批量替换资源文件(overlay换皮肤)&AAR打包依赖模块覆盖策略
1.AAR打包覆盖主module(APK)会将AAR中同名资源覆盖:策略如下:资源文件例如图片,layout是采用覆盖方式。values文件例如strings.xml是采用合并方式。有依赖的模块只能采用aar进行打包,例如ui库等二方库。建议将所有模块共同的resource资源放到通用module中,并且建立相应的命名机制,防重复。原创 2014-10-31 14:26:44 · 3214 阅读 · 0 评论 -
Android App性能优化(一)之布局优化
当创建复杂布局的时候,我们会在xml 文件中添加大量的ViewGroup和View。伴随着每次迭代,View树的层次越来越深,界面加载速度越来越慢,消耗的内存也越来越多。当您的程序出现加载时短暂黑屏或横竖切换时短暂黑屏,抑或如内存溢出(OOM)之类的问题时,没准您的程序需要优化了。 那么如何让程序运行速度更快?响应更敏捷?优化布局是一个最基本的方法,本文将介绍最基本的优化布局方法。原创 2014-09-14 13:42:44 · 674 阅读 · 0 评论 -
Android多语言适配--语言缩写
http://en.wikipedia.org/wiki/List_of_ISO_639-1_codeshttp://en.wikipedia.org/wiki/ISO_3166-1http://www.xue5.com/Mobile/Android/682477.html原创 2014-09-14 13:52:48 · 886 阅读 · 0 评论 -
Android Lint分类及常见错误
Android Developer:ADT 提供了代码检查工具,可以帮助你检查代码规范,下面是一些相关说明: 常见类型:一, Correctness:Messeges(1)字符串国际化不完全(2)国际化的字符串,在默认位置(default locale),没有定义 二,Correctness(1)Xml中view的id重名(2)代码中使用转载 2014-09-15 12:55:04 · 523 阅读 · 0 评论 -
ANDROID开发实用小工具
分享一些 Android开发中的实用小工具,你有发现好工具吗? 来这里分享一下呗一、find bugs 静态检查工具http://findbugs.sourceforge.net/FindBugs 是一个静态分析工具,它检查类或者 JAR 文件,将字节码与一组缺陷模式进行对比以发现可能的问题。有了静态分析工具,就可以在不实际运行程序的情况对软件进行分析详情请参考转载 2014-09-15 10:07:44 · 496 阅读 · 0 评论 -
Android常用String 式样
zz:http://henzil.easymorse.com/?p=174 目前用到的有以下几点:加粗字体 斜体字体 给字体加下划线\n 换行\u0020表示空格\u2026表示省略号使用<b>和<b>来打印出这样的文字;“<”表示“使用textView.setText(Html.fromHtml转载 2014-09-15 13:09:19 · 504 阅读 · 0 评论 -
Android 下载源码指定仓库 指定branch source
Android version和branch都很多,有时候需要下载多个分支的代码进行比对,可以通过-b 的方式下载. 例如:git clone https://android.googlesource.com/platform/packages/apps/Launcher2 -b ics-mr1-release如果要不知道Android有那些分支可以用原创 2014-09-15 13:11:00 · 744 阅读 · 0 评论 -
如何解决:ANDROID中 ERROR GENERATING FINAL ARCHIVE: DEBUG CERTIFICATE EXPIRED ON 10/09/18 16:30 的错误
问题概述:在导入一个app后提示如下错误:“Error generating final archive: Debug Certificate expired on 10/09/18 16:30”原因分析:android要求所有的程序必须有签名,否则就不会安装该程序。在我们开发过程中,adt使用debug keystore,在 preference->and原创 2014-09-15 19:28:16 · 508 阅读 · 0 评论 -
Android设置壁纸的几种方案
Android设置壁纸有许多方法,主要思路有两种:1:通过WallpaperManager设置2:通过系统程序设置下文将分开说明:通过WallpaperManager设置该方法可以直接将图片置为壁纸,对于所有平台的Android系统都使用,但无法裁剪/调整图片。try { WallpaperManager wpm = (WallpaperManager) g原创 2014-09-28 14:18:38 · 12253 阅读 · 0 评论 -
Android Maven 打包注意事项
最近项目中使用Maven进行打包,坑略多,记录如下:1.支持AAR格式library要求android mav原创 2014-10-26 15:44:17 · 904 阅读 · 0 评论 -
ListView优化新玩法,打造易维护,高性能,快速开发的ListView
如果让你实现一个如下图所示的复杂的ListView你会怎么设计?没准你会先继承一个BaseAdapter,实现其中的getView()方法,通过getViewTypeCount(),getItemViewType(int position)等方法在getView()中添加一大堆if...else...语句块,生成对应Type的View。当然,可能你还会想起ValueHolder模式,为每种Type定制一个ValueHolder对象,让性能大幅提升,也让代码大幅增加。到最后这个自定义的BaseAdap原创 2014-09-30 11:18:07 · 2156 阅读 · 2 评论 -
Android EditText输入最大值提示功能
有时,我们会对EditText添加最大长度限制,在EditText达到输入上限时阻止继续输入并弹出提示。这个问题看似简单,但很难处理的完美。由于EditText无法拦截软件盘事件,常规的通过TextWatcher,OnKeyListener,等方法都会存在一定的问题。经过反复试错,终于发现以下方案:1.实现一个InputFilter,在InputFilter中判断输入长度,并弹原创 2014-10-11 21:00:10 · 2981 阅读 · 0 评论 -
Android时间获取与使用
编写Android网络程序时难免会遇到手机时间不准确的问题,本文总结了一些常用的时间获取与校正方法:转载请注明:http://blog.csdn.net/xzy20461.获取本机当前时间: Time local = new Time(); local.set(System.currentTimeMillis()); mLocalTim原创 2014-11-15 16:12:59 · 3553 阅读 · 0 评论 -
Android动态setId,避免id重复
当一个布局中Add了两个id相同的控件时,通过findVIewById会出现错误。解决方法如下:1.通过 View的generateViewId()方法获取一个可用 id.在手动进行setId.需要API LEVEL 17API LEVEL 17以下可以直接使用该函数的代码:public static int generateViewId() {原创 2014-10-31 14:34:47 · 8631 阅读 · 0 评论 -
Android Screen size说明
关于screen 的一些参数说明如下,App的开发者可以关注一下。 1.screen sizesmall: >426px * 320pxnormal: >480px * 320pxlarge: > 640px * 480pxxlarge: >960 * 720 2.screen ratioratio : (4:3原创 2014-09-15 10:09:03 · 1555 阅读 · 0 评论