安卓开发
文章平均质量分 96
lin_t_s
厚积而薄发
展开
-
安卓主题切换
1自定义部分属性1. <?xml version="1.0" encoding="utf-8"?> 2. <resources> 3. <attr name="colorValue" format="color" /> 4. <attr name="floatValue" format="float" /> 5. <attr name="integerValu原创 2016-11-10 10:55:11 · 391 阅读 · 0 评论 -
优化加载gif动画
文章转自:https://mp.weixin.qq.com/s?__biz=MzA3NjA3NTI5Mg==&mid=2656329608&idx=1&sn=9b26e25828112101bd898a521920f998&chksm=84c627fbb3b1aeedc76d711df000a230f8122f920e7eaac8e4ac2beca0502219f2b53e45c6b4&mpshar转载 2016-12-26 15:52:47 · 2299 阅读 · 0 评论 -
Android的硬件加速及可能导致的问题
文章转自:http://blog.chenming.info/blog/2012/09/18/android-hardware-accel/ 问题 在Android 4.0的某些设备上,在View刷新时会出现花屏和屏幕上的某些View错位的现象。 经过调查后发现adb logcat中出现很多OpenGLRenderer: 0x501的错位:09-18 14:34:39.090: DEBUG/Op转载 2016-12-29 10:20:22 · 1082 阅读 · 0 评论 -
初探HTTPS协议
概述HTTP协议属于明文传输协议,交互过程以及数据传输都没有进行过加密,通信双方也没有进行身份验证,通信过程非常容易遭到劫持,篡改等安全问题,为了提高网络传输的安全性,HTTPS应运而生.相比HTTP,HTTPS提供了以下三个特性:数据完整性:内容传输经过完整性校验数据隐私性:内容经过对称加密,每个连接生成一个唯一的加密密钥身份认证:第三方无法伪造服务端(客户端)身份然而HTTPS的工作流程原创 2017-01-13 19:37:44 · 576 阅读 · 0 评论 -
使用keytool生成密钥
上一篇文章我们了解到https的工作流程,今天我们来学一下怎样用keytool进行密钥的生成,下一篇学习怎样使用https。密钥基本信息 先看一下密钥的一些基本信息: 生成密钥//生成密钥keytool -genkey -v -alias tang -keyalg RSA -keypass 123456 -storepass 123456 -keystore D:/workspace/MyHt原创 2017-01-14 17:42:25 · 3262 阅读 · 0 评论 -
安卓使用https进行网络访问
今天最后一天上班,马上就放假了,是不是有点小激动啊!这个假期准备阅读一下第二行代码,额…扯远了,let us back: 前两天写了关于https的工作流程以及如何使用keytool生成密钥并保存到cer文件中,今天学习一下怎样使用https进行网络访问。基本设置 这里我们使用安卓原生的HttpURLConnection进行网络请求,使用我的csdn博客地址模拟http请求,github地址模拟原创 2017-01-15 11:15:51 · 4642 阅读 · 0 评论 -
安卓开发-填坑之路
今天开始把遇到的坑记录在博客中,以后开发遇到了也就easy啦 ……1. 实体类使用Parcelable序列化可能遇到的问题 class not found when unmarshalling 实例化集合:out.writeList(genre);genre = new ArrayList<GoodsCountGenreBean>(); in.readList(genre,原创 2016-12-11 16:29:00 · 716 阅读 · 0 评论 -
安卓性能优化—内存优化
在Java中,内存的分配是由程序完成的,而内存的释放是由垃圾收集器(Garbage Collection,GC)完成的,程序员不需要通过调用函数来释放内存,但也随之带来了内存泄漏的可能,本篇博客,我将介绍内存优化的相关知识。java的内存区域大致分为堆(Heap),栈(Stacks)、方法区(MethodArea);堆(Heap):主要存放new出来的对象以及对象中所有的成员变量和数组,在堆中分配原创 2017-02-16 15:56:17 · 1200 阅读 · 0 评论 -
屏幕适配的前世今生
内容参考博客地址: http://blog.csdn.net/jdsjlzx/article/details/45891551 http://blog.csdn.net/lmj623565791/article/details/49990941 本篇文章主要总结一下开发中的一些屏幕适配的方案,对于一些概念性的知识就略过了;1.屏幕适配基础篇布局文件中使用match_parent、wrap_co原创 2017-02-16 19:15:48 · 1131 阅读 · 0 评论 -
滑动字母定位listview的对应字母的item
效果图:自定义右侧sideBar获取焦点改变背景颜色. 显示有焦点的字母; 主要代码: /** * 重写这个方法 */ protected void onDraw(Canvas canvas) { super.onDraw(canvas); // 获取焦点改变背景颜色. int height = getHeig原创 2016-12-14 10:11:34 · 419 阅读 · 0 评论 -
ANDROID 秒级编译 FREELINE
转自http://stormzhang.com/2016/12/02/android-seconds-build-freeline/什么是 Freeline?Freeline 是蚂蚁金服旗下平台蚂蚁聚宝 Android 团队开发的一款针对 Android 平台的增量编译工具,它可以充分利用缓存文件,在几秒钟内迅速地对代码的改动进行编译并部署到设备上,有效地减少了日常开发中的大量重新编译与安装的耗时,转载 2016-12-09 17:54:11 · 640 阅读 · 0 评论 -
Android实现序列化
一、实现Serializable接口(不需要重写方法)二、实现Parcelable接口(需要重写两个方法) 三、两者传递对象的方式 1. 2. 四、二者的区别原创 2016-12-01 10:04:19 · 278 阅读 · 0 评论 -
谷歌postMan的安装步骤
话不多说直接走起: step1 使用谷歌浏览器,点击右上角选择设置—–>扩展程序–>获取更多扩展程序选项(需要翻墙): step2 在谷歌应用店搜索postman 选择添加到chrome step3 启动Postman开始你的接口测试吧 step4 可以创建快捷方式方便下次运行原创 2016-12-11 11:10:56 · 659 阅读 · 0 评论 -
多渠道打包
概述 一个app我们可能会在不同的应用市场发布,如果一个一个打包,岂不是很慢,下面就跟我来一步一步实现多渠道打包吧,以友盟多渠道打包为例子; 1.基本配置 添加依赖:compile 'com.android.support:appcompat-v7:24.2.1'在清单文件中配置友盟meta-data以及添加权限<uses-permission android:name="android.pe原创 2016-12-11 13:00:32 · 627 阅读 · 0 评论 -
集成tinker热更新
前段时间尝试了一下增量更新,以及hotfix,今天写了一个demo集成腾讯bugly的tinker热更新https://bugly.qq.com/v2/index; step1、添加依赖: 1. 工程中的dependencies依赖:// tinker gradle插件 classpath ('com.tencent.tinker:tinker-patch-gradle-plu原创 2016-12-12 15:23:08 · 1070 阅读 · 0 评论 -
ec环境下的代码混淆
首先将project.properties文件中添加proguard.config=proguard-project.txt 下面开始配置混淆信息: 1 基本配置: 2 v4或者v7包,以及实体类的配置 3 常见的第三方jar包的配置: 4 其他jar包的配置 配置完之后选择Android tools工具导出签名或者未签名的已经混淆的apk文件最后生成prog原创 2016-12-03 17:02:53 · 379 阅读 · 0 评论 -
代码混淆后可能出现的问题
1、ClassNotFoundException,NoSuchMethodError 原因:这种异常会在好多情况下出现,比如:本地代码通过反射调用其他的类,但是经过了混淆之后,就会出现如上异常;调用了JNI之后,C或者C++和java代码进行交互的时候找不到java的类或者方法,导致发生了异常……等等,还有好多。 解决办法:只需要将被调用的java类标注为不混淆即原创 2016-12-05 09:35:12 · 6680 阅读 · 0 评论 -
Android多渠道打包(MFC版本)
文章转自:http://blog.csdn.net/ywl5320/article/details/52539600 因为需要,这一周就跟MFC度过了,主要是用MFC封装Android打包命令实现Android读取到打包。其中主要用到了:C++线程、解析XML文件和写入XML文件、消息传递、字符串解析等知识。还有Android打包命令:获取keystore信息:keytool -list -v -转载 2016-12-07 16:59:34 · 448 阅读 · 1 评论 -
沉浸式状态栏实现
一、系统的方式沉浸式状态栏实现 1.0在代码中加入以下方法 /** * 沉浸式状态栏 */ private void initState() { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT && Build.VERSION.SDK_INT <原创 2016-11-27 16:27:37 · 293 阅读 · 0 评论 -
下载文件新姿势
转自:http://blog.csdn.net/u012209506/相信大多数下载文件都是通过service来后台下载的,今天给大家分享一下使用系统自带DownloadManager来完成下载;DownloadManager的详解请移步http://blog.csdn.net/u012209506/; 这里对DownloadManager进行了封装,加入了运行时权限: 效果图如下: 源码传转载 2017-02-27 17:25:16 · 1317 阅读 · 0 评论