自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(45)
  • 资源 (3)
  • 收藏
  • 关注

原创 Android 自定义View

Android 自定义View

2024-06-16 17:48:28 1011 1

原创 debug调试高级功能 断点、布局 及Android Studio常用快捷按键使用详情

debug调试高级功能 断点、布局 及Android Studio常用快捷按键使用详情

2024-06-16 14:56:18 1106

原创 Android 使用kotlin Retrofit2 + Dagger2完成网络请求跟依赖注入组合使用

Android 使用kotlin Retrofit2 + Dagger2完成网络请求跟依赖注入组合使用

2024-06-01 19:41:43 1228

原创 Kotlin使用Dagger2但无法生成对应类 Unresolved reference: DaggerMyComponent

Kotlin使用Dagger2但无法生成对应类 Unresolved reference: DaggerMyComponent

2024-06-01 16:48:36 186

原创 Andoird使用Room实现持久化及使用Room进行增删查改

Andoird使用Room实现持久化及使用Room进行增删查改

2024-05-25 20:15:31 1380

原创 报错:Cannot find implementation for com.example.biluo.database.UserDatabase. UserDatabase_Impl does no

报错:Cannot find implementation for com.example.biluo.database.UserDatabase. UserDatabase_Impl does no

2024-05-25 01:43:38 251

原创 kotlin重复类编译报错解决

kotlin重复类编译报错解决

2024-05-25 01:08:09 188

原创 android git提交代码命令以及常见命令的使用

android git提交代码命令以及常见命令的使用

2024-05-24 18:41:39 506

原创 Android中如何使用kotlin定义一个倒计时

Android中如何使用kotlin定义一个倒计时

2024-05-24 02:33:27 133

原创 Android中JVM内存回收机制

Android中JVM内存回收机制

2024-05-23 17:32:10 679

原创 Android跨进程通信--Binder机制及AIDL是什么?

Android跨进程通信--Binder机制及AIDL是什么?

2024-05-23 00:32:32 1650

原创 Android 集成Bugly完成线上的异常Exception收集及处理

Android 集成Bugly完成线上的异常Exception收集及处理

2024-05-14 22:19:41 459

原创 64K方法数限制原理及解决方案

64K方法数限制原理及解决方案

2024-05-14 20:54:05 370

原创 AndroidStudio中如何配置共享变量,以便于方便配置共享

AndroidStudio中如何配置共享变量,以便于方便配置共享

2024-05-12 20:13:57 347

原创 Channel实现Flutter与原生平台之间的双向通信

Channel实现Flutter与原生平台之间的双向通信

2024-05-10 21:23:23 640 1

原创 Android 如何查看Framework WMS源代码

Android 如何查看Framework WMS源代码

2024-05-09 21:56:43 229 1

原创 堆内存和栈内存详解及区别

堆内存和栈内存详解及区别

2024-05-09 18:05:07 255

原创 Synchornized、Volatile及Semaphore之间的区别

执行业务逻辑时,线程会把主内存中的变量copy到线程的工作内存(寄存器跟高速缓存),后续发生的读写操作都是对工作内存中的副本变量进行的。如果一个线程A调用一个实例对象的非static synchornized方法,而线程B需要调用这个实例对象所属类的静态synchornized方法,是允许的,不会发生互斥现象,因为访问静态synchornized方法占用的是当前类的class对象,而访问非静态synchornized方法占用的锁是当前实例对象锁,两者不一致。- 当生产者遇到仓库满时,生产者线程被挂起。

2024-04-26 18:53:38 925

原创 C、C++指针及变量简要概述

/&表示number_int变量所对应的内存地址。*intP 表示的是取出 (int *)类型 地址所对应的值。内存地址 == 指针。指针 == 内存地址。

2023-12-17 22:04:43 91

原创 Java如何调用c++,Android 通过JNI调用C++

在Java中,如果想要调用底层.c或者c++,需要通过JNI是实现双端的互通,这篇就来说说在java中如何通过JNI来调用c++模块。五、创建CMakeLists.txt 并添加 .so动态库。一、配置build.gradle 中sdk 相关的设置。三、JNI中.h 预定义 c++方法。六、在java中加载动态库。二、定义native方法。四、编写.cpp文件。

2023-12-04 17:50:02 293

原创 聊一聊CMakeLists.txt 中的一些常见命令

cmake 是一个跨平台、开源的构建系统。它是一个集软件构建、测试、打包于一身的软件。它使用与平台和编译器独立的配置文件来对软件编译过程进行控制。

2023-12-04 01:29:01 118

原创 JNI调Java中的字段, JNI如何 调 Java中的int

【代码】JNI调Java中的字段, JNI如何 调 Java中的int。

2023-12-02 21:51:17 105

原创 Java 通过 JNI调用 c++ 以及 c++ 如何调用Java 中的方法跟静态方法

JNI调用Java方法现有OCRNative这个类,跟showToast这个方法,thiz 是当前类的实例,而env 则是 JNI 的虚拟环境,其他参数。

2023-12-02 00:13:33 695

原创 HashMap哈希表底层采用什么算法计算桶下标的?HashMap如何确定桶下标的?

HashMap哈希表底层采用什么算法计算桶下标的?HashMap如何确定桶下标的?

2023-11-26 12:59:37 173

原创 Android 事件分发dispatchTouchEvent源码分析

android 事件分发底层原理及分析

2023-11-26 00:04:00 231

原创 Andoird 中使用MVVM加databinding、viewbinding实现双向绑定

使用ViewMode跟databinding向xml中插入数据来实现MVVM并与MVP相比较

2023-11-17 15:57:12 529 1

