![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
android
啧啧_jet
别让自己悠闲下来,忙碌是我们的唯一成长方式.
展开
-
Android实现刷新后自动滚动底部最后一项
listview在刷新notifyDataSetChange(),后想让它自动滚动到刷新的最后一项,方法有很多.方法一:listview.setSelection(int position) 滚动指定位置,这样设置可能会遇到无效的情况,最好在主线程中去执行,mListView.post(new Runnable() {原创 2016-08-11 15:07:06 · 1343 阅读 · 0 评论 -
android 日历选择器(酒店专用)
日历选择器由于公司需求,参看了各个平台的酒店日历选择功能,手动写了一个,就当记录下,代码逻辑可能还需要再去优化下,各位小伙伴没思路的可以参考下。。接下来正题。看下实现后效果图吧。。布局上是RecyclerView嵌套RecyclerView,上面2018年月9月是通过自定义RecyclerView.ItemDecoration绘制,代码下面地址有,这里就不解说自定义RecyclerView.Ite...原创 2018-03-12 17:31:08 · 3735 阅读 · 1 评论 -
Android 5.0以下,使用android studio 出现错误com.android.build.api.transform.TransformException:
Android 5.0以下,使用android studio 出现错误com.android.build.api.transform.TransformException:使用as去跑5.0以下的手机,居然跑出了错误com.android.build.api.transform.TransformException: …….class com.android.dx.command.Main with原创 2017-09-16 16:12:17 · 2195 阅读 · 0 评论 -
Android Bugly那些实践走过的坑
上一文章讲了如何使用tinker,今天我们带来一个更加方便的sdk,它也是使用tinker来实现热更新,还另加入了后台管理补丁,是不是更加方便很多,而且还减少了我们tinker的许多配置.配置主项目和app项目的build.gradle,为了分隔配置,新建一个tinker-support.gradle改造Application生成基准版app,也就是存在bug版本的apk(记得通报联网,也就是原创 2017-05-22 15:47:31 · 3910 阅读 · 2 评论 -
Android 热更新之tinker
Android 热更新之tinker 何为热更新?但我们刚刚上线app突然收到反馈有BUG存在,这时候,重新发布apk更新版本是相当麻烦,成本高,或许说你app有更新版本的功能,这时候用户体验非常差,又消耗流量,分分钟触发用户卸载你的应用,那就尴尬了.最近出现不少热门的热修复框架. 阿里的AndFix:在Native层使用指针替换的方式替换bug方法,已达到修复bug的目的QZone原创 2017-05-19 15:52:26 · 558 阅读 · 0 评论 -
android 基于FFmpeg视频解码器
FFmpeg一个集录制、转换、音/视频编码解码功能,强大的音频处理方案,如何在原创 2017-05-25 19:08:21 · 824 阅读 · 0 评论 -
Android DataBinding 项目使用介绍(二)
android databinding原创 2017-03-31 12:08:00 · 1269 阅读 · 1 评论 -
Android DataBinding 项目使用介绍(一)
Android DataBinding 介绍对于databinding,或许有不少人已经用在开发之中,今天为了不给自己闲下来,总结下自己在开发中用到的知识。先上官方介绍http://developer.android.com/intl/zh-cn/tools/data-binding/guide.html。最近在项目中使MVP+databinding的搭建去开发项目,真的发现代码量,逻辑都得到原创 2017-03-27 21:41:34 · 792 阅读 · 0 评论 -
Android gc与内存泄漏,溢出的理解
GC介绍在java中垃圾回收是自动释放的,不像c/c++需要手动释放,手动释放可能处理不当,会造成内存泄漏与数据混乱等等影响。GC常用的回收算法1,计数引用计数是垃圾收集器中的早期策略。在这种方法中,堆中每个对象(不是引用)都有一个引用计数。当一个对象被创建时,且将该对象分配给一个变量,该变量计数设置为1。当任何其它变量被赋值为这个对象的引用时,计数加1(a = b,则b引原创 2017-03-28 21:10:25 · 1045 阅读 · 0 评论 -
android NDK搭建与开发(一)
android NDK技术上的使用非常广泛,游戏、视频、加密等等都需要使用到C、C++动态库,到此需要我们使用NDK完成,使用NDK开发带来效率上优化,数据的安全行等等可靠。这章节我们来学习NDK在android上搭建,与需注意的地方。1,下载NDK,如果没翻墙,可以去寻找国内的一提供网站,这里我经常使用的是http://www.androiddevtools.cn/,资源丰富。原创 2017-03-20 22:19:14 · 339 阅读 · 0 评论 -
Android 解决SwipeRefreshLayout和listview的setEmptyView的冲突 listview和scrollview的冲突
解决SwipeRefreshLayout和listview的setEmptyView的冲突 listview和scrollview的冲突原创 2017-01-16 16:33:53 · 772 阅读 · 0 评论 -
android studio 如何打包jar(细节)
android studio 如何打包jar原创 2016-12-31 14:28:51 · 802 阅读 · 1 评论 -
android 从Rxjava2.0到Retrofit (一)
android 从Rxjava2.0到Retrofit原创 2016-11-08 15:39:32 · 1202 阅读 · 0 评论 -
Android蓝牙4.0 关闭蓝牙重开无法根据地址连接问题
在蓝牙项目的末尾,在个别手机上出来,手动关闭手机蓝牙,和再次启动,打开app发现无法连接上,经过查看log最后确定错误是: onClientConnectionState() - status=133 clientIf=5 device=地址133的一个错误,前面试过很多的查阅,网上解决办法是由于你该设备连接的mBluetoothGatt没有去close和disconnect,后面反复原创 2016-10-18 13:45:46 · 2870 阅读 · 0 评论 -
android 关于软键盘的显示和隐藏监听,解决挡住Editview的问题
监听软键盘的显示和监听,处理editview被挡住的问题原创 2016-10-18 11:34:07 · 1051 阅读 · 0 评论 -
Android 关于view的getLayoutParams().width,getWidth(),getMeasuredWidth();
习惯了使用xml的布局方式,当动态布局的时候就有许多疑点,记录一下,帮助我这老头一样的记忆力.网上也有许多解析这getLayoutParams().width,getWidth(),getMeasuredWidth();三种方式的获取区别,参考并理解了下:getLayoutParams().width:这里顺便提下,LayoutParams,每个view都需要一个Lay原创 2016-09-20 16:13:32 · 5446 阅读 · 2 评论 -
Android 关于内存泄漏的检测与优化
在开发app中,盲目的去撸代码,从没为内存考虑的写,这样到了后面出问题的时候,就想哭了,最近上传小米平台的应用被反驳回来,真心的尴尬,因为在公司几台手机都没有出现oom的情况,到了小米官方测试,还是小米3(Android6.0)的就出现了.原因的oom,看这报错文档,懵逼了,一开始以为是bitmap引起的,拼命去查看bitmap处的代码,感觉已经优化了,没啥问题啊!后来使用了leakCanary去原创 2016-08-15 11:03:36 · 492 阅读 · 0 评论 -
android 应用更新安装时出现《 文件包与具有同一名称的现有文件包冲突》小记录
前言:实现应用自动下载更新时,在安装时出现“文件包与具有同一名称的现有文件包冲突”的错误。 因为适配7.0以上获取内置路径的适配,添加了配置一些配置:<provider android:name="android.support.v4.content.FileProvider" android:authorities="包命.fi...原创 2018-12-18 14:43:06 · 4656 阅读 · 0 评论