自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Android 动态加载Dex以及so文件

Android 动态加载Dex以及so文件问题背景在动态加载Dex,项目中包含有so文件,网上资料显示:应用安装后,so文件会保存在/data/data/<package>/lib目录下,但是我遇到问题是,在32位终端so文件在/data/data/<package>/lib下,但是在64位终端上so文件并不在/data/data/<package>/lib...

2020-03-16 16:28:02 1644

原创 Caused by: java.lang.ClassNotFoundException: Didn't find class "android.test.AndroidTestRunner"

报错日志Caused by: java.lang.ClassNotFoundException: Didn't find class "android.test.AndroidTestRunner" on path: DexPathList[[zip file "/data/app/com.jqchen.testsuite-2/base.apk", zip file "/data/app/com...

2019-06-19 14:29:36 5519

原创 Android调试中报错:Could not connect to remote process. Aborting debug session.

Could not connect to remote process. Aborting debug session.在IDE Android Studio debug的时候,一直输出Waiting for application to come online:包名,直到以后显示Could not connect to remote process. Aborting debug sessio...

2019-05-16 15:57:47 7531 3

原创 Android Messenger使用教程

Messenger

2019-03-29 16:07:10 2648

原创 Android AIDL教程

什么是AIDLAIDL:Android Interface Definition Language,即Android接口定义语言。Android系统中的进程之间不能共享内存,因此,需要提供一些机制在不同进程之间进行数据通信。为了使其他的应用程序也可以访问本应用程序提供的服务,Android系统采用了远程过程调用(Remote Procedure Call,RPC)方式来实现。与很多其他的基于...

2019-03-25 17:33:08 360 1

原创 Android应用间调用方式——URL Scheme

URL Scheme简介URL Scheme是Android中的自定义的URL Scheme是一种页面内跳转协议,也可以被称为URLRouter,就是通过类似打开网页的方式去通过路由打开一个Activity,而非直接通过显式Intent方式去进行跳转。协议格式协议格式:由scheme、host、port、path、query组成。&amp;amp;lt;scheme&amp;amp;gt;://&amp;amp;lt;host&amp;amp;gt;:...

2019-03-11 10:50:07 2766 1

原创 Android监听网络变化 二

