Android开发技术周报 Issue#29

  1. Android内核解读-应用的安装过程 (慕课网android学习小组)

    我们知道,在android手机上安装一个apk很简单,只要打开apk文件,默认就会弹出安装界面,然后点击确定,经过若干秒后,apk就安装成功了,可是你知道apk的安装过程是什么吗?你知道android系统在安装一个apk的时候都干了什么吗?在本文中,将一一解答这个问题。简单来说,apk的安装过程分两步:第一步,将apk文件复制到程序目录下(/data/app/);第二步,为应用创建数据目录(/data/data/package name/)、提取dex文件到指定目录(/data/dalvik-cache/)、修改系统包管理信息。

  2. 给半新人的app开发指南 (@hamber_罗)

    此文献给那些需要的人,不定期更新~

  3. [译]Instagram是如何提升TextView渲染性能的 (@archieyang)

    在IG中,feed是由图片,视频和文字组成的。对于每个图片和视频,我们需要展示对应的图片说明和5条最近的评论。由于用户通常通过图片说明来讲书图片背后的故事,这些图片说明通常是大段复杂的文字,甚至可能包含链接和emoji表情。

  4. 拿到一份开源项目,快速定位感兴趣的功能代码 (@drakeet)

    现在越来越多的开源项目了,令人收藏不暇,有时只是觉得对方的某个 feature 特别喜欢,但很多人可能打开了其代码找了半天找不到关键所在。其实,如果运用了 Android Studio 带给我们的一些查找功能,任何一份新的开源代码摆在我们眼前,我们都可以快速定位到感兴趣的功能代码。

  5. 安卓中的Model-View-Presenter模式介绍 (@泡在网上编代码)

    这是一篇安卓中MVP模式的详细教程,从最简单的例子到最佳实践。本文还介绍了一个让在安卓中使用MVP模式变得非常简单的library。它是不是很简单,我们如何才能从中获益?什么是MVP?View是指显示数据并且和用户交互的层。在安卓中,它们可以是一个Activity,一个Fragment,一个android.view.View或者是一个Dialog。

  6. Android加载不同DPI资源与内存消耗之间的关系 (@Syleee)

    Android 设备在物理尺寸和屏幕密度上都有很大的不同,为了简化多设备的设计方案,就是设定一套分级标准。屏幕密度上的分级标准就是:LDPI、MDPI、HDPI、XHDPI,也就是各种大小的 DPI(Dots per inch)。DPI 就是屏幕像素密度的衡量标准。

  7. 携程App的网络性能优化实践 (@InfoQ)

    在4月23日~25日举行的QCon全球软件开发大会(北京站)上,携程无线开发总监陈浩然分享了《移动开发网络性能优化实践》,总结了携程在App网络性能优化方面的一些实践经验。在2014年接手携程无线App的框架和基础研发工作之后,陈浩然面对的首要工作就是App客户端性能优化,尤其是网络服务性能,这是所有App优化工作的重中之重.

  8. 常见Android Native崩溃及错误原因 (@DroidSec安卓安全中文站)

    Android上的Crash可以分两种:1、Java Crash java代码导致jvm退出,弹出“程序已经崩溃”的对话框,最终用户点击关闭后进程退出。Logcat 会在“AndroidRuntime”tag下输出Java的调用栈。2、Native Crash 通过NDK,使用C/C++开发,导致进程收到错误信号,发生Crash,Android 5.0之前进程直接退出(闪退) , Android 5.0之后会弹“程序已崩溃”的对话框。

  9. Java字节码忍者禁术 (@InfoQ)

    ava语言本身是由Java语言规格说明(JLS)所定义的,而Java虚拟机的可执行字节码则是由一个完全独立的标准,即Java虚拟机规格说明(通常也被称为VMSpec)所定义的。JVM字节码是通过javac对Java源代码文件进行编译后生成的,生成的字节码与原本的Java语言存在着很大的不同

  10. AppCompat 22 新特性 (@makohill)

    构建一个可以跑在不同版本 Android 平台的软件,是非常复杂和耗时的。为了解决这个问题,Android 推出了 Android Support Library (安卓兼容包),让新的UI控件也可以跑在早期的 Android 版本。最近Android Support Library 更新到v22.1,这一版本主要AppCompat做了一些大的调整。

  11. Android 深入理解Android中的自定义属性 (慕课网android学习小组)

    对于自定义属性,大家肯定都不陌生,遵循以下几步,就可以实现:1.自定义一个CustomView(extends View )类 2.编写values/attrs.xml,在其中编写styleable和item等标签元素 3.在布局文件中CustomView使用自定义的属性(注意namespace)4.在CustomView的构造方法中通过TypedArray获取.

  12. Android.mk详解

    Android.mk文件用来向编译系统描述如何编译你的源代码。更确切地说,该文件其实就是一个小型的Makefile。由于该文件会被NDK的编译工具解析多次,因此应该尽量减少源码中声明变量,因为这些变量可能会被多次定义从而影响到后面的解析。

