![](https://img-blog.csdnimg.cn/20210702232356880.jpeg?x-oss-process=image/resize,m_fixed,h_224,w_224)
Android
文章平均质量分 78
记录 Android 学习的内容
J_D_Chi
知道得越多,不知道得越多。
展开
-
Android: Android Studio 的模拟器一些使用问题
记录在使用 Android Studio 里的模拟器的时候,遇到的一些问题。原创 2022-09-25 15:56:50 · 1973 阅读 · 0 评论 -
Android : 关于 OkHttp
文章目录写在前面内容简述Call & RealCall发起请求同步异步Dispatcher同步异步线程池线程池执行每一个 AsyncCall请求的最后写在前面OkHttp 内部实现上有了一些新的东西,在此做下整理。内容简述这里使用的 OkHttp 的版本为:implementation("com.squareup.okhttp3:okhttp:4.9.0")借用从百度图片上找的一张描述 OkHttp 整体结构的图还有一段官方的示例代码:OkHttpClient client =原创 2021-06-25 21:48:58 · 131 阅读 · 0 评论 -
Android:关于 Handler 消息传递机制(二)
写在前面两年前的时候有写过一点对 Handler 的总结(Android:关于 Handler 消息传递机制),现在重新回顾,并增加一些东西和理解。内容内存泄露在 Activity 里我们使用 Handler 的时候,这样写的话 IDE 会提示可能存在内存泄露的问题。 Handler handler=new Handler(){ @Override public void handleMessage(Message msg) { super.原创 2021-06-23 23:50:27 · 184 阅读 · 1 评论 -
Android:关于签名
关于Android签名的笔记原创 2021-01-08 22:24:30 · 413 阅读 · 0 评论 -
修改一份自定义日历代码
最近在做一个功能,UI给出来的效果图里面是一个日历,刚一到手我就有点慌了。一个是我没有接触过Android 的日历,一个是那种效果我不知道我能不能实现。一开始我找到了Android里有一个系统控件Calendar,但当引用的时候,发现简直就是不能用。所以只能上网自己去找了,Google就是强大,第一个结果就跟我要的效果比较像,作者应该也是个大神,提供了Demo源码,我就下载后开始尝试了。Andro原创 2016-03-18 10:31:46 · 1688 阅读 · 7 评论 -
封装一个Recyclerview(包含刷新,加载和状态切换)
在之前的项目里都需要用到RecyclerView,然后还需要用它来进行刷新,加载,还有不同状态的切换。但那个时候刷新加载和状态切换是分开的,即是在有刷新加载功能的recyclerview的外部包裹一个状态的layout,也就导致这是两个控件,最近我把这两个给合在一起。下面是封装后的RecyclerView的代码public class PullToRefreshRecyclerView extend原创 2017-08-11 17:27:15 · 1297 阅读 · 0 评论 -
Android之WebView调试
首先在WebView里开启调试模式: if (Build.VERSION.SDK_INT > 19) { WebView.setWebContentsDebuggingEnabled(true); } 接着在Chrome浏览器的地址栏里输入:Chrome://inspect然后选择inspect进入调试页面: 到了这里前端人员即可对代码进行断点调试什么原创 2017-07-04 10:17:15 · 3216 阅读 · 0 评论 -
RecyclerView分割线之RecyclerView.ItemDecoration的理解(笔记)
今天对RecyclerView.ItemDecoration做了蛮多的理解,赶紧记下来,一直在思考分割线与item间的关系,后来模仿着做了很多的调整测试,才大概弄懂了。这是一个分割线的绘制,通过multRecyclerView.addItemDecoration(new ItemDecoration(this));就可以将其画出来。public class ItemDecoration e原创 2016-05-25 17:00:33 · 1192 阅读 · 0 评论 -
Android之微信接入分享,登录功能。
最近在做一个APP项目,需要用到微信分享啊,登录这些。原创 2015-11-07 15:36:58 · 15190 阅读 · 1 评论 -
Android之调用高德地图或百度地图原生app
今天做一个路径规划的功能,需要使用到高德地图,或是百度地图,然后想着怎样的实现比较好。刚好也在看前程无忧,它里面就是点击导航的话会先检查本机是否安装了这些地图app,如果有的话,就直接打开使用,没有的话就通过浏览器去打开百度的web地图进行路径规划。主要的流程是这样,先判断是否安装了高德地图,有的话就打开高德地图app;否则就判断是否有百度地图;否的话就直接用浏览器跳转到高德地图的网页做路径规原创 2017-03-15 23:10:49 · 15343 阅读 · 1 评论 -
《Android开发艺术探索》笔记——Bitmap的加载和Cache(二)
上一篇记录了Bitmap的(高效)加载,那么这一篇就记录Cache。 对于网络上的图片,第一次使用就需要从网络上去下载下来,但如果每次都去从网络上下载,那就非常浪费流量了,所以需要做缓存。另外的添加了缓存也要做好删除缓存,毕竟有些过久地图片或是很少会再用到的图片,就需要删掉了,释放空间。这里用到的缓存算法是LRU(Least Recently Used),最近最少使用算法。在该算法的基础上有衍生出原创 2017-08-26 14:36:27 · 357 阅读 · 0 评论 -
《Android开发艺术探索》笔记——Bitmap的加载和Cache(三)
上一篇记录了Cache的使用,这一篇对ImageLoader还是画个流程图就行了,Github上的代码结合图看应该就可以了:另外一个是对这里涉及到的一些知识点画了脑图(如果缺失了再补充):原创 2017-08-27 10:38:48 · 305 阅读 · 0 评论 -
《Android开发艺术探索》笔记——Bitmap的加载和Cache(一)
看了《Android开发艺术探索》里的图片加载这一章,把里面的东西都写了一遍,现在记录下来,也对其中的一些知识点做一些扩展学习。 完整的代码都在GitHub里。关键词:Bitmap,BitmapFactory,BitmapFactory.Options,inSampleSize,inJustDecodeBounds,LruCache,DiskLruCache。如题所示,本章主要分两个部分来讲,一个原创 2017-08-26 10:45:25 · 434 阅读 · 0 评论 -
Android:Android系统启动(笔记)
init 进程启动init 进程是 Android 系统中用户控件的第一个进程,进程号为 1,是 Android 系统系统流程中一个关键的步骤,作为第一个进程,它被赋予了很多极其重要的工作职责,比如创建 Zygote(孵化器)和属性服务等。init 进程是由多个源文件共同组成的,这件文件位于源码目录 system/core/init 中。引入 init 进程首先了解 Android 系统启动...原创 2019-07-17 14:22:18 · 190 阅读 · 0 评论 -
Android:关于 Handler 消息传递机制
文章目录写在前面用法一二三用法说明Handler写在前面这一篇主要是对Android 的消息机制做一个总结。在消息传递机制里,Android提供了 Handler 来作为对线程里的消息队列里信息进行传递和处理的方法,所以并不是说 Handler 就是用来更新主线程里的 UI,只是我们大多时候是用来在这么做。而且在 Handler 的介绍里,并没有说作用就是用来更新主线程 UI:A Ha...原创 2019-03-27 11:43:40 · 555 阅读 · 0 评论 -
Android 的一些开源库
Device Year Classfacebook的一个开源库,用于通过年份来区分手机的性能,以让我们针对不同的设备做不同的处理。示例Calculating the current device’s Year Class is simple.int year = YearClass.get(getApplicationContext());Then, later on, you can...原创 2019-03-17 15:11:35 · 197 阅读 · 0 评论 -
Android里的小问题和小技巧
1.最好不要把图片的jpg格式直接重命名为png格式,要用 格式工厂 之类的工具进行格式转化更为妥当,否则会报出相关的错误。2.在LinearLayout里用layout_weight的时候,如果写的比例跟我们要的预期相反,可能问题出现在我们的layout_width或layout_height设置成了match_parent。具体情况要看LinearLayout是水平方向还是垂直方向,规范做...原创 2017-09-24 22:23:24 · 880 阅读 · 0 评论 -
阅读EventBus源码(笔记)待续
对源码的阅读不多,从用的比较多的EventBus开始,还是有些看不懂的地方。最常用的写法:EventBus.getDefault().register(this);EventBus.getDefault().unregister(this);EventBus.getDefault().post("hello");@Subscribe public void mainEvent(Messa原创 2017-07-04 15:12:29 · 257 阅读 · 0 评论 -
Android之文字居中
写在前面在学习 HenCoder Android 开发进阶:自定义 View 1-3 文字的绘制 的时候,后面的两个关于文字测量的方法觉得还是挺需要记录的。注:以下部分笔记内容和图片来自上方提供的博客。drawText(String text, float x, float y, Paint paint)这里先简单说下这个方法,它绘制文字的起点坐标是在文字的左下方,而不是我们平常认为的左上方,因为在原创 2017-11-20 17:42:27 · 4823 阅读 · 0 评论 -
Android之高德地图(一)(笔记)
今天接入了高德地图,想着大概半年前做高德地图的时候,完全看不懂代码,在那里看着官方的东西到凌晨两点还是看不懂,最后只能直接去复制别人的代码来用。虽然成功了,但是一直不知道为什么,而且那只是简简单单地实现一个定位并在地图上显示出来而已。今天在以一个第一次使用的心态去看时,发现这次就看懂了这里了,再加上请教了一下别人,这个功能很快就能理解了。代码不多:public class MainAc原创 2016-11-24 21:17:15 · 2149 阅读 · 0 评论 -
Android之AsyncTask轻量级异步类(笔记)
刚才看了AsyncTask的API文档,确实不难看懂,而且基本的流程都说的很清楚。(注:内容是基于我个人的理解,可能有偏颇,请谨慎对待)利用AsyncTask可以帮助我们在子线程里更新UI,和封装,简化异步操作。API:AsyncTask enables proper and easy use of the UI thread. This class allow原创 2015-10-29 10:47:37 · 441 阅读 · 0 评论 -
Android面试题(一)(笔记)
1.layout_weight 及常见属性1.1layout_weight的意义是控件在父容器里所占的比例大小。在LinearLayout里,如控件TextView之间的对齐是以文本内容参考父容器的基线来制定的。因此它产生的问题是虽然形式上表现出来是占据了符合要求的比例,但它的对齐方式却发生了错误因此我们需要将LinearLayout的基准线设置为false,这原创 2015-10-22 20:57:06 · 711 阅读 · 0 评论 -
Android之TextView实现跑马灯的效果(笔记)
就像有时候在京东或是淘宝客户端里的首页那样,有时候它会在上面显示一行小字,是跑马灯的样式。而且刚刚也看了imooc上有讲解,就跟着他做,然后在这里写一下笔记。为了要让TextView实现跑马灯的效果,那么应该有两点要注意的,一个是内容要足够的长,长到在一行里不能完全的显示,另外一个就是TextView的singleLine属性要为true,这样它才不会因为内容过长而会自动回车新建一行。这是原创 2015-09-09 16:00:53 · 825 阅读 · 0 评论 -
Android之AutoCompleteTextView自动匹配(笔记)
我们在用百度进行google的时候,只要我们input the key word,它就会自动给我们进行一些相关的匹配,like this: 那么在Android里我们可以通过AutoCompleteTextView来进行实现。<AutoCompleteTextViewandroid:completionThreshold="3"android:layout_width="原创 2015-09-09 16:02:11 · 874 阅读 · 0 评论 -
EventBus(笔记)
EventBus(3.0):是什么?EventBus is a publish/subscribe event bus optimized for Android.(EventBus是一款针对Android优化的发布/订阅事件总线。主要功能是替代Intent,Handler,BroadCast在Fragment,Activity,Service,线程之间传递消息.优点是开销小,代码更优原创 2016-05-14 13:45:30 · 358 阅读 · 0 评论 -
ViewStub(笔记)
今天在对项目做优化的时候,了解到了一个控件叫ViewStub,一个原创 2016-05-18 21:48:24 · 335 阅读 · 0 评论 -
RecyclerView(笔记)
写在前面ListView早些时候还没用熟,后来就出了个RecyclerView,怀着好奇心和贪图所谓的“方便”,就对ListView嗤之以鼻,也不太知道它的使用方法了。现在也懒得回去重新看,就直接对RecyclerView下手了。记录下自己对这个东西的一个入门学习。首先如果是在AndroidStudio里的话,使用RecycleView直接Gradle即可。在eclipse里的原创 2016-05-24 21:55:29 · 569 阅读 · 0 评论 -
关于TimePickerDialog里的取消按钮
最近在做一个功能,需要用到时间选择器。但里面出现了一个问题,在模拟器(4.4)里,时间选择器显示的结果是只有一个“完成”的按钮,但在我的真机(4.1)里却多了个“取消”按钮。本来之前我是在onTimeSet()方法里写确认后的操作,然后在setOnCancelListener()里做点击对话框外部或是手机返回键时的取消操作。但是在真机里,发现点击“取消”其实没有调用setOnCancelListe原创 2016-03-08 20:16:06 · 3217 阅读 · 0 评论 -
观察者模式笔记
在做RecyclerView的item点击监听操作的时候,参考了 泡在网上的日子里的一篇blog,它里面提到了观察者模式,所以就找了相关的内容,记录下自己的一些理解,可能存在某些错误,希望指正。首先贴出一下部分代码:public class HomePageAdapter extends RecyclerView.Adapter { private LayoutInfl原创 2016-02-17 20:40:28 · 291 阅读 · 0 评论 -
关于sqlite3 not found
一开始按照书上的命令打,前面的还是顺风顺水,可惜到了后面打sqlite3的时候,就出现了not found,于是只能上网百度寻找答案,没想到第一条结果就是最正确的答案了。problem(这里有个注意点,你需要键入 su 将权限改为root,即将前面的$改为#)root我也把自己按照它的结果再重新做一遍:1.首先手机是要有获得r原创 2015-10-06 10:04:05 · 1193 阅读 · 0 评论 -
Android之微信支付功能
写在前面:为了完成微信支付的功能,零零散散地花了我一个多礼拜的时间,期间的原因有很多:微信的文档写得太“好”了,我个人难以理解;自身知识点覆盖不足,导致有些地方不知道怎么实现......1.前期准备:1.1申请支付功能为了让APP获取到微信支付的功能,你需要去开放平台上进行申请(这里我已经申请好了,所以是显示该界面),你需要填写一些证明资料什么的,这么繁琐的工作我就不说原创 2015-12-16 16:56:49 · 1772 阅读 · 0 评论 -
Android Studio之AndroidManifest.xml(笔记)
今天开始使用to-do,希望能坚持下去,好好利用吧。(1)在eclipse里我们可以在AndroidManifest里去看到我们的目标版本,最低版本等信息,但在Android Studio里却没有,原因是它们被放在了build.gradle里了。 (2)权限大全访问登记属性 android.permission.ACCESS_CHECKIN_PROPERT原创 2015-09-09 16:04:33 · 10702 阅读 · 0 评论