- 博客(33)
- 资源 (12)
- 收藏
- 关注
原创 Android Studio(或Intellij Idea)保存时自动格式化代码(Save Actions)
背景: 团队多个人提交代码时,应保持代码格式统一。每次提交的时候,都需要格式化,否则代码样式就不一样,如果有人格式化,有人不格式化,当对比代码变更时,就非常困难。以前Eclipse里是有保存自动格式化的功能的,但是AndroidStudio里没有。解决方案:1.下载插件“Save Actions”2.进入Settings,找到Other Settings里的“Save A...
2018-09-30 15:57:31 9737 1
原创 Android Studio编译失败: java.util.concurrent.ExecutionException: com.android.ide.common.process.Process
Android Studio编译报错:java.util.concurrent.ExecutionException: com.android.ide.common.process.ProcessException: Error while executing process D:\android\sdk\build-tools\26.0.2\aapt.exe with arguments {...
2018-09-27 13:51:34 2330
原创 Android Studio编译失败:对findViewById的引用不明确
Android Studio编译报错: 错误: 对findViewById的引用不明确 Activity 中的方法 findViewById(int) 和 AppCompatActivity 中的方法 <T>findViewById(int) 都匹配 其中, T是类型变量: T扩展已在方法 <T>findViewById(int)中声明的View...
2018-09-27 12:37:19 9024 4
原创 Android Studio编译失败:java.util.concurrent.ExecutionException: com.android.ide.common.process.ProcessEx
Android Studio编译报错: java.util.concurrent.ExecutionException: com.android.ide.common.process.ProcessException: Error while executing process D:\android\sdk\build-tools\26.0.2\aapt.exe with argumen...
2018-09-27 10:41:05 1123
原创 Dialog无法显示图片问题及解决方案
问题现象: Dialog里的图片(控件为ImageView),显示不出来。解决办法: 调用的activity需要继承自AppCompatActivity,而不是Activity。原因: 经过debug发现,是AppCompatActivity的onCreate方法中执行了如下代码导致的差异,但真正原因待查。AppCompatDelegate delegate ...
2018-09-26 17:56:07 3664
原创 Android Studio编译失败:java.util.concurrent.ExecutionException: com.android.ide.common.process.ProcessEx
Android Studio编译报错:java.util.concurrent.ExecutionException: com.android.ide.common.process.ProcessException: Error while executing process D:\android\sdk\build-tools\26.0.2\aapt.exe with arguments {...
2018-09-26 17:32:55 1636
原创 Android Studio编译失败:org.gradle.api.tasks.TaskExecutionException: Execution failed for task
Android Studio编译报错:* Exception is: org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':app:transformClassesWithDexForDebug'. at org.gradle.api.internal.tasks.execu...
2018-09-26 15:45:37 21897 5
原创 Android Studio编译失败:org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':app:proc
问题描述: Android Studio 编译报错,但是看不到具体的问题: org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':app:processDebugManifest'. at org.gradle.api.internal.tasks.execution.Exe...
2018-09-25 20:02:45 3369 2
原创 设置git提交时的用户名和邮箱
1.全局设置(对所有git工程都有效) 设置用户名:git config --global user.name 用户名 设置邮箱: git config --global user.email 邮箱2.对特定工程设置(要在命令行中切换到特定工程目录下执行) 设置用户名:git config user.name 用户名 设置邮箱: git conf...
2018-09-21 09:03:17 5635
原创 android 7.0调用相机闪退问题
背景: 在安卓7.0手机上,调用系统相机拍照,结果出现闪退。原因: Android7.0中为了提高私有文件的安全性,禁止向你的应用外公开 file:// URI。 如果一项包含文件 file:// URI类型 的 Intent 离开你的应用,应用失败,并出现 FileUriExposedException 异常。解决方案: public void openCame...
2018-09-20 19:56:26 1085
原创 通过webview跳转应用市场
背景: 安卓app中通过webview打开H5页面,H5页面里支持进行app应用更新检查,如果有新的版本,需要跳转到市场。解决方案: 在shouldOverrideUrlLoading方法中对market开头的url进行拦截处理:webView.setWebViewClient(new com.tencent.smtt.sdk.WebViewClient() { ...
2018-09-19 17:40:10 2635
原创 支持为EditText指定任意字体大小的Hint
背景: 1. 按照设计师指定在EditText中要显示的Hint太长了,导致无法显示完整(hint内容:取现最低限额100元),效果图如下: 2. EditText不支持设置hint的字体大小(只能和输入框字体一致),后来在网上找到通过SpannableString设置hint,就能指定字体大小了。代码如下:/** * 设置EditText的hin...
2018-09-19 12:47:31 548
原创 使用 Android Support Annotations避免方法调用时传参错误
背景: 项目中有一个公用类,支持设置View的背景,第二个入参是颜色。public static void setBackgroundColor(View view, int color) { view.setBackgroundColor(color);} 1. 初次使用时,使用了如下的传参方式,直接将color的资源id传入了,但是却发现显示出来的颜色不...
2018-09-14 12:56:41 554
原创 android项目修改包名后R资源文件无法生成
背景: 因之前项目包名命名不对,需要修改,但是修改后,项目的R资源就生成不了。编译也报错: 错误: 程序包com.cxyzy.androidutils.R不存在解决方法:1.修改AndroidManifest.xml中package2.修改build.gradle文件中defaultConfig下的applicationId(如果没有,需要增加一下这个字段)...
2018-09-13 11:07:27 3148 1
原创 一分钟集成支付宝(安卓)
背景: 项目中需要集成支付宝支付。支付宝官方有集成指导,网上也有一些指导文档,但是总是感觉有些啰嗦,所以整理一片极简对接指导文档,目的在于立刻完成支付宝集成。(至于高级玩法,请参考官方文档)集成步骤(直接上代码):关键代码MainActivity.java,(含调用支付宝支付和处理支付结果),完整代码见附录github地址:package com.jmcnsoft.too...
2018-09-13 09:11:10 451
原创 读取Manifest文件中的meta-data
背景: 集成友盟时,需要在manifest文件中设置channel。腾讯乐固支持加固后生成多渠道包,需要验证一下其最终生成的多渠道包中友盟的channel设置是否正确。 <application> <meta-data android:name="UMENG_CHANNEL" android:value="umen...
2018-09-11 09:15:24 1407
原创 RecyclerView图片显示乱序
问题描述: 在一个RecyclerView列表界面,部分数据带有图片,部分不带有(不带时应该显示默认图)。第一次显示的时候正常,拉到其他页显示,也正常。但是下拉刷新之后,原先没有图片的,就变成有图片了。 第一次显示:第二次显示(下拉刷新后),问题点:第五条本来是没有图片的,但是却显示了图片,而且是其他行的图片。推测: 因为RecyclerView里,会复用...
2018-09-10 20:16:10 1362
原创 设置EditText的hint字体大小
背景: EditText能设置hint的颜色,但是却不能设置hint的字体大小,导致hint的字体和text的字体是一样的。但有时hint较长,需要把字体缩小。解决方案:/** * 设置EditText的hint字体大小 * * @param editText EditText控件 * @param hintText hint内容 ...
2018-09-10 14:19:12 2399
原创 一分钟集成美团Walle多渠道打包
背景: 为了区分不同应用市场下载的包,对用户展开细分运营分析,需要对apk区分出不同的渠道。本文介绍集成美团Walle的具体实践步骤。集成方法:1.修改项目根目录下build.gradle文件,在buildscripts下的dependencies中增加: classpath 'com.meituan.android.walle:plugin:1.1.6'2.修改ap...
2018-09-10 12:51:42 1889
原创 几种退出安卓应用的方式:返回桌面,弹出退出确认框,连续两次返回键退出
介绍: 在各家app的退出机制中,一般如三种退出机制:退回桌面(实际并没有退出),弹出退出确认框,连续两次返回键退出。实现方案:1.退回桌面Kotlin代码: override fun onBackPressed() { goBackToDesktop() } /** * 用户在主界面,按返回键直接返回桌面,而不退出 ...
2018-09-07 18:17:02 2016
原创 Toast调整显示位置
背景: Toast默认显示在界面底部,因这位置在部分界面会遮挡界面元素,故需要调整位置。解决方案:1.显示在顶部private void showToast(Context context,String text) { Toast toast = Toast.makeText(context,text,Toast.LENGTH_SHORT); ...
2018-09-07 17:58:04 9304
原创 安卓通过Parcelable传值失败解决方案及原理分析
问题描述: 在项目中,需要从一个Activity传值到另一个Activity,因为涉及参数较多,所以定义一个Parcelable对象来传值。但是结果接收的地方没有获取到。 代码如下(代码做了简化): public String title;public void writeToParcel(Parcel dest, int flags) { dest.write...
2018-09-06 18:58:56 1415
原创 ConstraintLayout中依赖的控件为GONE时,如何保持距离
背景: 在ConstraintLayout中,如果设置了一个控件(A)依赖于另一个控件(B),当控件B设置为GONE时,A控件的位置就会发生变化。为了保持适当的效果,需要设置此种情况下A控件相对于父控件的距离。解决方案: 通过如下属性设置依赖控件为GONE时相对父控件的距离: 1 layout_goneMarginStart 2 layo...
2018-09-06 16:58:15 12407 1
原创 gson解析长整形数问题
问题描述: 服务器端返回一个json字符串,里面有一个长整形(如1536061697),当采用Gson的fromJson函数解析之后,却变成了科学记数法形式(1.536061697E9)。 原始代码:String json = "{\"time\":1536061697,\"name\":\"test\"}";Map<String, Object> map = gs...
2018-09-05 09:03:58 769
原创 安卓编译Release版本
背景: 一般在Android Studio里编译出来的是Debug,那如何编译Release版本呢?解决方案: 访问菜单"Build">"Select Build Variant...",选择“release”,再运行即可(注意:如果左侧导航栏是Project视图,则需要选中app工程,否则Select Build Variant菜单是灰的) ...
2018-09-04 19:26:40 1414
原创 规范安卓模块内资源命名,避免多模块打包出现资源冲突
背景: 当前越来越多的安卓项目内模块越来越多,出现资源冲突的概率大大增加,为了避免资源冲突,一般需要为每个模块指定一个资源前缀。但是这个是非强制的,约束力较低。解决方案: 在模块的build.gradle文件中增加资源前缀约束定义,如:“resourcePrefix "me_"”android { compileSdkVersion 28 reso...
2018-09-04 19:20:37 2278
原创 集成微信支付
1.build.gradle文件中增加:compile 'com.tencent.mm.opensdk:wechat-sdk-android-with-mta:+'2. 代码目录下增加如下类(WXPayEntryActivity.java,注意要放在wxapi包下):package com.test.wxapi;import android.app.Activity;impo...
2018-09-04 18:50:10 440
原创 小米手机Toast含有应用名前缀问题
问题描述: 小米手机有个奇葩的问题,Toast时,会自动添加应用名到Toast信息里(下面截图中“My Application”为应用名)。 设备信息:小米,MI MAX 3,MIUI 9.6.7.0,安卓 8.1.0解决方案: 改变toast的实现方式。 修改前:Toast.makeText(this,"test",Toa...
2018-09-04 16:28:29 2871 3
原创 安卓全屏时导航栏覆盖App底部导航栏问题
背景: 我们的主界面设置了全屏,安卓的虚拟虚拟按键覆盖了底部导航栏,导致无法操作底部导航栏。解决方案: 在activity对应的style主题配置中删除:android:windowTranslucentNavigation或者设置该属性为false。 Demo: 1.styles.xml<resources> <st...
2018-09-04 14:58:18 3098
原创 Android Studio不能预览xml问题解决方案
问题: 在Android Studio中出现不能预览xml文件,导致无法可视化查看和编辑。 AS版本:3.1.4解决方案: 编辑styles.xml文件,将 <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar"> 修改为: &...
2018-09-04 10:52:04 1275
原创 设置EditText可点击但是不可编辑
背景: 有个文本编辑框,内容是根据其他地方输入后,自动填充的,但是希望点击这个输入框时仍然能触发点击事件。 但是采用了android:enabled="false",则不可编辑,也不可点击。解决方案: android:cursorVisible="false"android:focusable="false"android:focusableInTouchMo...
2018-09-04 10:39:27 4099 1
原创 安卓启动时快速跳转到指定activity
背景: 安卓开发中,有时需要需要跳转到某个activity进行测试,但是按照正常流程,需要经过很多个页面才能过去,这样开发自测效率就非常低。如果能直接跳转过去,效率就高多了。实现方案:1.修改AndroidManifest.xml文件中对应activity的定义,增加如下信息(事后请务必删除): android:exported="true"2.在命令行中执行:...
2018-09-04 09:21:06 4442 1
原创 安卓横竖屏切换导致Activity重建解决方法
背景: 我们有一个用户注册的界面,是竖屏展示的,这个界面里需要用户扫描身份证,而扫描身份证界面是横屏的,当扫完回到竖屏界面时,奇葩的事情就发生的,竖屏activity进行反复多次重建。同时导致了原先横屏扫描界面传过来的身份证扫描结果丢失。此问题仅在小米手机上出现。 设备信息:小米,MI MAX 3,MIUI 9.6.7.0,安卓 8.1.0解决方案:activ...
2018-09-04 08:45:53 1128 1
通过Apache common pool开源包实现对象池
2014-04-25
java(cglib)动态代理样例
2014-04-08
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人