Android进阶之路
文章平均质量分 71
郭风朴
专业IT影音开发爱好者,从最基本的影音发动机“FFmpeg”到影音大厦“VLC”均有涉猎,愿与有同样爱好的你,在IT路上一直走下去。
音视频技术和营销领域骨灰级玩客
展开
-
Android 图片文件读取
Android图片读取的正确方式。 以下为原文连接 Android图片打开的正确方式转载 2018-05-16 12:28:58 · 1005 阅读 · 0 评论 -
Android中使用include标签和merge标签重复使用布局
1.使用 标签来重用layout代码如果在一个项目中需要用到相同的布局设计,可以通过 标签来重用layout代码,该标签在Android开发文档中没有相关的介绍。在android主屏程序中 用到了这个标签: [xhtml] view plain copy com.android.launcher.Workspace android:id=原创 2016-12-08 17:15:39 · 1440 阅读 · 0 评论 -
关于android中线程,进程,组件,app的理解
Android系统是一座房子,有一个正常运行的公司进驻这所座子cpu是这家公司的老板进程是公司中的办公室,办公室不干活线程是办公室中的员工,干活的永远是员工一间办公室中可有多个员工,并且办公室有个活动对外的人员叫主线程公司肯定会有很多职能部门activity service provider brocastrecive 都是职能部门现在公司有个客户有个转载 2016-12-08 08:27:10 · 494 阅读 · 0 评论 -
Android中pull解析和生成xml数据到一个字符串中
本文沿用上文Android中用pull解析并生成xml文件,本文的基本代码都是沿用上文的,只是在函数中作了小小的修改。有不明之处,请参考上文。这里就不多废话了,直接切入正题。 1修改getLock函数如下: 这里只做了少许修改。getLock函数参数修改,因为上文中将从.xml文件中读取数据,所以要有一个输入流,而本文是从字符串中读取xml数据;设置输入流的修改:pullParse转载 2016-10-20 14:09:49 · 535 阅读 · 0 评论 -
android基础---->XMl数据的解析
在网络上传输数据时最常用的格式有两种,XML和JSON,下面首先学一下如何解析XML格式的数据,JSON的解析可以参见我的博客(android基础---->JSON数据的解析)。解析XML 格式的数据其实也有挺多种方式的,本节中我们学习比较常用的两种,Pull解析和SAX 解析。 目录导航 Pull解析的用法 Pull解析的代码 Sax解析的用法 Sax解析的代码 Sax与Pu转载 2016-10-20 14:08:56 · 619 阅读 · 0 评论 -
Android中去掉标题栏的几种方法(三种)
本文给大家带来了三种android去掉标题栏的方法,都非常不错,对android 去掉标题栏的方法感兴趣的朋友一起通过本文学习吧1.在java代码中(SplashActivity继承AppCompatActivity时无效) 2.在manifest.xml中改Theme3.先在style.xml中自定义style1234转载 2016-10-03 16:54:42 · 559 阅读 · 0 评论 -
Android Gson解析json详解
目前解析json有三种工具:org.json(Java常用的解析),fastjson(阿里巴巴工程师开发的),Gson(Google官网出的),解析速度最快的是Gson,下载地址:https://code.google.com/p/google-gson/ 什么是JSON:JSON即JavaScript Object Natation, 它是一种轻量级的数据交换格式转载 2016-10-02 17:05:09 · 746 阅读 · 0 评论 -
Android studio gradle导入库的方法
相比于常规方法,在Android 方法编程导入库文件 有下面的方便我们使用下面的方法在国内可能走不通的原因是,Google ,gitHub等一些网站被墙了,导致没法下载而失败,下面是一个具体的例子。这几天,因为项目的需要,接触了Google的Gson库,发现这个东西很好用,遂记下简单的笔记,供以后参考。至于Gson是干什么的,有什么优点,请各位同学自行百度。话不多说,切入正原创 2016-10-02 17:49:43 · 826 阅读 · 0 评论 -
安卓Android studio国际化方法插件安装---快速翻译工具
internationalization (国际化)简称 i18n,因为在i和n之间还有18个字符,localization(本地化 ),简称L10n。一般用语言_地区的形式表示一种语言,如 zh_CN, zh_TW.各国语言缩写 http://www.loc.gov/standards/iso639-2/php/code_list.php国家和地区简写 http:原创 2016-09-30 09:51:48 · 6256 阅读 · 1 评论 -
Android Fragment(一)之onResume不执行
相信从事Android开发的时候都会遇到一种需求,就是重到某个页面的时候需要刷新下数据或者其他的业务逻辑,这个时候我们都会想到onResume,但有时候当我们在Fragment中的onResume上调用某个方法并重回到该Fragment之后,却发现onResume没有被调用,正是自己在开发上也遇到同样的问题,所以在此作出一些总结,方便日后查询1、Activity嵌套多个Fragment原创 2016-11-05 19:45:37 · 2082 阅读 · 0 评论 -
EventBus使用详解(二)——EventBus使用进阶
一、概述前一篇给大家装简单演示了EventBus的onEventMainThread()函数的接收,其实EventBus还有另外有个不同的函数,他们分别是:1、onEvent2、onEventMainThread3、onEventBackgroundThread4、onEventAsync这四种订阅函数都是使用onEvent开头的,它们的功能稍有不同,在介绍不同之前先介转载 2016-09-28 13:48:47 · 104 阅读 · 0 评论 -
EventBus使用详解(一)——初步使用EventBus
一、概述EventBus是一款针对Android优化的发布/订阅事件总线。主要功能是替代Intent,Handler,BroadCast在Fragment,Activity,Service,线程之间传递消息.优点是开销小,代码更优雅。以及将发送者和接收者解耦。1、下载EventBus的类库源码:https://github.com/greenrobot/EventBus2、基本使用转载 2016-09-28 13:43:36 · 309 阅读 · 0 评论 -
快速Android开发系列通信篇之EventBus
快速Android开发系列通信篇之EventBus先吐槽一下博客园的MarkDown编辑器,推出的时候还很高兴博客园支持MarkDown了,试用了下发现支持不完善就没用了,这次这篇是在其他编辑器下写的,复制过来后发现。。太烂了。怎么着作为一个技术博客社区,对代码的支持应该完善一下吧,`行内代码块`不支持就算了,代码段内还不能有空行,一有空行就识别不了了。而且试着用MarkDown发了篇草稿转载 2016-09-28 13:41:00 · 373 阅读 · 0 评论 -
Android EventBus深入了解实战
转载请表明出处:http://blog.csdn.net/lmj623565791/article/details/40794879,本文出自:【张鸿洋的博客】1、概述最近大家面试说经常被问到EventBus,github上果断down了一份,地址:https://github.com/greenrobot/EventBus,的确是个不错的框架,主要用于事件的发布和订阅。EventBu转载 2016-09-28 13:25:44 · 530 阅读 · 0 评论 -
Java下利用Jackson进行JSON解析和序列化
Java下常见的Json类库有Gson、JSON-lib和Jackson等,Jackson相对来说比较高效,在项目中主要使用Jackson进行JSON和Java对象转换,下面给出一些Jackson的JSON操作方法。一、准备工作首先去官网下载Jackson工具包,下载地址http://wiki.fasterxml.com/JacksonDownload。Jackson有1.x系列和2.x系转载 2016-10-13 11:40:23 · 516 阅读 · 0 评论 -
Android怎么实现Linearlayout的垂直分割线?
"http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:gravity转载 2016-10-11 12:49:37 · 1282 阅读 · 0 评论 -
android 开发 命名规范
标识符命名法标识符命名法最要有四种:1 驼峰(Camel)命名法:又称小驼峰命名法,除首单词外,其余所有单词的第一个字母大写。2 帕斯卡(pascal)命名法:又称大驼峰命名法,所有单词的第一个字母大写3 下划线命名法:单词与单词间用下划线做间隔。4 匈牙利命名法:广泛应用于微软编程环境中,在以Pascal命名法的变量前附加小写序列说明该变量的类型。 量的取名方转载 2016-12-09 10:46:09 · 446 阅读 · 0 评论 -
Android开发界面显示慢-过度绘制优化
本文原文链接:http://www.cnblogs.com/liuling/p/2015-10-08-2.html作者名:残剑如果一个布局十分复杂,那么就需要来排查是否出现了过度绘制,如果出现了,那么很可能会造成刷新率下降,造成卡顿的现象。那么什么是过度绘制呢?过度绘制就是在同一个区域中叠加了多个控件。这就像小时候我们画画,白纸就是没有绘制的画板原创 2017-02-06 10:42:14 · 3876 阅读 · 0 评论 -
RxJava(RxAndroid)基本使用入门
前言 RxAndroid是RxJava在Android上的一个扩展,大牛JakeWharton的项目。据说和Retorfit、OkHttp组合起来使用,效果不是一般的好。而且用它似乎可以完全替代eventBus和OTTO,这么牛的东西当然要研究研究了 ,看看它到底有多厉害。正文相关资源 RxJava的GitHub地址:https://github.com/ReactiveX转载 2017-06-01 14:50:18 · 495 阅读 · 0 评论 -
Android开发常用开源框架:图片处理
1. 图片加载,缓存,处理框架名称功能描述Android Universal Image Loader一个强大的加载,缓存,展示图片的库,已过时Picasso一个强大的图片下载与缓存的库Fresco一个用于管理图像和他们使用的内存的库Glide一个图片加载和缓存的库,使用的App有:网易新闻Gl原创 2017-05-24 11:10:33 · 983 阅读 · 0 评论 -
Android app应用多语言切换功能实现
最近在做一个多语言切换的功能,类似于微信的语言切换,搜了下资料基本上都是以下这种: 1. 实现的效果和微信类似,在设置界面打开切换语言的界面,选择语言后重启 HomeActivity,语言切换完成,下次重新打开 App ,也是用户设置的语言。2. 实现步骤1. 添加多语言文件在不同的 value 文件夹下(例如 value 、value-en、v转载 2017-05-12 10:01:31 · 627 阅读 · 0 评论 -
SurfaceView和TextureView区别分析
SurfaceView和TextureViewSurfaceView和TextureView都继承自android.view.View类。它们可以从单独的线程中绘制和渲染,这是与其他视图的主要区别。 Crosswalk单独使用绘图功能,通过专用GPU线程大大提高渲染性能。SurfaceView提供嵌入视图层次结构内部的专用绘图表面。你可以控制这个曲面的格式和大小; Surf原创 2017-04-05 10:05:00 · 1719 阅读 · 0 评论 -
总结一下Android中主题(Theme)的正确玩法
本文为转载,原文出处:http://www.cnblogs.com/zhouyou96/p/5323138.html总结一下Android中主题(Theme)的正确玩法在AndroidManifest.xml文件中有Android:theme="@style/AppTheme">,其中的@style/AppTheme是引用的res/values/styles.xml转载 2017-03-04 11:57:35 · 454 阅读 · 0 评论 -
Android App优化之网络优化
互联网时代, App作为于用户交互的端, 可以说实际上是一个界面, 产品的业务, 服务都是由Server提供的. 而App与Server的交互依赖于网络, 故而网络优化, 也是我们的App优化中不可缺少的一个优化项.1, 网络连接对用户的影响App的网络连接对于用户来说, 影响很多, 且多数情况下都很直观, 直接影响用户对这个App的使用体验. 其中较为重要的几点:流量Ap转载 2017-02-06 18:02:16 · 711 阅读 · 0 评论 -
Android App优化之电池省着用
电量使用优化, 基本上是我们最不怎么关注的一项优化. 可能很多公司连QA/Tester也不会关注测试App电量的使用. 一般来说开发和测试的测试设备也一直是连着USB处于充电状态的, 感官上也体会不到电量的损耗.然而, 对于用户来说, 实际上App的电量损耗也是用户体验的一个方面. 特别是当今人们对移动设备的依赖度越来越高, 电量也是用户特别关注的.今天我们就来聊聊Android App的转载 2017-02-06 17:52:25 · 932 阅读 · 0 评论 -
Android App优化之内存优化(序)
引言系列终于走到了内存这里了.内存问题, 一直是Android App开发中比较困扰的问题. 灾难性, 难以复现, 难以定位. 内存管理的知识也相对生涩, 很多工具的使用需要对一些内存相关的专有名词有一定了解, 例如GC Roots, Heap, Stack, Shallow Size, Retained Size, Depth等等.计划整理了之前的笔记, 也查阅了相关资料, 发现这块转载 2017-02-06 17:48:51 · 394 阅读 · 0 评论 -
Android App优化之消除卡顿
前文App优化之ANR详解中说到的ANR基本是属于App中卡,慢的极致了, 属于不可用的状态了. 然而, 现实中有很多的App卡顿是不会产生ANR的, 但是又是用户可以感知的, 给人感觉我们的App运行非常慢, 影响用户体验.这节我们就来聊聊App中的卡顿现象.1, 感知卡顿用户对卡顿的感知, 主要来源于界面的刷新. 而界面的性能主要是依赖于设备的UI渲染性能. 如果我们的UI设计过于转载 2017-02-06 17:47:14 · 713 阅读 · 0 评论 -
Android App优化之ANR详解
原计划将本文作为这个系列的一个承上启下点, 对前面几篇作一个小总结, 聊聊App流畅度和快速响应的话题.粗一缕, 发现内容还是很多, 暂且拆成几篇来慢慢写吧, 勿怪~今天先来聊聊ANR.1, 你碰到ANR了吗在App使用过程中, 你可能遇到过这样的情况:ANR恭喜你, 这就是传说中的ANR.1.1 何为ANRANR全名Application Not Resp原创 2017-02-06 17:41:13 · 506 阅读 · 0 评论 -
Android App优化之Layout怎么摆
欲善其事, 先利其器. 分析布局, 就不得不用到Hierarchy Viewer了.本文工具使用皆以GithubApp的详情界面RepoDetailActivity为例说明.为了不影响阅读体验, 对应的布局文件activity_repo_detail.xml的代码放在文末1, Hierarchy Viewer怎么用Hierarchy发音 [美: 'haɪərɑrki]转载 2017-02-06 17:39:35 · 613 阅读 · 0 评论 -
Android App优化之提升你的App启动速度之实例挑战
1, 代码分析以之前写的Github App为例.因为这个App集成了Bugly, Push, Feedback等服务, 所以Application的onCreate有很多第三方平台的初始化工作...public class GithubApplication extends MultiDexApplication { @Override public void on转载 2017-02-06 17:32:56 · 861 阅读 · 0 评论 -
Android App优化之提升你的App启动速度之理论基础
1, 欲善其事, 先利其器论语有云: 工欲善其事,必先利其器. 要想提升App的启动速度, 我们需要先找到拖后腿的点, 要想找到这些点, 我们就需要借助我们的工具了.前文提到了很多工具, 今天我们使用Traceview来分析我们的启动过程.1.1 Traceview介绍Traceview是一个性能分析工具, 主要是分析当前线程情况, 各个方法执行时间等. 如下:trac转载 2017-02-06 17:31:03 · 391 阅读 · 0 评论 -
Android App优化之性能分析工具
今天聊下个人比较惯用的一些App性能测试和分析工具, 先上个图:![性能分析工具]tools_mind_node本文暂不对工具的使用做过多的深入.在后续的具体实例中会具体说明怎么用这些工具来达成分析目的和解决问题的.1, 官方工具一般来说, 学习一门新的技术, 最应该做的就是阅读其官方文档, 那是最权威的.Android本身给我们提供了很多App性能测试转载 2017-02-06 17:21:31 · 512 阅读 · 0 评论 -
Android ANR产生的原因及如何避免
在Android上,如果你的应用程序有一段时间响应不够灵敏,系统会向用户显示一个对话框,这个对话框称作应用程序无响应(ANR:Application Not Responding)对话框。用户可以选择“等待”而让程序继续运行,也可以选择“强制关闭”。所以一个流畅的合理的应用程序中不能出现anr,而让用户每次都要处理这个对话框。因此,在程序里对响应性能的设计很重要,这样系统不会显示ANR给用户。默认原创 2016-08-05 14:55:09 · 3227 阅读 · 0 评论 -
Android Studio编译输出apk文件修改文件名
用Android Studio 打包App时生成的名称默认是 app-release.apk这样的名字我这里使用Gradle 配置文件修改默认命名格式以更直观管理 我现在格式是这样的我现在格式是这样的 包名_版本名称_生成时间的哈希-release|debug.apk 例如 com.demo.test_1.0.0.0_480550181-release.apk实转载 2016-10-11 08:23:05 · 1294 阅读 · 0 评论 -
Android 7.0行为变化—开发者应该关注的
Android 7.0行为变化—开发者应该关注的(官网同步翻译)版权声明:转载必须注明本文转自严振杰的博客: http://blog.yanzhenjie.com如果想了解更多Android7.0的内容,可以顺便再看看Android7.0写给开发者的一封信(官网同步翻译)。如果你的英文够好,推荐你阅读官网文章: Android 7.0 Behavior ChangesA转载 2016-09-19 08:49:39 · 1166 阅读 · 0 评论 -
Android Handler中的handleMessage方法和post方法之源码剖析 及UI更新方法
我们都知道,在子线程中进行UI操作(更新UI控件)包括以下四种方法:1.Handler的handlerMessage()方法。2.Handler的post()方法。3.View的post()方法。4.Activity的runOnUiThread()方法。本文重点分析前两种方法,后面两种稍微说一下。在说第一个方法之前,让我们先来看张图片(图片来源于http://my.oschin转载 2016-08-05 15:18:54 · 1471 阅读 · 0 评论 -
Android性能优化策略
本篇主要是对 google推出的性能优化典范 进行一个通篇的整理… 主要在于一些具体的优化技巧、至于 60fps、掉帧、gc、内存抖动、阈值…等等这些性能术语的概念里面不做多概括,请自行查阅…本篇从以下几点延伸扩展…绘制/渲染优化布局的结构避免复杂的View层级。布局越复杂就越臃肿,就越容易出现性能问题,寻找最节省资源的方式去展示嵌套的内容; 尽量避免在视图层级的顶层使用相转载 2016-06-20 14:32:10 · 711 阅读 · 0 评论 -
Android中常用的五种数据存储方式
第一种: 使用SharedPreferences存储数据适用范围:保存少量的数据,且这些数据的格式非常简单:字符串型、基本类型的值。比如应用程序的各种配置信息(如是否打开音效、是否使用震动效果、小游戏的玩家积分等),解锁口 令密码等核心原理:保存基于XML文件存储的key-value键值对数据,通常用来存储一些简单的配置信息。通过DDMS的File Explorer面板,展开文件浏转载 2016-06-20 13:41:40 · 857 阅读 · 0 评论 -
详解 Android 性能优化
为什么关注性能对于一款APP,用户首先关注的是 app的性能,而不是APP本身的属性功能,用户不关心你是否是搞社交,是否搞电商,是否是一款强大的美图滤镜app,用户首先关注的是 性能—-性能不好,用户会直接卸载,在应用市场给一个恶狠狠得差评,小则影响产品口碑,大则影响公司的品牌和声誉,作为程序员,app的性能更应该作为我们关注的一个功能,而不是出了问题 才去门头苦恼加班加点的负担。老实原创 2016-06-20 13:33:06 · 4260 阅读 · 0 评论 -
Android缓存机制&一个缓存框架推荐
1、先推荐一个轻量级缓存框架——ACache(ASimpleCache)ACache介绍:ACache类似于SharedPreferences,但是比SharedPreferences功能更加强大,SharedPreferences只能保存一些基本数据类型、Serializable、Bundle等数据。而Acache可以缓存如下数据:普通的字符串、JsonObject、JsonArray、Bi转载 2016-06-20 13:57:14 · 1751 阅读 · 2 评论