
android
文章平均质量分 62
「已注销」
这个作者很懒,什么都没留下…
展开
-
RecyclerView悬浮效果——StickyHeaderDecoration
RecyclerView悬浮效果——StickyHeaderDecoration 前言悬浮效果之前也做过,但是呢做的很蹩脚。完全是找个博客,把代码一股脑粘到项目里面去。做出来的效果也很丑,有心优化一下。却发现无从下手,因为对原理一点也不懂。 这次闲来无事,找到两篇写的比较好的博客(文末会贴出链接)。把原理完全弄懂了,在这里记录一下。##1.ItemDecoration关于Ite...原创 2018-12-14 17:59:52 · 1562 阅读 · 0 评论 -
集成Bugly——异常统计
集成Bugly——异常统计 最近app的开发算是告一段落了,需要打包交给别人去测。但是又不想浪费时间等对方写测试文档。于是就打算集成腾讯的bugly,自己在后台看出了什么问题。 具体的集成步骤就不说了(Bugly的集成本身就很简单),自行看官方文档。 主要说下集成期间踩的坑。一共花了两天。集成bugly到项目中花的时间不超过半小时。但是这两天的时间花到哪里去了呢? 同事集成了别人的第原创 2018-02-27 18:31:03 · 988 阅读 · 0 评论 -
适配器刷新混乱
适配器刷新混乱 今天写代码的时候,发现了一个奇葩问题。具体见下图: 我的思路是:点击条目就处于选中状态(修改item的背景颜色),再次点击时取消选中。可是最上面没有点击就变成选中状态了,这让我百思不得其解。 我是通过在Adapter里的getView()方法中判断状态值isSelect(布尔值),来改变选中状态的。 但是当我打印出所有的状态值时,状态都是正确的。 解决方法原创 2018-01-29 20:39:07 · 275 阅读 · 0 评论 -
git获取历史版本
git获取历史版本 今天开会,讨论公司的产品。老板检阅了我们最近的工作成果。会议上老板突然提起了一个月之前的一个版本,觉得还不错。想再看看。 当时惊了我一身冷汗,因为项目持续推进了一个月。代码早就改的“面目全非”。我的第一反应是赶紧加班重做一版,但是时间上根本来不及。还得想办法,之前学习git的时候。依稀记得git有一个回滚的功能,Google了一下发现可行。 我可以将当前的代码原创 2018-01-29 20:33:04 · 48195 阅读 · 3 评论 -
RxLifecycle小结
RxLifecycle小结 最近项目中有一个推送语音通知的需求。开会的时候说不能使用第三方。因为我并不知道通知什么时候下发,所以只能不停的去请求后台下发语音通知的接口。 原本我是打算使用死循环去实现,但是觉得有点low。我想起来学习Rxjava的时候,有一个叫做定时器的东西。我决定使用Rxjava实现这个需求。毕竟Rxjava我只会用来与Retrofit结合起来用。一些其他的原创 2018-01-21 02:07:43 · 685 阅读 · 0 评论 -
kotlin之Serializable
kotlin之Serializable activity的界面跳转是Android中最常见的操作了,但是博主最近爬了一个小坑。我们通常使用Intent在activity之间来跳转,并在Intent中添加一些关键数据。带到跳转的activity中进行使用。 博主在使用AndroidStudio的时候,设置的是自动导包,当我想让实体类继承Serializable时出现了下图中原创 2018-01-21 01:44:45 · 7900 阅读 · 0 评论 -
集成ndk导致的SIGSEGV(SEGV_MAPERR)
集成ndk导致的SIGSEGV(SEGV_MAPERR)前言 最近集成bugly的异常统计,官方文档推荐sdk和ndk同时集成。 于是我按照官方文档配置gradle文件。然后运行,程序直接Crash。我在bugly的后台看了一下,觉得应该是.so库的问题。 SIG 是信号名的通用前缀, SEGV 是 segmentation violation 的缩写 在 POSI原创 2018-02-28 15:36:51 · 11706 阅读 · 2 评论 -
v4包冲突
Landroid/support/v4/animation/AnimatorCompatHelperjava.lang.NoClassDefFoundError: Failed resolution of: Landroid/support/v4/animation/AnimatorCompatHelper; at android.support.v7.widget.DefaultItemA原创 2018-02-28 16:08:12 · 793 阅读 · 0 评论 -
android热更新
#android热更新方案选型##0.主流的热更新解决方案Thinker(微信)HotFix(阿里云)##1.什么是热修复? ##2.厂商解决方案之间的差异从左到右依次是:微信、QQ控件、淘宝、美团的热更新的解决方案 从上图中可以看出微信和阿里云的热更新方案功能是最全面的。 如果从产品迭代的角度来进行选型,那么毫无疑问使用微信的Thinker(免费)和阿里云的H...原创 2018-12-14 15:47:49 · 8653 阅读 · 0 评论 -
Android文字基线(Baseline)算法
原文链接:https://blog.youkuaiyun.com/hailuoli/article/details/78558594引言Baseline是文字绘制时所参照的基准线,只有先确定了Baseline的位置,我们才能准确的将文字绘制在我们想要的位置上。Baseline的概念在我们使用TextView等系统控件直接设置文字内容时是用不到的,但是如果我们想要在Canvas画布上面绘制文字时,Base...转载 2018-12-06 09:59:22 · 3949 阅读 · 0 评论 -
AndroidStudio界面乱码.md
#AndroidStudio界面乱码装了3.2版本的AndroidStudio之后,想试试翻译插件。 结果插件装完了,出现了下图的情况。出现了乱码(出现乱码一般是因为字体中没有相应的字符的问题)##解决方法:修改studio的字体,如图。进入设置里面...原创 2018-09-18 10:39:35 · 1006 阅读 · 1 评论 -
Android微信支付
Android微信支付 项目要上支付功能,老大让我写一个支付的demo看看效果。支付宝和微信都要。支付宝还好说,有一整套的测试环境(沙箱),一上午就做出来了。 微信就不得了了,从头到尾你得自己写。老大说了,现在后台比较忙。你先自己下单,自己支付,自己··· 微信支付-APP支付的整体流程是:通过下单接口向微信的服务器下单,用微信返回的订单信息调支付接口。本身也不难,...原创 2018-08-30 17:37:23 · 637 阅读 · 0 评论 -
Android集成华为推送
Android集成华为推送1.注册成为开发者 这个没什么好讲的,照做就行了。之后就是在控制台创建应用巴拉巴拉的 需要注意的是SHA256指纹: SHA256你在控制台可以填好几个,博主建议填两个。一个是debugkeystore的SHA256(也就是你本机的SHA256),另一个是.jks签名文件里面的SHA256。 2.配置HM...原创 2018-08-30 17:35:13 · 2697 阅读 · 0 评论 -
SurfaceView叠加展示
SurfaceView叠加展示项目背景 最近集成网易云信的视频通讯SDK,碰到了一个问题。 画面展示用的是云信封装的SurfaceView,直接在布局中使用。结果绘制画面的时候总是出现覆盖问题。 PS:本地画面小窗展示(覆盖在远端界面之上),远端画面全屏展示。绘制远端画面的时候,本地小窗直接被覆盖。解决方案 谷歌了一下“SurfaceV...原创 2018-08-15 10:44:34 · 1460 阅读 · 0 评论 -
微信支付-H5支付
微信支付-H5支付 最近前端给了我一个链接,让我用webView嵌在原生APP当中。这个链接打开之后,经过一番操作,需要使用微信支付。 刚接手的时候一脸懵逼,所有操作都是在h5界面进行的。完全不走Android原生,当然页面是在原生的webView里面展示。APP本身是没有集成微信支付SDK的,所以几乎可能直接调起微信客户端进行支付。只能从webView入手了,webView...原创 2018-08-02 16:58:29 · 1131 阅读 · 0 评论 -
Android端切图规范
Android端切图规范v1.01.容器的概念 UI设计师在拿到产品经理的原型图后,应该对每张原型图进行分组分类。 具体的分类方法如下: 1.每一个功能界面对应一个文件夹 2.对原型图中的界面进行整体分割并命名 3.基于2中的分割结果创建相应文件夹,分割块中的需要的素材放置到对应文件夹 以医万佳为例,...原创 2018-07-27 14:08:42 · 6610 阅读 · 1 评论 -
Error_type 3
Error type 3 Error: Activity class {} does not exist 我在华为8.0的手机上测试demo,本来只是想在应用管理中看一下应用的大小。但是小手一抖,点了卸载。然后就炸了,用AndroidStudio往手机上run程序一直报标题上的错误。 我去百度了一下,真是千奇百怪的原因都有。嗯,然后就是千奇百怪的解决办法。我感觉我自己的问题和...原创 2018-07-18 08:20:29 · 3714 阅读 · 2 评论 -
Android树形控件
Android树形控件 最近公司需要做一个树形图的效果(就是上面gif图),本来应该是后台传给我已经分好层级的json数据。但是他们所谓的已经分好的层级就是每个元素都有id(结点本身)和pid(父结点)这两个属性。我竟无言以对。因为这两个属性确实分好了层级。 下面分析一下实现思路: >1.对数据进行排序(处理数据),如下图: 后台传给我的数据其实是无序的,我需要根据结点的id和p原创 2018-01-21 01:01:24 · 710 阅读 · 0 评论 -
关于EventBus3.0(笔记)
今天在用EventBus的时候,突然发现消息发不出去了!!!EventBus的使用本身不难,突然碰到这种情况有点懵逼。Google了一下,也没找到答案。@Subscribe(threadMode = ThreadMode.MAIN)fun onHitToolBar1(replaceFragment: ReplaceFragmentEvent) { when (re原创 2017-11-24 19:25:33 · 228 阅读 · 0 评论 -
Android软键盘总结(笔记)
最近做一个搜索框的功能发现软键盘隐藏后切换界面,会出现抖动这种抖动简直不能忍,非常影响交互Google了一下,关于软键盘的一些资料。大多都是设置setSoftInputMode的文章(布局被软键盘顶起来了)没有解决我的问题,这里留一个讲的比较好博客链接先说一下我碰到的情况:1.首页点击搜索框(图片)进入到搜索页面2.搜索页的输入框获取焦点,软键盘弹出原创 2017-11-24 19:03:36 · 207 阅读 · 0 评论 -
使用RecyclerView的ItemDecoration实现StickyHeader效果(笔记)
最近要做一个类似QQ浏览器的浏览记录效果就是下面的效果QQ浏览器玩了半天,分析出了一点东西。之前用ItemDecoration给RecyclerView绘制item过分割线。大家仔细观察一下就可以发现,这个效果就是给指定的item绘制分割线。这里有一个比较好的教程,博主就不写详细的分析和实现了另外还有一种实现方式:Android RecyclerView 顶原创 2017-12-04 17:21:20 · 510 阅读 · 0 评论 -
Android应用开发之所有动画使用详解
本文转自 工匠若水的文章1 背景不能只分析源码呀,分析的同时也要整理归纳基础知识,刚好有人微博私信让全面说说Android的动画,所以今天来一发Android应用的各种Animation大集合。英文厉害的请直接移步参考Android Developer。Android系统提供了很多丰富的API去实现UI的2D与3D动画,最主要的划分可以分为如下几类:转载 2017-12-11 09:00:24 · 724 阅读 · 0 评论 -
自定义Dialog(笔记)
最近有一个需求做一个类似于夸克浏览器的menu对话框像这样的对话框肯定是自定义的。查了一些资料:android 8种对话框(Dialog)使用方法汇总Android设置Dialog透明度、黑暗度方法Android创建自定义dialog方法详解-样式去掉阴影效果使用DialogFragment实现底部弹窗布局Android 官方原创 2017-11-29 10:24:51 · 311 阅读 · 0 评论 -
Retrofit+RxJava学习笔记(1)
最近做项目发现,项目的上传图片功能有问题各种输入流,输出流的操作。博主看着都头疼。于是决定换个网络框架上传。于是就选择了Retrofit(+RxJava)先用登陆练个手Retrofit:第一步:创建Retrofit实例BaseURL是你请求的基地址//创建Retrofit实例Retrofit retrofit = new Retrofi原创 2017-11-17 16:33:07 · 277 阅读 · 0 评论 -
解析程序包出现问题(更新下载apk)
最近在做更新功能由于公司的项目是没有上线的,所以不能借助APP商店来更新。我的大致思路是:1.校验APP的版本号2.下载最新版本3.安装apk包1.校验APP的版本号由于公司后台比较忙,没时间帮我写这个接口。我自己写了一个json文件丢到Tomcat的root文件夹下面(必须是root下面,不能包裹一层文件夹。应该是要改Tomcat的一些配置原创 2017-10-26 15:43:15 · 15647 阅读 · 1 评论 -
DexIndexOverflowException--65536
AGPBI: {"kind":"error","text":"The number of method references in a .dex file cannot exceed64K.\nLearn how to resolve this issue at https://developer.android.com/tools/building/multidex.html","sourc原创 2017-11-10 10:39:24 · 355 阅读 · 0 评论 -
android:theme和app:popupTheme的作用
android.support.v7.widget.Toolbar android:id="@+id/toolBar_home" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="10dp" app:naviga原创 2017-06-30 11:37:02 · 2151 阅读 · 0 评论 -
RxJava操作符大全
创建操作以下操作符用于创建Observable。create: 使用OnSubscribe从头创建一个Observable,这种方法比较简单。需要注意的是,使用该方法创建时,建议在OnSubscribe#call方法中检查订阅状态,以便及时停止发射数据或者运算。 Observable.create(new Observable.OnSubscribe() {转载 2017-11-27 11:36:04 · 195 阅读 · 0 评论 -
AndroidStudio代码主题设置
下载主题原创 2017-11-27 13:53:48 · 1168 阅读 · 0 评论 -
科大讯飞 · 集成语音合成
科大讯飞 · 集成语音合成前言 由于项目需要语音提示的功能,于是在网上搜索相关的sdk。 目前,国内语音方面做得最好的应该是科大讯飞。 想使用科大讯飞的sdk,首先要注册成为讯飞开放平台的会员(注册登录不做赘述)。 具体可以查看(个人觉得不太友好)科大讯飞新手指南 我使用的是这个科大讯飞MSCAndroid版SDK的用户指南 一定要仔细看这个MSC Andro原创 2018-02-08 21:25:13 · 896 阅读 · 0 评论 -
Rxjava的onError方法定位空指针
Rxjava的onError方法定位空指针 最近一直在使用kotlin+Rxjava写项目。碰到一个空指针(那个null是后来定位到了打印出来的)。情况如下:override fun onError(e: Throwable) { Log.e(TAG, "onError:" + e) } 空指针?小意思。仔细一看:没有定位? 没有定位!!! 没有定位!!!原创 2018-01-31 18:57:40 · 753 阅读 · 0 评论 -
kotlin之Serializable
kotlin之Serializable activity的界面跳转是Android中最常见的操作了,但是博主最近爬了一个小坑。我们通常使用Intent在activity之间来跳转,并在Intent中添加一些关键数据。带到跳转的activity中进行使用。 博主在使用AndroidStudio的时候,设置的是自动导包,当我想让实体类继承Serializable时出现了下图中的情况原创 2018-01-23 14:56:04 · 4382 阅读 · 1 评论 -
在Application中使用startActivity方法
在Application中使用startActivity方法 一不下心在Application中使用了startActivity方法,编译器报如下异常(注意Caused by): java.lang.IllegalStateException: Fatal Exception thrown on Scheduler. at io.reactivex.android.scheduler原创 2018-01-23 14:54:35 · 7979 阅读 · 0 评论 -
ContextWrapper中attachBaseContext()方法
原文点这里在GitHub上看一个开源项目的源码的时候看到了了这个方法,然后就百度到了这篇文章。如有侵权,请联系我,立删。/*************************************************************************************************/ContextWrapper类的源码,Cont转载 2017-09-28 10:39:07 · 2590 阅读 · 0 评论