代码&开源库

  1. loadtoast (@泡在网上编代码)

    默认的toast很丑,而且也没有真正提供显示短暂消息的功能。这个库能为toast显示动画反馈,显示到选择按钮或者删除按钮的过度动画。而且toast 的生命周期是完全取决于你的。

  2. WechatLikeBottomTabUI (@伍业雄)

    抄袭微信Android6.0版本底部菜单渐变效果.

  3. squidb (@安卓同学)

    Yahoo 开源的 SQLite 数据库框架,它支持ORM,面向对象语句语言(类似JOOQ)和数据库管理工具,轻量级,同时具有高性能,具体介绍请看Wiki.

  4. android-kotlin-samples

    kotlin例子库。

  5. 带壳截图

    这是一个为手机截屏而服务的图片合成工具,基于 Device Frame Generator 开源项目二次开发。它可以为平淡无奇的截屏图片套上等比例的手机设备外框,生成一张媲美广告的渲染图。

视频

  1. Android Performance Patterns : Season 2 (@陈启超_V)

    带头大哥Colt即将带来《Android Performance Patterns : Season 2》有Bitmap的最佳实践,迭代器性能以及如何使用LINT等。

新闻

  1. 谷歌准备Android Wear重大更新

    谷歌今天宣布将为Android Wear推出重大更新,让Android手表使用更加容易。目前大多数Android智能手表默认都采用省电模式的表盘界面,但是,有时用户需要默认获得其它信息,Android Wear更新之后,现在将允许用户选择默认始终显示信息的应用程序,比如地图位置或者购物清单等。

时间: 2024-11-27 10:38:21

Android开发技术周报 Issue#29的相关文章

Android开发技术周报 Issue#69

新闻 Android N或取消应用抽屉 设计更趋近iOS 设计也在进化 对升级速度忍无可忍 谷歌或将收回安卓控制权 坑否 Google为手表App开发者推出了Google Play Services中国特别版 看起来很美好 Google发布J2ObjC 1.0:将Java转换为Objective-C 黑科技 2020年的Android系统会是什么样? 可能是非常酷的 教程 Android开发:最详细的 Toolbar 开发实践总结 详解有图有代码 Facebook如何采集其Android应用性能

Android开发技术周报 Issue#66

好消息,Android 开发技术周报开通了邮件订阅,赶快来订阅吧,订阅请戳我戳我戳我,还有还有现在也可以推荐资源给Android开发技术周报了,推荐资源请戳我戳我戳我 新闻 在 Google 看来,应用商店都将消亡,而搜索永存 搜索才是王道,让用户在 Google 搜索结果里直接安装 App 教程 Android Scroller完全解析,关于Scroller你所需知道的一切 郭神新作,详解 Scroller Android应用安全开发之源码安全 实用 APK 反调试技巧 如何自学Android

Android开发技术周报 Issue#27