通用的监听网络变化见Android监听网络变化这篇文件讲Android SDK版本的不同,监听网络变化方式也不同。使用BroadcastReceiver使用广播监听网络变化,这个在Android监听网络变化已经讲过了,详情见Android监听网络变化。使用requestNetwork这个是android5.0 sdk 21新添加的API,使用方法如下if (Build.VERSION....

2019-01-17 16:48:55 2139

原创 Android监听网络变化 一

新建BroadcastReceiver新建NetworReceiver,继承BroadcastReceiver,在onReceive()方法中,首先通过getSystemService()方法得到了ConnectivityManager的实例,这是一个系统服务类,专门用于管理网络连接的。然后调用它的getActiveNetworkInfo()方法可以得到NetworkInfo的实例,接着调用Ne...

2019-01-17 15:35:43 640

原创 CSDN博客代码高亮

代码默认效果默认效果一片黑Thread thread = new Thread(() -&gt; { System.out.println("hello world!"); System.out.println("welcome to Westworld!"); }); thread.start();代码高亮效...

2019-01-16 13:58:35 1429 6

原创 PreferenceFragment使用

PreferenceFragment引入在Android3.0之前,设置界面使用PreferenceActivity,在Android3.0之后,官方推荐使用PreferenceFragment,对应于碎片化技术。使用新建Fragment继承PreferenceFragment,加载选项配置xml文件。public static class NotificationPreferenceFr...

2019-01-16 11:28:36 567

原创 Java lambda表达式教程

Java8 lambda表达式

2018-12-27 16:53:55 250

原创 Android常用文件夹

Android常用文件夹

2018-12-25 14:44:30 2260

原创 正则表达式教程

正则表达式

2018-12-24 17:41:54 182 1

原创 Android Studio生成JavaDocument

Android Studio生成doc

2018-12-20 16:50:02 274

原创 Gradle读取文件内容

Gradle读取文件内容

2018-12-19 09:50:34 5660

原创 SVN修改文件夹名称

SVN修改文件夹名称

2018-12-18 15:47:32 10384

原创 Android监听应用的安装、卸载、覆盖

Android监听应用的安装、卸载、覆盖要想知道某一应用是否安装、卸载、覆盖等事件,要用到广播接收者BroadcastReceiver,监听广播的Action。public class PackageBroadCastReceiver extends BroadcastReceiver { @Override public void onReceive(Context cont...

2018-11-13 17:15:16 3107

原创 Android Studio调试Debug教程

Android调试

2018-09-05 10:03:19 351 1

原创 你要了解的Android面试题

ArrayList和LinkedList的区别底层实现不同,ArrayList基于动态数组的数据结构,LinkedList基于链表的数据结构。对于访问get和set,ArrayList效率优于LinedList。对于增加add和删除remove,LinedList优于ArrayList。...

2018-08-24 09:53:14 226

原创 Android SDK 版本对应版本号

Android SDK版本对用API level关系 SDK版本 API Level VERSION_CODE Android 9.0 28 P Android 8.1 27 O Android 8.0 26 O Android 7.1 25 N Android 7.0 24 N An...

2018-08-23 20:39:01 8180

原创 GreenDao的使用

关于GreenDaoGreenDao是在android原生数据库SqLite基础上封装的简单实用类库,github地址GreenDao项目集成在Android Studio module中导入包compile 'org.greenrobot:greendao:3.2.2'在项目build.gradle中进行配置dependencies { class

2018-02-06 16:52:02 216

原创 Android Studio新建或导入项目一直在build问题解决

Android Studio新建或导入项目一直在build问题解决最近从新安装Android Studio新建项目时发现,一直卡在build很久没有反应,只好使用任务管理器关闭AS,后来查阅资料发现是网络被墙的原因,因为新建或倒入项目的时候,AS会下载gradle。解决方案如下下载离线gradle包在文件目录C:\Users\.gradle\wrapper\dists下回看到gra

2017-07-10 15:36:55 2463

原创 高效开会十大原则

项目经理的高效开会原则

2022-10-24 17:20:48 323 1

原创 Gradle执行shell指令

task java_version(type: Exec) { workingDir "${buildDir}" if (System.getProperty('os.name').toLowerCase(Locale.ROOT).contains('windows')) { commandLine 'cmd', '/c', 'java -version' } else { commandLine 'sh', '-c', 'java -version'

2022-03-01 16:36:45 2106

原创 刷机前忘记退出Google账号解决方案

刷机前忘记退出Google账号解决方案:解锁BootLoader。输入TWRP。进入TWRP Recovery,进入Advanced,进入Terminal,输入dd if=/dev/zero of=/dev/block/bootdevice/by-name/frp。返回BootLoader,开机。

2022-01-07 17:17:45 6873 2

原创 Android minSdkVersion大于等于23时,应用找不到so文件

项目背景应用依赖的jar包存在动态加载Dex,而且Dex依赖so文件。依赖的so路径为context.getApplicationInfo().nativeLibraryDir动态加载部分代码如下:String libraryPath = context.getApplicationInfo().nativeLibraryDir;DexClassLoader dexClassLoader = new DexClassLoader(dexPath, optimizedDirectoryPath, l

2020-11-13 11:44:04 2725

原创 Android Studio优化配置

背景最近Android Studio更新到了V3.5版本,听说是做了一下优化,但是运行还是和以往一样占用很高的CPU和硬盘资源,最近实在是受不了这缓慢的速度,决定研究优化一下。运行优化我首先怀疑的是配置java虚拟机的内存过小,导致频繁的GC导致的资源占用率过高,找到AS安装目录\bin\studio.exe.vmoptions文件,如果是系统是64位,找到studio64.exe.vmop...

2019-09-17 11:01:48 425

原创 Android Studio导入so文件

Android Studio导入so文件导入文件的方式大概有两种第一种,so文件放到libs文件下libs目录下放对应架构的so文件,然后需要在build.gradle文件中配置android { .... sourceSets { main { jniLibs.srcDirs = ['libs'] } }...

2019-07-16 09:27:18 693

原创 常用命令汇总

linux下安装SDK platform-26cd android-sdk-linux/tools/bin./sdkmanager "platforms;android-26"

2019-06-28 11:57:27 155

原创 Java 方法引用

Java 方法引用

2019-01-10 16:22:32 313

原创 Gradle manifestPlaceholder

Android manifestPlaceholder

2018-12-19 10:22:48 917

原创 Android studio录屏和截图工具

Android studio录屏和截图工具

2018-12-18 17:10:12 3299 1

原创 Python读取文件内容

Python 读取文件内容

2018-12-18 16:27:54 35898 1

原创 ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

在Linux系统下,登录mysql,显示如下错误ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)这个一般是由于设置root密码时过于简单,登录验证失败。解决办法:重置root密码编辑mysql的配置文件 /etc/my.cnfvim /etc/my.cnf检索[my...

2018-12-07 18:07:23 1701

原创 CentOS使用rz和sz命令

当使用rz命令时显示-bash: rz: command not found因为没有安装lrzsz,使用yum安装yum -y install lrzsz很快就会安装成功。rz 上传命令,从本地上传到CentOSsz 下载命令,从CentOS下载到本地...

2018-12-06 17:55:41 1260

原创 Unable to resolve dependency for ':app@debug/compileClasspath': Could not download xxx.jar

之前项目同步一直失败,报错日志如下Unable to resolve dependency for ':app@debug/compileClasspath': Could not download okhttp.jar (com.squareup.okhttp3:okhttp:3.11.0)尝试网友的方案都没有解决,想关闭Gradle的Officeline work,其实我都没有开启这个。...

2018-11-23 09:32:06 1158

原创 Android混淆

这个是我使用的配置#-------------------------------------------定制化区域----------------------------------------------#---------------------------------1.实体类----------------------------------keepclasseswithmembe...

2018-11-19 15:11:07 150

原创 Android非常好用的工具类开源项目

GitHub地址:AndroidUtilCode这个项目的工具类包含Activity、Time转换、File等等,使用起来非常方便,省去了工具类的编写代码事件。添加依赖implementation 'com.blankj:utilcode:1.22.0'文档地址AndroidUtilCode文档...

2018-11-19 10:28:31 710 1

原创 Android Studio生成jar包

Android Studio生成jar包aar和jar的区别aar是Android项目的二进制归档文件。包含所有资源,class以及res资源文件全部包含。jar只包含了class文件与清单文件,不包含资源文件,如图片等所有res中的文件。生成aar文件Android Studio 编译要生成的library,在build/output/aar目录下可以找到aar文件生成jar文件...

2018-10-11 15:19:38 229

原创 Java排序算法

冒泡排序冒泡排序是最简单的一种排序算法,重复轮询要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来,直到没有需要交换的为止。 冒泡排序算法实现如下:/** * 比较相邻的元素,在此使用从小到大的顺序 * 没轮询一轮,最大的元素会在交换到最后的为止,所以下一次不在排最后一个元素 * @param source 要排序的数组 */public void bubb...

2018-08-24 11:59:52 178

空空如也

空空如也

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

TA关注的人

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