[第29期]Android周报

文章/教程 Android 打包的那些事 我们都知道 Gradle 的功能很强大,但是具体能干啥呢?本文主要写了 Gradle 中非常实用的小技巧,也是一个实际使用 Gradle 的启发。 让App像Web一样发布新版本 这是一个 Android 应用的热修复的解决方案,利用的 Android 支持的多 Dex 包的原理,把修复的类打包到一个单独的 Dex 包中, »

React Native 中组件的生命周期

概述 就像 Android 开发中的 View 一样,React Native(RN) 中的组件也有生命周期(Lifecycle)。所谓生命周期,就是一个对象从开始生成到最后消亡所经历的状态,理解生命周期,是合理开发的关键。RN 组件的生命周期整理如下图: 如图,可以把组件生命周期大致分为三个阶段: 第一阶段:是组件第一次绘制阶段,如图中的上面虚线框内,在这里完成了组件的加载和初始化; 第二阶段:是组件在运行和交互阶段,如图中左下角虚线框, »

独立博客终于回来了

网站风格又大变了,不要惊讶,这才是它本来应该的样子。 因为网站备案的原因,经历了博客从 Ghost 迁移到 Hexo,博客托管在 GitCafe 的 Pages 服务上面,到现在已经快两个月了。 今天终于收到消息通知网站备案通过了,终于又可以假设这个独立博客了。不是因为 Hexo + GitHub/GitCafe 不好,而是因为比较喜欢 Ghost。 以前因为 Feeds 不能用, »

React Native for Android 发布独立安装包

昨天发布了 ZhiHuDaily-React-Native 项目,有不少人问有没有 APK 包来体验一下。做了 React Native Android 开发的话,就会知道,开发的时候必须启动个 JS Server,然后要让手机连接这个 Server,否者会出现那个"吓人"的红色屏幕。这个我在第一篇 React Native 文章中就提到过。 如果要发布一个 React »

React Native for Android 实践 -- 实现知乎日报客户端

React Native for Android 的发布,对一个 Android 开发者来说还是有相当的吸引力的。通过前面这篇博客:React Native for Android 入门老虎好不容易入了门了,然后想找一个简单的项目,来练练手。一方面来熟悉一下 RN(React Native, 后面都做此简写),另一方面来验证使用 RN 来实现一个相对完整的项目的可行性。 平时用的最多的客户端之一:知乎日报, »

React Native for Android 入门老虎

昨天期待已久的 React Native for Android 发布了,赶紧来尝试一下,我跟着这个 Getting Started 开开始入门。发现被一些 "老虎" 堵在门口, Hello World 都跑不起来,入不了 React Native 的门,让我很懊恼,最后终于解决。可能大家也会遇到类似的问题,这篇文章希望能帮到你。 安装环境 »

Drawable 着色的后向兼容方案

看到 Android Weekly 最新一期有一篇文章:Tinting drawables,使用 ColorFilter 手动打造了一个 TintBitmapDrawable,之前也看到有些文章使用这种方式来实现 Drawable 着色或者实现类似的功能。但是,这种方案并不完善,本文将介绍一个完美的后向兼容方案。 解决方案 其实在 Android Support V4 的包中提供了 DrawableCompat 类,我们很容易写出如下的辅助方法来实现 Drawable »

[第28期]Android周报

文章/教程 Android NestedScrolling 实战 Android 5.0 和 Support V4 包中开始提供一套 NestedScrolling API 来支持嵌入的滑动。有了 NestedScrolling 可以实现很多复杂的滑动效果。 [译]深入讲解Android中Activity launchMode 这是我见过的最清晰的 Activity 的启动模式讲解,丰富的图片展示,把各种情况展示的非常清晰。 »

Android NestedScrolling 实战

从 Android 5.0 Lollipop 开始提供一套 API 来支持嵌入的滑动效果。同样在最新的 Support V4 包中也提供了前向的兼容。有了嵌入滑动机制,就能实现很多很复杂的滑动效果。在 Android Design Support 库中非常重要的 CoordinatorLayout 组件就是使用了这套机制,实现了 Toolbar 的收起和展开功能,如下图所示: NestedScrolling »

Android 6.0 中新的新技术

最近 Google 正式发布了 Android M,并命名为“棉花糖”(Marshmallow),对于开发者来说,有哪些新的技术和变化呢?本文尝试总结一下 Android 6.0(API 23)给开发者带来新的技术和改变。 权限管理 权限管理是 Android M 最大的改变,权限管理更加精细,并且由以前的安装时静态授权,改为现在的运行时动态授权。大家对 »