自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 收藏
  • 关注

原创 Android端的简单、易用的日志类库Android-TLog

Android端的日志类库Android-TLogAndroid-TLog如何使用功能Android-TLogAndroid-TLog是基于作者本人在工程实践的需求而编写的日志类库。在配置和使用上,可以说是非常简单了。如何使用具体的使用,请参考Gitee上的工程示例代码。https://gitee.com/tangrb/android-tlog功能支持5个级别(Verbose、Debug、Info、Warning、Error)的日志的打印和开关控制。支持5个级别(Verbose、Debug

2021-04-20 12:13:12 283

原创 Android Studio配置非系统应用的签名

Android Studio配置非系统应用的签名概述创建 jks 文件手动进行签名配置自动签名针对 **release** 版的自动签名操作概述Android应用分为系统应用和非系统应用,两种类型的应用的签名根据都不一样。非系统应用的签名要用到 jks 文件。非系统应用,在本文中简称App。创建 jks 文件jks是Java签名文件的扩展名,全称 Java Key Store。利用Android Studio可以方便、快速地创建jks文件。Build --> Generate Signe

2020-05-19 11:53:38 352

原创 Android简单、灵活、高效的图片裁剪框架 Android-ImageClipper

Android简单、灵活、高效的图片裁剪框架 Android-ImageClipperAndroid图片裁剪的实现方式调用系统的图片裁剪App常用的第三方裁剪框架我的图片裁剪框架 Android-ImageClipper实现思路功能设计项目的Github地址Android图片裁剪的实现方式Android图片的裁剪实现方式有两种:调用系统的图片裁剪App;调用第三方图片裁剪框架。在这里...

2020-04-25 10:58:30 7116 1

原创 二分法开根号的Rust实现

