Android开发
Dijkstra·Hawking
爱笑的人,运气不会太差
展开
-
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 · 3082 阅读 · 0 评论 -
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 · 1779 阅读 · 0 评论 -
Java lambda表达式教程
Java8 lambda表达式原创 2018-12-27 16:53:55 · 285 阅读 · 0 评论 -
Android studio录屏和截图工具
Android studio录屏和截图工具原创 2018-12-18 17:10:12 · 3384 阅读 · 1 评论 -
Gradle manifestPlaceholder
Android manifestPlaceholder原创 2018-12-19 10:22:48 · 968 阅读 · 0 评论 -
Android常用文件夹
Android常用文件夹原创 2018-12-25 14:44:30 · 2323 阅读 · 0 评论 -
Java 方法引用
Java 方法引用原创 2019-01-10 16:22:32 · 341 阅读 · 0 评论 -
Android监听网络变化 一
新建BroadcastReceiver新建NetworReceiver,继承BroadcastReceiver,在onReceive()方法中,首先通过getSystemService()方法得到了ConnectivityManager的实例,这是一个系统服务类,专门用于管理网络连接的。然后调用它的getActiveNetworkInfo()方法可以得到NetworkInfo的实例,接着调用Ne...原创 2019-01-17 15:35:43 · 694 阅读 · 0 评论 -
Android监听网络变化 二
通用的监听网络变化见Android监听网络变化这篇文件讲Android SDK版本的不同,监听网络变化方式也不同。使用BroadcastReceiver使用广播监听网络变化,这个在Android监听网络变化已经讲过了,详情见Android监听网络变化。使用requestNetwork这个是android5.0 sdk 21新添加的API,使用方法如下if (Build.VERSION....原创 2019-01-17 16:48:55 · 2185 阅读 · 0 评论 -
PreferenceFragment使用
PreferenceFragment引入在Android3.0之前,设置界面使用PreferenceActivity,在Android3.0之后,官方推荐使用PreferenceFragment,对应于碎片化技术。使用新建Fragment继承PreferenceFragment,加载选项配置xml文件。public static class NotificationPreferenceFr...原创 2019-01-16 11:28:36 · 621 阅读 · 0 评论 -
Android应用间调用方式——URL Scheme
URL Scheme简介URL Scheme是Android中的自定义的URL Scheme是一种页面内跳转协议,也可以被称为URLRouter,就是通过类似打开网页的方式去通过路由打开一个Activity,而非直接通过显式Intent方式去进行跳转。协议格式协议格式:由scheme、host、port、path、query组成。&amp;lt;scheme&amp;gt;://&amp;lt;host&amp;gt;:...原创 2019-03-11 10:50:07 · 2910 阅读 · 1 评论 -
Android AIDL教程
什么是AIDLAIDL:Android Interface Definition Language,即Android接口定义语言。Android系统中的进程之间不能共享内存,因此,需要提供一些机制在不同进程之间进行数据通信。为了使其他的应用程序也可以访问本应用程序提供的服务,Android系统采用了远程过程调用(Remote Procedure Call,RPC)方式来实现。与很多其他的基于...原创 2019-03-25 17:33:08 · 413 阅读 · 1 评论 -
Android Messenger使用教程
Messenger原创 2019-03-29 16:07:10 · 2752 阅读 · 0 评论 -
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 · 7952 阅读 · 4 评论 -
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 · 5599 阅读 · 0 评论 -
Android Studio导入so文件
Android Studio导入so文件导入文件的方式大概有两种第一种,so文件放到libs文件下libs目录下放对应架构的so文件,然后需要在build.gradle文件中配置android { .... sourceSets { main { jniLibs.srcDirs = ['libs'] } }...原创 2019-07-16 09:27:18 · 746 阅读 · 0 评论 -
Android混淆
这个是我使用的配置#-------------------------------------------定制化区域----------------------------------------------#---------------------------------1.实体类----------------------------------keepclasseswithmembe...原创 2018-11-19 15:11:07 · 191 阅读 · 0 评论 -
Android Studio生成JavaDocument
Android Studio生成doc原创 2018-12-20 16:50:02 · 306 阅读 · 0 评论 -
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 · 1205 阅读 · 0 评论 -
Spinner监听事件不响应
问题在使用下拉列表Spinner时,遇到了问题:问题一是明明有数据,但是界面没有显示; 问题二是选择事件不触发。此问题在Android4.4.2产生的,在其他Android版本中没有问题。代码数据集合为mList,设置监听的代码:spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener...原创 2018-05-14 14:51:51 · 3157 阅读 · 2 评论 -
ImageView的scaleType的属性解读
ImageView的scaleType属性有多种,fitCenter、fitStart、 fitEnd、fitXY、center、centerCrop、centerInside、matrix。fitCenter是imageView的默认模式,如果没有设置scaleType时,将采用这种模式展示图片。在改模式下,图片会被等比例缩放到能够填充控件大小,并居中显示。 fitStart,图片等比例缩...原创 2018-07-31 14:16:45 · 494 阅读 · 0 评论 -
Android Studio调试Debug教程
Android调试原创 2018-09-05 10:03:19 · 395 阅读 · 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 · 272 阅读 · 0 评论 -
Android监听应用的安装、卸载、覆盖
Android监听应用的安装、卸载、覆盖要想知道某一应用是否安装、卸载、覆盖等事件,要用到广播接收者BroadcastReceiver,监听广播的Action。public class PackageBroadCastReceiver extends BroadcastReceiver { @Override public void onReceive(Context cont...原创 2018-11-13 17:15:16 · 3217 阅读 · 0 评论 -
Android非常好用的工具类开源项目
GitHub地址:AndroidUtilCode这个项目的工具类包含Activity、Time转换、File等等,使用起来非常方便,省去了工具类的编写代码事件。添加依赖implementation 'com.blankj:utilcode:1.22.0'文档地址AndroidUtilCode文档...原创 2018-11-19 10:28:31 · 757 阅读 · 1 评论 -
RecyclerView万能适配器BaseRecyclerViewAdapterHelper
功能强大且灵活的RecyclerAdapter源码地址:BaseRecyclerViewAdapterHelper框架导入allprojects { repositories { ... maven { url "https://jitpack.io" } } }然后在build.gradle...原创 2018-08-23 15:44:40 · 1668 阅读 · 0 评论