UncleChen的博客


  • 首页

  • 分类

  • 归档

  • 标签

  • 关于

  • 搜索

Android N安装方法及上手体验

发表于 2016-03-10 | 分类于 技术

今天早上一睁眼,手机上就收到几条Android N的新闻,瞅了一眼发现手里的Nexus6可以安装beta版,于是迫不及待的开始看怎么安装了。直接看官网,一共三种安装方式:

  • 在真机上直接安装,通过OTA的方式升级
  • 在真机上用Android N的系统镜像安装
  • 使用模拟器

1.真机安装

简单方便,Android Beta Program官网注册你的设备,然后。我是把手机插在电脑上的,登录我的Google账号以后,就检测出我的设备了,然后再点击下图中的ENROLL DEVICE(由于我已经点击过了,所以现在显示的是UNENROLL DEVICE),手机秒秒地就收到官方的推送!爽就一个字,点击进入下载,850.6M。

enroll-device

下载完成后直接重启安装,大概需要5分钟。然后我手机上哪些应用喜欢自己后台一顿乱跑的就全部暴露出来了,可能是因为适配的原因很多应用都开始各种崩溃。首先是猎豹清理大师,接着是虾米音乐啊,淘宝啊,这些的,甚至有的SDK都开始不停地弹出对话框和Toast,“阿里百川XXXX”,真的是要哭了,我连关闭弹窗时间都来不及啊。。。。

阅读全文 »

Android6.0权限适配之WRITE_EXTERNAL_STORAGE(SD卡写入)

发表于 2016-03-06 | 分类于 技术

前一篇博客中介绍了Android6.0运行时权限简介,最近遇到这么一个情况,就是一个App以前都是在SD卡根目录直接新建了一个XXX/image/目录,来保存图片缓存的,但是如果适配到Android6.0,我们就需要弹出对话框给用户,来申请WRITE_EXTERNAL_STORAGE权限,如果仅仅是缓存图片为了提高加载速度,对于一个小白用户来讲,好像并不是什么值得让他授权的理由。。。

下面记录一下我是怎么处理的,其实这次处理也不能叫做Android6.0权限适配了,不过对于WRITE_EXTERNAL_STORAGE这个权限而言,的确有一些需要注意的地方(坑)使我们以前没有关心的。

首先,App在手机上保存文件或者缓存数据时,我认为应该遵守以下几点:

  • 1.不要随意占用用户的内置存储。
  • 2.不要随意在SD卡上新建目录,应该放置自己应用包名对应的扩展存储目录下,卸载App时可以被自动清除。
  • 3.对占用的磁盘空间有上限,并按照一定的策略进行清除。
阅读全文 »

Android6.0运行时权限简介

发表于 2016-03-05 | 分类于 技术

Android6.0发布距离现在快1年了,虽然它市场占有率仍在龟速上升中,但还是有一些App开发者已经在打包应用时将targetSDKVersion设置到了23,也就是说把App适配到了Android6.0。以前调用Android系统中需要声明权限的API时,只需要在AndroidManifest.xml文件中一次性列出来。但是如果在build.gradle文件里将targetSDKVersion设为23以后,除了在AndroidManifest.xml声明,我们还需要根据App运行时所在的手机的系统版本,在调用权限之前向用户申请授权,并在用户允许以后,才可以安全的调用对应的API。

阅读全文 »

Android WebView调用JS

发表于 2015-11-26 | 分类于 技术

个人认为Android的WebView一直是一个比较难搞的东西,因为它需要和很多的Web开发打交道,如果以前没接触过Web相关的开发就会觉得有些不爽,但是现在越来越多的应用都是Hybrid的模式,HTML5定稿一年多,感觉也挺火,这也是以做内容为主的App非常需要的技术,所以还得多学学。

从Android4.4开始,WebView底层的实现从原来的Webkit变成了chromium,从而实现了对HTML5更好的支持,并且也和Chrome浏览器的一些特征越来越像。接触过WebView开发应该对WebView.setWebContentsDebuggingEnabled(true)不会陌生,正是从4.4开始的改变才使得WebView的调试变得更加方便。

只是用来展示一个网页内容还好,如果要通过WebView执行JS脚本来和Native代码做一些通信,就要小心可能会踩到各种坑了。例如onclick事件没用,用onTap又会触发两次,4.4以上只能用loadUrl的方法执行一行js代码,还有可能会被转码,API17以上需要给Java方法添加注解,API17以下又要换一种方法保证安全性等等。在这里记录一下我自己的学习心得和踩过的坑。

阅读全文 »

自定义Android Gradle插件

发表于 2015-11-17 | 分类于 技术

上一篇博客介绍到Gradle实践之自定义打包jar+Log开关自动关闭。可以自己定义打包的jar已经不错了,但是还是不够爽,怎么办?自己写一个Plugin!会用轮子,也要会造轮子是不是,我们经常使用到的com.android.library和com.android.application都是Google给我们提供的Gradle插件,里面已经实现了大部分App开发者所需要的功能。Github上面也已经有很多gradle插件,但是如果我们是程序猿,我们总是可以有需求是人家的Plugin无法满足的,那好吧,我们自己写个插件。

阅读全文 »

Gradle实践之自定义打包jar+Log开关自动关闭

发表于 2015-10-25 | 分类于 技术

上一篇博客介绍了Gradle实践之多渠道自动化打包+版本号管理。由于我在公司里主要是做SDK开发的,这次我想介绍一下如何使用Gradle打出自己想要的jar包,并根据需要混淆、发布jar包。然后再介绍一下如何在打包的时候将自定义的Log输出工具关闭。

阅读全文 »
1…456
unclechen

unclechen

吃下恶魔果实,我就能变成超级赛亚人!

33 日志
4 分类
45 标签
RSS
GitHub Weibo
Creative Commons
0%
© 2015 - 2019 unclechen