Android Studio clean 时产生 Error:Execution failed for task ':app:mockableAndroidJar' > java.lang.NullPointerException (no error message)

博客: 安卓之家
掘金: jp1017
微博: 追风917
CSDN: 蒋朋的家
简书: 追风917

每日一景

20161203更新

已经确认这个错误是这个神器的锅: android-hidden-api

在Android Studio 2.2.2上使用时,已经没有了上面的试验选项,那么该如何解决呢,在这个issue得到了解决:

android-hidden-api#21

步骤

  1. Go to File -> Settings -> Build, Execution, Deployment -> Compiler
  2. Add to “Command-line Options”: -x :app:mockableAndroidJar
  3. Press “OK” and try to Rebuild Project again.

也是去掉这个task的。

————————————- 我是分割线—————————————-

Android Studio 使用,clean 后 gradle message 出现如下错误:

1
2
Error:Execution failed for task ':app:mockableAndroidJar'.
> java.lang.NullPointerException (no error message)

error

编译能通过,运行也正常,但是强迫症啊,你懂吧 T_T

微信热修复tinker及tinker server快速接入

博客: 安卓之家
掘金: jp1017
微博: 追风917
CSDN: 蒋朋的家
简书: 追风917

来自unsplash的美图

当前热修复方案很多,今天研究了下微信的tinker,使用效果还是不错的,配合tinker server服用更佳。下面介绍两者的使用,以便大家快速接入。

tinker 接入指南

安装tinker gradle插件

1 在项目的build.gradle中, 添加tinker-patch-gradle-plugin的依赖

1
2
3
4
5
buildscript {
dependencies {
classpath ('com.tencent.tinker:tinker-patch-gradle-plugin:1.7.5')
}
}

安卓数据库 greenDAO3 使用之一项目配置及增删改查

博客: 安卓之家
掘金: jp1017
微博: 追风917
CSDN: 蒋朋的家
简书: 追风917

每日一景

Build Status

配置


喜讯:现在greenDAO升级到了3.0版本,不需要java项目了

强烈建议升级到3.0版本,该版本采用注解的方式通过编译生成Java数据对象和DAO对象,配置更简单

之前2.0版本的配置也写过,参考这里:Android SQLite ORM框架greenDAO在Android Studio中的配置与使用

删除 Ubuntu 系统旧内核

博客: 安卓之家
掘金: jp1017
微博: 追风917
CSDN: 蒋朋的家
简书: 追风917

每日一景

警告

删内核前请保存好您的数据信息

随着每次升级 Ubuntu 系统,占用空间都会增大,虽然我们可以通过命令

sudo apt-get autoclean
sudo apt-get autoremove

来删除一些不必要的资源,但是系统内核还残留在硬盘里,而这些都是无用的,直到最近,boot 启动盘空间已满,导致系统出现bug,那么删除无用的内核势在必行。

安卓数据库 greenDAO3 使用之二数据库升级

博客: 安卓之家
掘金: jp1017
微博: 追风917
CSDN: 蒋朋的家
简书: 追风917

每日一景

Build Status

数据库升级


前面,我们学会了greenDAO的使用,下面来学习下升级。

今天研究了下升级,掌握方法了还是蛮简单的,这里对数据库的升级,仅仅是添加字段,添加表。对于删除,修改字段这里不多讲,因为sqlite数据库不适合此操作:

SQLite supports a limited subset of ALTER TABLE. The ALTER TABLE command in SQLite allows the user to rename a table or to add a new column to an existing table. It is not possible to rename a column, remove a column, or add or remove constraints from a table.

安卓应用修改系统时间

博客: 安卓之家
掘金: jp1017
微博: 追风917
CSDN: 蒋朋的家
简书: 追风917

每日一景

前言


通常,我们来获取系统时间来做一些事情,那么,如何设置系统时间呢?

问题抛出来,解决方法也就应运而生了。

解决方法


命令行

首先我想到的是手机root,然后命令行

1
date -s 要设置的时间

关于如何调用命令行,请点击:安卓程序中调用 linux 命令

如果手机没 root 怎么破呢,继续往下看吧。

USB摄像头预览识别二维码

博客: 安卓之家
掘金: jp1017
微博: 追风917
CSDN: 蒋朋的家
简书: 追风917

每日一景

前言


二维码现在用的超级多,其实它就是一种编码,把字符串编码保存成一个图片,我们扫描图片得到字符串就解码成功。

最有名的二维码解析库是 google 出品的 Zxing,网上也有很多的封装库,有自定义扫描窗口等,更多库请在这个库中搜索 二维码即可:

安卓各种图片框架

这些库采用的都是手机自带的摄像头,没有USB摄像头,悲催了。

USB摄像头拍照,摄像,网上有一个很牛的开源库:

UVCCamera

我也是参考了这个库,在其基础上开发,主要是采用了test4,开启服务来拍照,摄像。这里有几个坑,耽搁了一整天啊。

这里涉及两方面内容,识别代码和扫描界面

EventBus3 简单使用及注意点

博客: 安卓之家
微博: 追风917
CSDN: 蒋朋的家
简书: 追风917

每日一景

EventBus3 简介


EventBus Android 发布/订阅事件总线,可简化 Activities, Fragments, Threads, Services 等组件间的消息传递,可替代 Intent, Handler, BroadCast ,接口等传统方案,更快,代码更小,50K 左右的 jar 包,代码更优雅,彻底解耦。EventBus3 是最新版本,官网地址:

https://github.com/greenrobot/EventBus

,
Fork me on GitHub