Android进阶
文章平均质量分 81
Tamic大白
90后充满朝气,自由,乐观,向上. 自信的... Github: https://github.com/Tamicer ,微信公众号:开发者技术前线,简书:http://www.jianshu.com/users/3bbb1ddf4fd5/latest_articles
展开
-
安卓TV开发(三) 移动智能设备之实现主流TV电视盒子焦点可控UI
前言:移动智能设备的发展,推动了安卓另一个领域,包括智能电视和智能家居,以及可穿戴设备的大量使用,但是这些设备上的开发并不是和传统手机开发一样,特别是焦点控制和用户操作TV上有很大的区别,本系列博文主要用TV播放器的实现去了解下在智能设备上的开发的相关技术。本次实现主流的九宫格UI,并由遥控器方向键控制view焦点移动,到达边缘进行翻页效果。原创 2015-06-11 20:17:22 · 8646 阅读 · 3 评论 -
Android基于JsBridge封装的高效带加载进度的WebView
Tamic http://blog.csdn.net/sk719887916/article/details/52402470概述从去年4月项目就一直用起了JsBridge,前面也针对jsBridge使用姿势介绍过一篇入门篇,《Android JsBridge实战 打造专属你的Hybrid APP》,本篇接着继续深入,通过再次优化封装,大大优化了部分代码,简化上层调用流程,快速部署你的Hyb原创 2016-09-01 18:36:00 · 15145 阅读 · 6 评论 -
安卓TV开发(六) 移动智能终端UI之实现类似GridView的焦点控制FocusView框架
到这里,所有关于智能设备的UI绘制技巧以及全部讲完了,回顾五篇文章,如果成为一个自己定义布局或者控件高手,我们不仅要掌握安卓view的生命周期,事件的机制,动画的类型,还要有java Swiing绘图功底,而且还要有一定的设计思想功底,这样自己写出的view才能让别人加以利用和扩展,总之学习是循环渐进,不断提高的。虽然本次Foucus能满足大部分非触摸屏设备上的UI需求,但是万变不离其宗,更多好的功能还需要朋友们自己挖掘和扩展。原创 2014-10-13 14:35:32 · 8088 阅读 · 2 评论 -
Retrofit,Okhttp对每个Request统一动态添加header和参数(五)
文/Tamic 地址:http://blog.csdn.net/sk719887916?viewmode=listHeaderHow to Add header to Every Request 添加统一通用header, 通用参数,Retrofit 2 — How to Add Query Parameters to Every Request原创 2016-08-12 10:43:58 · 25806 阅读 · 4 评论 -
Retrofit 2.0 超能实践(四),完成大文件断点下载
作者:码小白 文/CSDN 博客 本文出自:http://blog.csdn.net/sk719887916/article/details/51988507 码小白通过前几篇系统的介绍和综合运用,忘记介绍文件下载功能了,有朋友问到,目前APP文件下载主要有断点续传,多线程并发下载,多类型下载,今天就介绍下其Retrofit下载文件功能。Retrofit 2.0 超能实践,完美原创 2016-07-21 22:54:28 · 17735 阅读 · 12 评论 -
[Gradle系列]Gradle打包apk多版本,多渠道,多环境,多功能,多模块随心所欲
Tamic: http://blog.csdn.net/sk719887916/article/details/53224544开始上篇Gradle发布Module(Maven)到jcenter, 并构建自己的企业Maven私服介绍了怎样从本地module发布自己的maven包到JCenter,包括怎样构建远程maven企业私服,既然有了自己的maven包,对于后期出包版本迭代比中相对容易控制版本原创 2016-11-30 18:38:47 · 4126 阅读 · 3 评论 -
Retrofit/OkHttp API接口加固技术实践(下)
作者/Tamic http://www.tamicer.com上节加固介绍了APi单纯Post用对称加密(Base64 为列子)加密方式,这种加密方式还是存在一定的风险,加密效率虽高,但易破解,本节将介绍怎么用非对称加密 来加解密okhttp的数据,本文采用RSA加密算法为栗子。对称加密对称加密是最传统的加密方式,比上非对称加密,缺少安全性,但是它依旧是用的比较多的加密方法。 对称加密采用原创 2017-03-23 20:24:33 · 5849 阅读 · 3 评论 -
Retrofit 2.0 超能实践(三),轻松实现文件/多图片上传/Json字符串
通过前两篇姿势的入门Retrofit 2.0 超能实践,完美支持Https传输Retrofit2.0 完美同步Cookie实现免登录通过对Retrofit2.0的前两篇的基础入门和案例实践,掌握了怎么样使用Retrofit访问网络,加入自定义header,包括加入SSL证书,基本的调试基础,coolkie同步,但很多需求需要文件的上传,今天主题就来分享怎么用Retrofit2.0 上传文件原创 2016-06-24 20:08:35 · 35881 阅读 · 23 评论 -
Android AppUasge统计一招制敌
Tamic/文 Google从 API 21 新增了接口 android.app.usage , 通过这个api我们可以统计到每个app的使用情况,启动次数,启动时间等,也可以判断是否前后台,比较方便,今天就来深入的学习一下 。Google从 API 21 新增了接口 android.app.usage , 通过这个api我们可以统计到每个app的使用情况,启动次数,启动时间等,也可以判断是原创 2017-05-02 23:50:33 · 7476 阅读 · 9 评论 -
Retrofit2.0+ RxJava 优雅的取消重复避免并取消请求(十一)
Tamic/文 地址:http://blog.csdn.net/sk719887916/article/details/52132106前几篇主要介绍了retrofit基本使用,结合rxJava的案列,以及RxJava结合retrofit的封装,包括公用参数,局部参数请求头添加,缓存,https, 文件上下传,结果解析,异常处理等,还有一些技巧,那么还有一个比较关键的是取消问题。两者结合技原创 2017-01-16 16:18:11 · 29110 阅读 · 9 评论 -
LeakCanary源码探讨- 如何检测 Activity 是否泄漏
OOM 是 Android 开发中常见的问题,而内存泄漏往往是罪魁祸首。 为了简单方便的检测内存泄漏,Square 开源了 LeakCanary,它可以实时监测 Activity 是否发生了泄漏,一旦发现就会自动弹出提示及相关的泄漏信息供分析。 本文的目的是试图通过分析 LeakCanary 源码来探讨它的 Activity 泄漏检测机制。原文: http://wingjay原创 2017-06-22 11:42:09 · 3448 阅读 · 2 评论 -
Retrofit2.0 ,OkHttp3完美同步持久Cookie实现免登录(二)
通过对Retrofit2.0的<Retrofit 2.0 超能实践,完美支持Https传输>基础入门和案例实践,掌握了怎么样使用Retrofit访问网络,加入自定义header,包括加入SSL证书,基本的调试基础,但是正常的开发中会涉及cookie同步问题,可以实现一些自动或免登录登陆问题,接下来进入cookie同步姿势CookieCookies是一种能够让网站服务器把少量数据储存到客户端的硬盘或内原创 2016-06-17 16:00:19 · 32866 阅读 · 30 评论 -
安卓Tv开发(二)移动智能电视之焦点控制(按键事件)
Instrumentation提供了丰富的以send开头的函数接口来实现模拟键盘和鼠标。本系列将实现遥控器焦点控制,模拟鼠标点击,视频在线直播,和手机当遥控器等功能,带给你不一样的开发体验。原创 2015-03-31 16:38:00 · 28299 阅读 · 7 评论 -
Retrofit/Okhttp Https兼容到Http降级处理实践(信任所有https)
Tamic /http://blog.csdn.net/sk719887916/article/details/51597816 尊重原创,授权请访问:http://www.banquanyin.com/u/101701130004540之前出的一篇文章 - Retrofit 2.0 超能实践,完美支持Https传输详细介绍了使用okhttp支持https的步骤,很多人要的是所以一切Http原创 2017-04-17 22:11:11 · 4681 阅读 · 2 评论 -
Picasso 详解,完美兼容 OkHttp3.3,缓存优化,支持https
Tamic 专注移动开发!更多文章请关注http://www.jianshu.com/p/6241950f9dafPicasso加载图片,预加载,picasso支持Https,并完美支持okhttp3.3,原创 2016-10-18 20:12:50 · 4107 阅读 · 0 评论 -
Retrofit 2.0 超能实践(一),okHttp完美支持Https传输
http: //blog.csdn.net/前阵子看到圈子里Retrofit 2.0,RxJava(Android), OkHttp3.3 ,加之支持android和 iOS 的React Native , 火的不要不要的, 2015年新技术一大波来袭 ,看着自己项目还在用HttpClient, AsyncTask的原生开发 感觉自己已成火星人,实在顶不住内心的自卑压力,加之对新技术的追求,入手移动开发新三剑原创 2016-06-06 19:47:25 · 37766 阅读 · 29 评论 -
RxFile 一款选择多媒体文件精巧的工具类
Tamic/CSDN原创 RxJava对于Java和android开发者已经是耳熟能详的技术了,RxJava的异步通讯技术更是让开发者们青睐,本文就带来一款通过RxJava实现的选择手机相册来获取多媒体的工具RxFile。RxFile是一款从安卓设备获取图片或者视频的工具类,让你的需要读取相册返回图片功能更流畅,并防止ANR现象。RxFile是国外的名叫Tournaris 写的,本文开始介绍怎原创 2017-09-17 16:53:40 · 1639 阅读 · 1 评论 -
Github 错误合集:Failed connect to github.com:8080 || Failed connect to github.com:443; No error
文/skay 地址:http://blog.csdn.net/sk719887916/article/details/40541199开发中遇到github无法pull和push代码问题,原来gitbub需要本地代理因此看错误图解决步骤:查看git代理设置 git config --global http.proxy 如果设置代理则显示一串代理地址查询到当前设置了代理,所以取消代理设置: git原创 2014-10-28 15:48:51 · 5001 阅读 · 2 评论 -
Aandroid 图片加载库Glide 实战(一),初始,加载进阶到实践
有经验的 Android 开发者可以跳过这节,但对于初学者来说,你可能会问自己为什么你想要去用 Glide,而不是自己去实现。转载 2014-10-11 09:55:35 · 1623 阅读 · 0 评论 -
Android PackageManager源码浅析以及静默安装实现方式
实现静默安装** 通过了解了上面pm的简单工作原理,我们就可以想到静默安装的途径通过伪造自己的Pm实现开放的api,并且采用自己的IPackageInstallObserver,说道这里你估计会不明白此类用来干嘛的。此观察者是用来检测apk是否安装的的回调,那么卸载同样有自己的观者这,此通过aidl和pms进行通讯,我们可以从源码copy一份到自己的项目下面原创 2016-01-05 20:26:37 · 9146 阅读 · 7 评论 -
Android 基于MVC的MVVM模式开发
什么是MVVM我们一步步来,从MVC开始。MVC 我们都知道,模型——视图——控制器。为了使得程序的各个部分分离降低耦合性,我们对代码的结构进行了划分。他们的通信方式也如上图所示,即View层触发操作通知到业务层完成逻辑处理,业务层完成业务逻辑之后通知Model层更新数据,数据更新完之后通知View层展现。在实际运用中人们发现View和Model之间的依赖还是太强,希望他们可以绝对转载 2015-12-23 12:38:04 · 2593 阅读 · 1 评论 -
Android 实现高仿iOS桌面效果之可拖动的GridView(上)
1 GridView长按支持拖动排序,并支持Item实时交换。 2 GridView长按Item出现有抖动效果。 3 Item条目有抖动效果,时不需要长按点击就可以进行拖动效果。 4 拖动的Item和被拖动的Item左标完全重合后可新建文件夹 5 长按Item 出现删除按钮,此时点击删除按钮可以任意删除某一item 6 GridView横竖屏排列列数改变,横屏的行数是竖屏幕的列数原创 2014-10-14 11:46:58 · 7705 阅读 · 9 评论 -
Android ViewManger解析 从ViewRoot 源码分析invalidate
Android invalidate() View你不知道的那些事, 好了 该回答以上问题了,view重新绘制时,会进行参数重新加载,会进行重新测量,布局,以绘制的,view的任何一个改变也会触发自己的draw()方法,requestLayout()最终也会执行invalidate(),当然今天我没做介绍,但是你要知道view改变,必定重绘的道理,知道了今天的内容以后我们再来分析requestLayout()过程。原创 2015-09-14 21:37:31 · 3513 阅读 · 0 评论 -
Android ViewManager解读之requestLayout() 详解
看了两篇,终于可以做总结了,还是很多疑问没有解开,那到底invalidate()和requestLayout()有什么区别,当我们通过源码分析得出不管哪个方法都会执行draw(),那么上篇中我也做了细说invalidate(),invalidate()也会执行我们的onmeasure(),layout,draw(),但是它和resquestLayout()的不同之处,他不会清楚我们测量的缓存,当然也不会重新回调measure,但是他会重新走Layout()过程,最终他们的目的都是重新绘制view,但是细微区原创 2015-09-15 15:57:34 · 3818 阅读 · 0 评论 -
Android 面向协议编程 体会优雅编程之旅
Android中面向协议编程的深入浅出http://blog.csdn.net/sk719887916/article/details skay编写说起协议,现实生活中大家第一感觉会想到规则或者约定,确实协议的本意就是一种约束,每个人事物都遵守的准则或法则,如果拿生活中的列子来说 法律本身就是一种协议 每个人自然人去遵守,只有遵守了这个法则,执行法律的法院才会对遵守的人管辖有效,当然前提是你必须是在原创 2016-01-12 09:29:21 · 2066 阅读 · 0 评论 -
Android Widget工作原理详解(一) 最全介绍
讲解怎么创建一个widget,并且给其点击事件,并介绍了其相关的类,以及widget的相关管理。当widget指定其具体的AppWidgetProvider,AppWidgetProvider通过创建RemoteViews来加载视图,其RemoteViews将会调用setRemoteViewsAdapter来设置内部适配器,此适配器也将会继续获取widget管理器调用updateAppWidget()方法,此方法有会用远程视图工厂(RemoteViewsFactroy)来初始化数据并调用其onDataSe翻译 2015-07-12 20:40:30 · 13829 阅读 · 1 评论 -
Android 推送和统计最优轮循(心跳策略)探究实践
http://blog.csdn.net/sk719887916/article/details/51398416 skay亲笔 Android开发中经常会用到周期性执行一个动作的需求,大的场景有推送,统计,即时通讯,小的场景有客户端进行一些小范围的计时器, 统计:客户端不断轮询去请求服务器某个接口,上报数据等 1. 统计方案见《 Android 优质精准的用户行为和日志打捞方案》日原创 2016-05-13 20:50:03 · 4589 阅读 · 0 评论 -
Retrofit2.0+RxJava+Dragger2实现不一样的Android网络架构搭建
Tamic :csdn http://blog.csdn.net/sk719887916Retrofit2.0+RxJava+Dragger2实现不一样的Android网络构架搭转载 2016-09-12 10:33:50 · 2966 阅读 · 1 评论 -
App安全(一) Android防止升级过程被劫持和换包
文/ Tamic 地址/ http://blog.csdn.net/sk719887916/article/details/52233112前言APP 安全一直是开发者头痛的事情,越来越多的安全漏洞,使得开发者越来越重视app安全,目前app安全主要有由以下几部分APP组件安全Android 包括四大组件:Activitie、Service、Content Provider、Broadba原创 2016-08-17 17:46:21 · 14146 阅读 · 11 评论 -
AndroidTV开发(十一)Android Tv Launcher自定义RecyclerView
文/Tamic:http://blog.csdn.net/sk719887916/article/details/53559667前言Android TV Launcher页在RecyclerView出来之前大家用GridView去实现(本人的FocusView)。TV开发有五向键的监听,遥控器hover监听,点击事件等。用GridView去处理焦点是有一定挑战性的,往往会出现不可预料焦点错乱问题。转载 2016-12-10 16:59:52 · 7086 阅读 · 0 评论 -
Android Lollipop 5.0 经典新特性回顾
*Tamic 专注移动开发! 更多文章请关注 http://blog.csdn.net/sk719887916虽然Android已到了7.0 ,但是我们还是不能忘怀视觉革命性改变的5.0,今天回顾下android5.0做出的改变!Android 5.0 Lollipop,这是迄今为止规模最大最为雄心勃勃的 Android 版本!此版本为用户推出了各种崭新的新功能,为开发者则提供了数千个新的原创 2016-09-21 19:46:38 · 1417 阅读 · 0 评论 -
安卓TV开发(九) Android模拟事件 遥控器变身成鼠标来操作TV
Android 模拟事件onclick点击 并实现遥控器模模拟鼠标操作,遥控器变身成鼠标。原创 2014-10-21 18:02:28 · 33739 阅读 · 45 评论 -
Android Studio Gradle 多渠道自动打包,动态修改HostUrl,签名apk,混淆配置详解
Android studio Gradle 多渠道自动打包,动态修改HostUrl,签名apk,混淆配置等原创 2014-10-28 15:47:29 · 4337 阅读 · 1 评论 -
Android Notification 版本适配方案
Notification 介绍见:https://developer.android.com/reference/android/app/Notification.htmlAndroid api 一直对通知栏进行升级! 包括7.0继续改善快捷通知栏,接下来介绍下通知栏不同版本的兼容适配.**Android JELLY_BEAN(16) 通知可以直接new Notification()**...原创 2014-10-28 15:46:04 · 2464 阅读 · 0 评论 -
Android 深入理解Loader机制 让APP轻装上阵
本文简书同步发布,谢谢关注。http://www.jianshu.com/p/8b83b8b6e931Android开发者都经历过APP UI开发不当 会造成overDraw,导致APP UI渲染过慢,但是很多人却没听过overLoad,overLoad一般是由于开发者在主线程操作耗时操作,导致程序变慢 甚至出现的anr的现象,那么android早已为这种现象提供完美的解决方案,就是今天给大家说原创 2016-05-30 19:58:20 · 7300 阅读 · 1 评论 -
安卓TV开发(四) 实现主流智能TV视频播放器UI
前言:移动智能设备的发展,推动了安卓另一个领域,包括智能电视和智能家居,以及可穿戴设备的大量使用,但是这些设备上的开发并不是和传统手机开发一样,特别是焦点控制和用户操作TV上有很大的区别,本系列博文主要用TV播放器的实现去了解下在智能设备上的开发一个app的流程,实现遥控器控制焦点移动,方向键模拟鼠标,并在线完成视频直播,手机当遥控器使用等相关功能。原创 2015-06-15 10:03:26 · 14061 阅读 · 7 评论 -
Flutter 的渲染逻辑及和 Native 通信 (四)
本文首发于 RTC 开发者社区,作者刘斯龙, 5年的 Android 程序员,从事过 AR ,Unity3D,Weex,Cordova,Flutter 及小程序开发作者 github: github.com/liusilong作者 blog:liusilong.github.io/作者 StackOverflow:stackoverflow.com/users/47233…在这篇文章中...转载 2019-04-02 22:34:32 · 1243 阅读 · 2 评论