分类目录归档:Android

UpdateHelper 1.0版本发布

本来预计14号便可将 UpdateHelper 收尾,结果由于临时有事,推迟到昨晚才将代码推送到 Github,然后今晚发出这篇。

不知不觉 UpdateHelper 这个项目已经在 Github 发布了两年多,至今收获 Star 121Fork 60(码云上收获了Star 84, Fork 35)。令我感到高兴的是,期间有不少开发者朋友提了 Issues 给我,以至于现在还能更新。

感谢的同时也欢迎 Pull request。

1

UpdateHelper 近期做了许多重要的更新,所以目前直接将这个版本定为 1.0。这个版本的改动主要有:

  •  从 ADT 转换成 Android Studio 项目
  • 优化部分代码实现逻辑
  • 网络部分全部改为 HttpURLConnection 实现
  • 修复下载过程与通知栏进度条卡顿情况
  • 提示文字全部提取到 strings.xml,方便国际化操作
  • 新增强制升级功能,通过后台接口 JSON 返回 forceUpgrade:true / false

UpdateHelper 1.0 从 ADT 转换成了 Android Studio 项目,因为目前 Android Studio 是开发 Android 的最好开发工具,且 Google 官方也已经不再支持 ADT。

UpdateHelper 从 1.0 开始已适配 Android 6.0 动态权限申请(只对存储权限做适配),但 UpdateHelper 只是简单的实现,起辅助作用,只有当检查到没有存储权限的时候才会弹出权限调用申请。

强烈建议开发者在 APP 中适配动态权限,因为用户有可能误操作拒绝后,而不知道怎么开启,这时就需要开发者引导如何再次开启权限。

权限应当由 APP 主程序配置引导,而不应该依靠任何第三方 Library。

2

UpdateHelper 会持续改善,目前制定的下一步开发计划主要有:

  • 下载过程可控制
  • 支持灰度测试

UpdateHelper 是我业余时间维护的一个开源项目,所以会不定期更新。项目也许还存在许多不足之处,希望开发者朋友们能加以体谅,同时也能加以鞭策。

也再次欢迎大家提交 Issuses,Pull request。

使用Android Studio开发的四点理由

有朋友跟我聊天中抱怨Android Studio很难用,还是Eclipse好用,我也相信还存在很大一部分Android开发者还在继续使用Eclipse开发Android。从Android Studio内测版开始我就开始使用了,越用越顺畅,导致我在开发中越来越依赖它,现在如果让我换回Eclipse开发,一定苦不堪言。为什么开发Android我会坚定不移的使用Android Studio?下面是我使用Android Studio作为主IDE的几个理由:

1.Android官方建议

Android官方去年六月底在博客上就建议开发者从Eclipse迁移到Android Studio。Android的产品经理说:

Over the past few years, our team has focused on improving the development experience for building Android apps withAndroid Studio. Since the launch of Android Studio, we have been impressed with the excitement and positive feedback. As the official Android IDE, Android Studio gives you access to a powerful and comprehensive suite of tools to evolve your app across Android platforms, whether it’s on the phone, wrist, car or TV.

这哥们大致上是说:“我们过去一直致力于用Android Studio提高Android App的开发体验。自从推出Android Studio后,一直备受好评。这是官方推出的Android IDE,提供了众多牛逼哄哄的功能,你敢不用我削你。”

2.代码智能提示

android-studio-hero-code

对于Eclipse来说,当需要提示的时候,每次都得手动敲一下【Alt+/】才能弹出提示。而Android Studio是「智能」的,你输入第一个字母后,它就会主动将一系列相关的类或方法或变量都弹出来供你选择。可以说这点至少提高了我20%开发效率。

3.同时预览不同屏幕尺寸的效果

android-studio-hero-screens

在Android Studio上,你可以很轻松的预览不同尺寸屏幕上所显示的效果,这可以大大减轻Android开发的适配工作。

4.使用Gradle自动化构建工具

自动化构建工具是每个开发者都需要了解的。Java开发者可能对Maven很熟悉,Gradle之于Android,正如Maven之于Java。Gradle不但吸收了Maven的优点,还大大简化了构建配置,支持多种方式依赖管理,因此Gradle比Maven略胜一筹,青出于蓝。比如:下面简单的两行就用了两种不同的方式添加依赖。

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])    //将本地项目libs目录下的所有jar包自动添加依赖
    compile 'com.android.support:appcompat-v7:21.0.0'    //自动从maven远程仓库下载并添加依赖
}