二分法开根号的Rust实现fn sqrt(x: f64) -> f64 { let mut low: f64 = 0.0; let mut up: f64 = x; let mut mid: f64 = x / 2.0; let mut result: f64 = mid * mid; loop { // println!("low...

2019-07-17 14:50:06 1320

原创 Ubuntu系统下JDK的安装与配置(一)

本文整理了Ubuntu系统下通过ppa源安装、配置JDK的方法。1.添加ppa源ppa源是Ubuntu的一个在线软件仓库,通过apt方式可以访问并安装ppa源中的软件。添加ppa源到本地本地repository,并更新本地repository。sudo add-apt-repository ppa:webupd8team/javasudo apt-get update...

2018-05-30 10:48:09 277

原创 Android AIDL(一)

1.AIDL2.AIDL支持的数据类型3.定义传输数据以及数据的AIDL化4.定义跨进程调用的接口的AIDL文件5.生成与定义接口的aidl文件对应的Java类6.编写Service并使用自动生成的Java类7.配置Service属性8.在Activity中进行IPC的示例本文整理了Android AIDL的几个基本知识。1.AIDL...

2018-05-21 15:28:24 387

原创 Android应用的多进程

1.IPC简介2.Android启动多线程的2种方式及原理3.Android应用的进程的生命周期1.IPC简介IPC(Inter Process Communication),进程间通信或跨进程通信,主要表现为多个进程间进行数据交换的过程。进程是程序执行的实例。在操作系统中的定义中,进程是程序的最小执行单元;在支持线程的操作系统的定义中,线程是程序的最小调度单元。进程之...

2018-05-17 13:59:48 161

原创 Activity启动模式

Activity启动模式实验环境:小米 MAX2, Android 7.1.11.standard(标准模式)2.singleTop(栈顶复用模式)3.singleTask(栈内复用模式)4.singleInstance(单例模式)1.standard(标准模式) 任何情况下都会创建新的Activity实例,并将该实例放入任务栈中。2.singleTo...

2018-04-25 18:21:30 142

原创 Activity生命周期

Activity生命周期实验环境:小米 MAX2,Android 7.1.11.正常的生命周期2.ActiityA启动ActivityB时两个Activity的生命周期3.从ActivityB返回ActivityA时两个Activity的生命周期4.旋转屏幕时的生命周期(未在AndroidManifest配置configChanges属性)5.旋转屏幕时...

2018-04-25 10:27:43 152

原创 Android串口编程

Android串口编程在2018年3月,我做了一个基于Android串口通信的Android App(公司项目)。在使用Google提供的android-serial-port开源工程时,发现该工程过于简单,并且并不灵活,所以自己又重新写了一遍Android串口通信应用编程的C工程,然后提供了JNI给Android的Java层调用。在此分享给大家。目前该项目已经上传到github上...

2018-04-08 11:16:24 740

原创 UI的自动化测试(UI Automator)

前面的单元测试和集成测试需要开发的功底,一般来说是开发人员用来进行TDD迭代开发的,对一般的测试人员非常不友好。一般的测试人员只做UI级别的测试工作,Android提供了UI自动化测试的框架,避免了重复的人力工作。Android提供了多种UI测试框架,就UI框架的适用性来说,一般推荐UI Automator,因为该框架可以进行跨App(一个App存在与其它App进行交互的可能情形)测试。但...

2018-03-05 17:45:00 631

原创 应用程序的组件的集成测试

如果App使用了用户无法直接与之交互的组件,例如Service或Content Provider,那么你应该验证App中这些组件的行为的正确性。这时候就需要使用到Android的集成测试(integration test)。集成测试,可以看作是对仪器级单元测试的重度使用,主要用来测试Android的非UI组件和自己编写的非UI组件,所以集成测试的编写规则要遵循仪器级单元测试的规则。在集成测...

2018-03-05 17:37:16 440

原创 单元测试

单元测试是最基本的测试。Android单元测试分为本地级单元测试、仪器级单元测试: 1. 本地级单元测试,是在开发环境中进行的测试,不需要Android设备(模拟器或者真实的); 2. 仪器级单元测试,是在Android(真实或模拟的)设备上运行的测试。本地级单元测试本节介绍Android的本地级单元测试。建立测试环境为了确保本地级单元测试可以运行,通常需要在模块(通常...

2018-03-05 17:32:16 395

原创 测试的基本知识

用户与App 存在各种各样的交互,例如按下一个按钮,或下载信息到他们的设备上。所以,你应该测试各种各样的用例和交互,并以此来迭代开发你的App。使用迭代开发流程随着App 的膨胀,App 会具备越来越多的功能,这时你就需要制备一个全面的测试策略来测试App 的各种功能。当要迭代开发一个新功能时,你应该开始为该功能编写新的测试,或者添加案例、断言到现有的单元测试中。因为该功能还没有实现,...

2018-03-05 17:18:16 247

原创 Java中的异常

如有错误或遗漏,敬请指正!异常分类Java中的异常层次结构:所有的异常都是Throwable的子类,其直接子类有Error和Exception:1.Error类描述Java运行时系统内部错误和资源耗尽错误。应用程序不应该抛出这类异常,如果出现了这类异常,只能终止程序。2.应用程序应该只关注Exception类异常,这类异常描述了应用程序在运行期间由应用程序本身导致的异常。E...

2018-03-05 15:42:16 147

原创 Java中带标签的break语句

如有错误或遗漏,敬请指正!在Donald Kunth的《Structured Programming with goto statements》一文中指出:无限制地使用goto语句确实是导致错误语句的根源,但在某些情况下,偶尔使用goto跳出循环还是有益处的。Java保留了goto关键字,但是并没有实现它。Java为了支持goto语句的程序设计风格,提供了带有标签的break语句,这是功能...

2018-03-05 10:20:35 1501

原创 Context以及ContextWrapper

如有错误或遗漏,敬请指正!在Android应用开发中,Context是一个非常重要的类,它是一个抽象类,是关于一个应用环境的描述的接口,Context的实例在应用程序被启动时由Android系统提供。由于Context是一个抽象类,所以Android系统为我们提供了ContextWrapper。在ContextWrapper类中,除了构造器ContextWrapper(Context ba...

2018-03-02 17:15:06 5035

原创 Java运算符及其优先级

如有错误,敬请指正!注意: 在这里,使用II表示逻辑或,使用I表示按位或。 符号 说明 + 加法 - 减法 * 乘法 / 除法,当操作数都是整数时,表示取整除法;否则,表示除法。例如,15/2等于7,15/2.0等于7.5。 % 取余。例如,15%7等于1,15.1%7等于1.0999999999999996。...

2018-03-02 10:54:08 168

原创 Java回调以及如何获取线程的执行结果

如有错误,敬请指正!软件模块之间存在调用的接口,从调用方式来看,有同步调用、回调、异步调用这三种方式:同步调用是是一种阻塞式调用,调用方要等待被调用方执行完毕返回后才能获取调用的执行结果,是一种单向调用。回调是一种双向调用,调用方在执行被调用方后,被调用方会调用被调用方的接口;异步调用是一种类似消息或者事件的机制,接口在收到某个消息或发生某事件时,会主动通知客户方,通常使用回调来实现...

2018-03-01 11:01:19 5717

原创 Windows系统下安装配置Java开发环境

如有错误,敬请指正!Java的官网:www.oracle.com配置JDK环境变量在安装好JDK后,我们需要为JDK配置PATH环境变量。假如JDK安装在D:\jdk1.8.0_51\目录下,那么可以在“系统环境变量”中新建变量JAVA_HOME,并为JAVA_HOME赋值为D:\jdk1.8.0_51\,然后在Path变量(如果没有,则新建该变量)中追加新的值%JAVA_HOME...

2018-02-27 14:29:46 267

原创 Android屏幕基础知识

如有错误,敬请指正!Android GUI呈现的介质是触摸屏。目前市面上存在着各种尺寸、分辨率的屏幕的Android设备,这就需要我们对这些屏幕有一个基本的认识。现在有一块矩形屏幕,其数据如下: 名称 参数说明 屏幕类型 电容屏,液晶屏,多点触控 主屏幕尺寸 5.2英寸 主屏幕分辨率 1920*1080 px 主屏幕像素密度...

2018-02-26 15:11:49 292

原创 Android应用程序进程的最大heap内存的问题

如有错误,欢迎指正!Android官方文档提到,在默认情况下,每个Android应用都是一个独立的进程,Android又是基于Linux系统,那么有一个问题,那就是Android系统为每个应用进程所能分配的最大内存是多少?目前的Android是32位Linux系统,如果按照传统的32位Linux的内存分配规则,那么Android的单个进程可以最大分配到4G内存,但是Android显然不是按...

2018-02-26 14:39:40 2021

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除