教程 Android开发技术前线第五期 (@MrSimp1e) 深入Android图形管道.Romain Guy的性能优化案例.图片加载框架Glide.模仿iOS的模糊视图,都是些不错的文章. Android内存优化之MAT工具使用教程系列 (@高建武_Gracker) 正所谓工欲善其事,必先利其器,在对Android应用进行内存优化MAT(Memory Analyzer Tool)是一把必不可少的利剑,MAT一个基于Eclipse的内存分析工具,是一个快速.功能丰富的JAVA heap分析工具

Android开发技术周报 Issue#64

教程 AndroidFlux-异步请求和网络 在移动开发中,异步网络操作必不可少,本篇着重介绍在Flux模式中如何处理异步操作的问题,并深入一些细节,比如如何在异步操作时显示异步状态.另外,网络操作仅仅是异步操作的一种,最后扩展ActionCreator的语义来处理更多的业务逻辑. Tricking Android MemoryFile MemoryFile是android在最开始就引入的一套框架,其内部实际上是封装了android特有的内存共享机制Ashmem匿名共享内存,简单来说,Ashme

Android开发技术周报 Issue#24

教程 细数Android系统那些DOS漏洞 Android系统存在一些漏洞可导致系统重启,当然让系统重启只是一种现象,这些漏洞有的还可以权限提升.执行代码等.本文以重启这个现象为分类依据,牵强的把这些漏洞放在一块来看.下面对这些漏洞的成因和本质进行简单的分析,并尽量附上编译好的poc和漏洞利用演示视频. Android安全系列 此系列包含:Android Activtity Security.Android Content Provider Security.Android Broadcast

Android开发技术周报 Issue#67

新闻 OpenJDK将对Android开发产生怎样的影响? 在2015年年底,InfoQ曾提到Google已经决定在Android中使用OpenJDK,以取代基于Harmony实现的Java库.尽管这条消息在宣布时恰逢圣诞期间,但Google的这一决定还是在互联网上引起了很大的反响,我们将在本文中对于这些观点进行一次总结. 教程 ReactNative For Android 项目实战总结 Android Qzone 6.1版本在情侣空间涉水React Native,以动态插件方式将情侣空间进行

Android开发技术周报 Issue#17

ART运行时垃圾收集(GC)过程分析 ART运行时与Dalvik虚拟机一样,都使用了Mark-Sweep算法进行垃圾回收,因此它们的垃圾回收流程在总体上是一致的.但是ART运行时对堆的划分更加细致,因而在此基础上实现了更多样的回收策略.不同的策略有不同的回收力度,力度越大的回收策略,每次回收的内存就越多,并且它们都有各自的使用情景.这样就可以使得每次执行GC时,可以最大限度地减少应用程序停顿.本文就详细分析ART运行时的垃圾收集过程. 如何调试 Android 上 HTTP(S) 流量 在And

Android开发技术周报 Issue#15

教程 Android Studio系列教程五--Gradle命令详解与导入第三方包 Android Studio + Gradle的组合用起来非常方便,很多第三方开源项目也早都迁移到了Studio,为此今天就来介绍下查看.编译并导入第三方开源项目的方法. 打造极致Material Design动画风格Button 在我的文章中曾经有两篇关于Material Design风格的按钮实现.在第一章中只是简单的实现了动画的波纹效果,而在第二篇中对此进行了一定的扩充与优化,最后实现可以自动移动到中心位置

Android开发技术周报 Issue#21

教程 Android模块化编程之引用本地的aar 随着项目越来越多,代码的复用就变得异常重要,这时候就要进行模块化编程,就是把一些通用的组件或者类库做成单独的模块,其他项目直接进行引用就好.针对Android开发最常见的就是Android Library,在Gradle出现之前引用Android Library的方式也很繁琐,但是有了Gradle一切变得非常简单方便. 微信的jsbridge实现 android的webview api中有开放过一个addJavaScriptInterface函数