原创 Unhandled Exception: LateInitializationError: Field ‘_userFirst@34292643‘ has not been initialized.

late关键字会延迟初始化变量,系统不会给其初始化变量,如果自己在对其进行判空前进行赋值地话,就会报LateInitializationError

2023-10-22 00:02:52 434 1

原创 Android非静态内部类持有外部类的引用导致OOM内存泄漏

非静态内部类持有外部类的引用时有可能导致内存泄漏解决方法:使用静态内部类替换private static class MyHandler extends Handler { WeakReference<Activity > mActivityReference; MyHandler(Activity activity) { mActivityReference= new WeakReference<Activity>(activity); }

2022-01-06 20:33:09 1298

原创 android 在build.gradle中写脚本通过json文件控制版本号和版本名

前言:在近期的项目当前,每次升级都需要改两个地方,一个是上传到服务器的json文件,一个是build.gradle汇总的versionCode和versionName,这样每次都很繁琐,较容易出现build.gradle中VersionCode未随升级版本改变而导致用户重复下载问题。解决方法:在build.gradle最外层添加如下方法:/** 获取版本信息 @return */String[] getVersionName(){ String jsonStr = "" tr

2021-12-25 20:09:43 2060

原创 对接微信支付之生成签名方式错误导致支付验证签名失败

之前对接过微信支付的App支付,许久未用后测试人员发现微信支付不管用了,密钥,商户号,AppId都验证过,而且后台预支付单号也拿到了,摸索了一天,最后发现原来微信App支付官方文档签名生成方式已经改了!!!

2021-12-23 21:23:09 1235

原创 JavaWeb maven okhttp3包

最近在使用微信支付签名生成中使用到okhttp3<dependency> <groupId>com.squareup.okhttp3</groupId> <artifactId>okhttp</artifactId> <version>4.9.3</version> </dependency>

2021-12-22 17:00:42 7961

原创 Android 微信支付接入—— 客户端

最近接到项目需要,需要接入微信支付。微信支付的麻烦早有耳闻,所以之前也一直不敢接这样的项目,但是没办法为了生计,还是要学习。本篇教程主要讲述如何接入微信支付客户端

2021-12-22 09:13:04 1790

原创 Gson.toJson字符串转义避免将特殊字符转成Unicode字符

解决方法:Gson gson = new GsonBuilder().disableHtmlEscaping().create().toJson(obj);

2021-12-02 13:40:11 1244

原创 AIDL连接池的创建和使用

AIDL连接池创建AIDL接口ISecurityCenter.aidlinterface ISecurityCenter { String encrypt(String content); String decrypt(String password);}ICompute.aidlinterface ICompute { int add(int a, int b);}IBinderPool.aidlinterface IBinderPool { IBin

2021-12-01 22:39:57 278

原创 打开文件管理器并进行文件夹的复制、移动、删除、创建

打开文件管理器并进行文件夹的复制、移动、删除、创建调文件文件管理器并获取可操作文件的DocumentFileIntent intent = new Intent(Intent.ACTION_OPEN_DOCUMENT_TREE);//设置读写权限intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION | Intent.FLAG_GRANT_WRITE_URI_PERMISSION);startActivityForResult(intent,

2021-11-16 23:33:24 1287

原创 自定义Dialog不显示视图

场景:在项目中,使用AlertDialog创建了一个自定义的Dialog,但是运行之后却只显示一小长方块的空白视图,解决方法如下//传入一个Activity类型的上下文contextfinal AlertDialog dialog = new AlertDialog.Builder(context).create();View itemRenameDialogView = View.inflate(context, R.layout.scanpay_dialog_screen_time_out_c

2021-11-10 13:08:40 561

原创 使用悬浮窗实现护目镜全屏显示

创建悬浮窗服务这不细说了,这里直接上关键代码:WindowManager windowManager = ((WindowManager) getApplicationContext().getSystemService(WINDOW_SERVICE));WindowManager.LayoutParams params = new WindowManager.LayoutParams();params.x = 0;params.y = 0;Display display = windowMana

2021-11-08 21:26:27 184

原创 Android onResume跳转界面出错

情景:在A界面onResume中跳转到B界面,B界面中启动截图服务,之后导致截图服务出现奔溃,提示截图必须在前台服务中进行解决办法:延迟启动界面跳转代码:new Handler().postDelayed(() -> { Intent intent2 = new Intent(ShowResultActivity.this, ScreenCaptureActivity.class); intent2.setFlags(Inten

2021-10-24 19:58:54 4985

原创 android 弹出选择输入法选择界面

InputMethodManager inputMethodManager = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);inputMethodManager.showInputMethodPicker();

2021-10-24 17:10:08 2780

原创 Android、Python过滤非中文特殊字符

Android:tring pattern = "[^\\w\\u4e00-\\u9fff]";Pattern r = Pattern.compile(pattern);Matcher m = r.matcher("江苏 » 无锡市:婚礼司仪roger");String newStr = m.replaceAll("");Python:import regex as renew_str = re.sub('[^\w\u4e00-\u9fff]+', '','江苏 » 无锡市:婚礼司仪rog

2021-10-15 22:10:00 450

Framework 11源代码

Framework 11源代码

2024-05-09

Android知识框架.xmind

涵盖Java框架和Android框架,适合刚学Java的同学或者已学Android已有一段时间想了解Android整体框架的工作者

2021-09-08

AccessibilityApplication.rar

AccessibilityApplication.rar

2021-09-04

CImg-1.7.1.rar

CImg开源库,强大的图像处理功能

2021-02-23

空空如也

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

TA关注的人

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