android开发笔记
文章平均质量分 78
wujushan
这个作者很懒,什么都没留下…
展开
-
Glide自定义ModelLoader来加载多张候选图片
这里写自定义目录标题需求解题思路需求使用过Glide这个框架的同学大概知道,Glide从网络上加载图片时,只能加载一张图片,失败之后,可以选择显示占位图,如下面这段代码: Glide.with(context).load(url) .skipMemoryCache(true) .diskCacheStrategy(DiskCacheStrategy.DATA) .apply(new RequestOptio原创 2021-04-01 09:20:10 · 1377 阅读 · 0 评论 -
Websocket在Android平台的消息推送上的应用
文章目录写在前面Websocket ServerWebSocket Client源码下载写在前面之前接触过一个小项目,其中有个功能是服务端将文件推送到客户端,那时候,是通过客户端的轮询去询问是否由文件推送,如果有,则进行文件下载。其实,这种做法不可取,可以用Websocket来实现一个简单的消息推送系统,用于替代轮询。Websocket Server在这个 server demo中,使用的...原创 2019-01-10 10:11:01 · 682 阅读 · 0 评论 -
基于JNI的秘钥保护方案
基于JNI的秘钥保护方案在接触了Android平台上的Https服务器之后,需要引入秘钥,所以为了不在Java层暴露秘钥,将秘钥相关的所有东西放到JNI层去进行处理。这样,对于秘钥来说,起到一定的保护作用。这篇文章并不会给大家讲解很高深的技术,只是希望能给大家一种思路的引导吧。方案思路基于JNI的秘钥保护其实就是讲私钥、私钥密码、证书和秘钥库加载等相关的逻辑全部放在JNI层中实现,...原创 2018-03-25 21:33:33 · 1230 阅读 · 0 评论 -
通过OpenSSL自签CA为Android服务器签发证书
前言不知道大家有没有留意过开源库AndServer和NanoHttpd。这两个开源库都能实现在Android平台上快速搭建服务器,功能非常强大,也都分别支持Https安全通信,大家如果有兴趣可以点进去看看。本文也是因为使用到Https通信,需要用到自签的服务器端证书,需要自己创建CA,并由这个CA去给服务器端签发证书(因为我只需要客户端去认证服务器端的合法性,所以只用签发服务器端证书)。那么接...原创 2018-01-27 14:28:35 · 2227 阅读 · 3 评论 -
java.lang.NoClassDefFoundError: Failed resolution of: Lokhttp3/internal/Platform
使用OKHttp3作为网络访问的框架时,可能要经常查看日志,这时我们可以引入logging-interceptor拦截器。如下: compile 'com.squareup.okhttp3:logging-interceptor:3.8.1'但是,如果出现如题目中的错误,那原因应该就是logging-interceptor的版本和OkHttp3的版本不一样,保持一样就可以了。compile 'com原创 2017-08-25 19:43:07 · 16249 阅读 · 4 评论 -
Android发送和接收UDP广播
在Android平台上实现UDP广播的发送和接收原创 2017-08-02 11:07:29 · 15340 阅读 · 0 评论 -
获取Android的assets目录下的文件
有时候,我们需要直接将一些文件放在assets目录下,然后在APP运行时去获取到该文件。 我们都知道,通过如下路径就可以找到文件:String path = "file:///android_asset/文件名";但是,有时候,通过以上路径并不能实现我们的需求,比如:有一个安卓工具软件,需要将assets的某个文件安装到远端设备,往往通过以上文件会出现找不到文件的错误,这时候,我们可以想到找一个折原创 2017-06-27 14:56:24 · 1601 阅读 · 0 评论 -
EventBus:Could not dispatch event: class to subscribing class
EventBus:Could not dispatch event: class to subscribing class的解决方法。原创 2017-05-16 19:34:00 · 21591 阅读 · 1 评论 -
android 静态注册广播注意事项
通过静态方法注册广播的时候,至少需要注意以下两点:通过静态注册的广播类,在其内部申明的接口将不能进行接口回调,只有动态注册的广播类才能进行接口回调。如果广播类是内部类,那么,该广播类需要用static来声明为静态类,不然,会出现该广播类不能初始化的错误。原创 2017-06-29 19:07:25 · 1564 阅读 · 0 评论 -
RecyclerView:java.lang.IndexOutOfBoundsException: Invalid item position
RecyclerView java.lang.IndexOutOfBoundsException:Invalid item position的解决方法原创 2017-05-17 10:53:31 · 1789 阅读 · 2 评论 -
模仿微信,android bottom navigation的实现
模仿微信,实现Android端底部tab导航,bottom navigation原创 2017-03-24 09:53:54 · 688 阅读 · 0 评论 -
Android N加载系统私有库时出现is not accessible for the namespace错误和针对该错误的解决方法
谷歌从Android N开始,除了那些在Android NDK提供的库之外,限制了应用对系统私有库的加载。本文介绍了如何应对这种情况。原创 2017-04-13 09:36:06 · 30904 阅读 · 3 评论 -
依赖了aar库的module被导入工程时出现failed to resolve的错误
在android studio中进行开发时,常常需要创建module或者导入module,如果这个module中引用了aar库,可能会出现本文中所提到的错误,写这个博客希望记录一下这个错误的解决方法,也给遇到同样问题的你们一个参考。原创 2016-12-14 10:52:36 · 17199 阅读 · 3 评论 -
Android导入动态链库可能会出现的错误
当你在Android工程中导入.so动态库的时候,需要注意的几点:1、如果要直接使用别人项目中的库,System.loadLibrary();方法所在的包名要注意,因为别人在编译这个动态链库的时候,生成的头文件的名字是依赖包名的。所以如果想直接用别人的库,最直接方便的方法就是保持包名不变。2、当你的测试机器是arm64位,出现couldn't find "xxxx.so"这种错误的时候,可原创 2016-12-16 11:42:48 · 573 阅读 · 0 评论 -
为ViewFlipper添加点击事件,很简单
使用ViewFlipper的时候,其中一个需求就是要监听每个子view的点击事件,可以为ViewFlipper添加点击事件监听,使用getDisplayedChild()方法获取当前展示的子view的索引值,可以折中实现每个子view的点击监听。原创 2017-02-18 17:04:42 · 4103 阅读 · 0 评论