边实验边分析
文章平均质量分 90
卡卡爾
这个作者很懒,什么都没留下…
展开
-
实现OCR语言识别Demo(二)- 图片及识别内容的展现和交互
最后,我们要实现我们的OcrImageView,我们定义了一个自定义控件OcrImageView,其继承自AppCompatImageView,其主要功能是根据我们的OCR识别内容进行在图片上识别内容的绘制以及一些点击的交互行为,首先我们先来进行自定义控件OcrImageView的实现。属性根据控件高度的改变来达到了我们使其内部自动的进行了图片的缩放来达到的这个效果,并且是按比例进行缩放的,只有这样按比例进行操作,我们在后续才能进行精确的比例关系的映射来定位我们的识别内容。上一篇文章中(想要回顾的可以看。.原创 2022-07-25 10:02:47 · 900 阅读 · 0 评论 -
实现OCR语言识别Demo(一)- BottomSheet实现
正如你们看到的,这个Demo的功能是我们可以从手机里或者是拍照的方式获取到某张图片,然后经过OCR识别文字后,将识别出来的文字在图片上全部都框选出来,并且在底部以扩展界面的方式可以查看识别内容的列表,点击列表里的某一项识别项就会在图片上选中这一项识别项,反过来点击图片上的框选的识别项也会在列表中进行这一对应项的选中。想要实现上面的这种效果,我们需要解决这几个技术点让我们一步一步来实现并且一步步的解决这些问题首先我们为应用创建一个带BottomSheet的布局,实现main页面布局activity_main.原创 2022-07-18 13:46:41 · 422 阅读 · 2 评论 -
边实验边分析 - 破解Java参数传递的奥秘(值传递?引用传递?)
边实验边分析 - 破解Java参数传递的奥秘(值传递?引用传递?)对于Java的这个知识点,我觉得大家可能会有时候会模糊,我在之前就因为对这个知识点的理解不到位,导致了在开发测试过程中的偏差,感觉自己的水平被同事误判了的,所以定下心来研究了下这个知识点,自己总结了一下,不过这个知识点其实没有一个标准的答案,全都在于自己的理解,理解到位了,则不会有大问题,理解不到位,可能就会出现看起来很低级的错误。所以本篇文章也不是要说明到底是哪一种,只是分享一下我对这个问题的理解,方便大家对这个问题的理解,因为深究这个原创 2022-05-18 14:33:14 · 128 阅读 · 13 评论 -
边实验边分析-NDK篇-abiFilters配置分析
默認情況下,cmake會構建x86_64,x86,arm64-v8a,armeabi-v7a四個架構的ABI(应用程序二进制接口),我們可以通過在defaultConfig.externalNativeBuild.cmake 块中添加abiFilters标记,来告诉ndk,我们真正需要构建的ABIdefaultConfig { externalNativeBuild { cmake { abiFilters 'x86_64',原创 2022-03-28 10:50:40 · 4499 阅读 · 0 评论 -
边实验边分析 - Gradle如何处理多个库依赖了不同版本的库之间的冲突
边实验边分析 - Gradle如何处理多个库依赖了某个相同的第三方库的不同版本间的冲突比如我们有两个库,一个是dialog-lib它依赖于okhttp 4.9.0的版本另一个vox-sdk版本为3.10.0的okhttp如果我们把这两个库都引入同一个项目中,会发生什么呢?在gradle中添加dependencies { ... implementation 'io.github.xiaozeiqwe8:vox-sdk:0.9.4' implementation 'io.gi原创 2022-03-24 09:48:48 · 2459 阅读 · 0 评论 -
边实验边分析-NDK篇-JNI使用RegisterNatives进行显式方法注册
什么是JNIJNI指的是Java Native Interface,即JAVA原生接口,它的作用是定义了JAVA代码与C/C++的代码进行互动的方式,从而使得Java能够调用c/c++代码,也可以使得c/c++能够调用java的方法(回调),方便原生开发,严格来说,其实是使用 Java 或 Kotlin 编程语言编写的字节码与原生代码的互动,所以Kotlin也是完全支持的JNI在Android中的使用方式配置c/c++编译环境由于本文并不是主要说明如何配置Native的开发环境,且官网说明也比较详细原创 2022-02-28 10:28:32 · 2747 阅读 · 1 评论 -
边实验边分析-Maven默认选择JDK规则以及如何使用指定JDK版本进行编译
边实验边分析-Maven默认选择JDK规则以及如何使用指定JDK版本进行编译说明了Maven的选择本地环境的JDK规则以及JDK版本的指定配置原创 2022-02-16 14:26:12 · 2177 阅读 · 1 评论 -
Android使用自签证书利用Okhttp进行HTTPS接口的安全连接
在上一篇文章中,我们自己生成了证书,创建了最简单的接口,实现了让浏览器信任了我们的证书,那么,在Android上要怎么做呢?在android中,其实也是差不多的概念,android的app都会默认使用系统的受信任证书列表,我们可以参考android官网https://developer.android.com/training/articles/security-config?hl=zh-cn#certificates里面的说明来学习,这个受信任列表是可以切换的,并且都有默认值原创 2022-02-11 09:44:45 · 5610 阅读 · 1 评论 -
边实验边分析-NDK篇-Android Studio执行原生构建的时候是如何选择NDK,CMake,Ninja版本的(避免常见的Ninja错误)
边实验边分析-NDK篇-Android Studio如何选择NDK,CMake,Ninja的版本原创 2021-09-09 13:48:36 · 3089 阅读 · 0 评论 -
边实验边分析 - 非静态内部类引发的内存泄漏问题
邊實驗邊分析 - 使用AIDL引起的内存泄露問題原创 2021-05-14 17:21:36 · 614 阅读 · 0 评论 -
邊實驗邊分析 - Kotlin中对内存泄漏的一点优化
邊實驗邊分析 - Kotlin中对内存泄漏的优化原创 2021-06-25 11:01:50 · 740 阅读 · 0 评论 -
邊實驗邊分析 - Android Foreground Service的使用
Android Foreground Serviceadb shell ps | grep com.karl.android.foregroundservicecat proc/31291/oom_adjframeworks/base/services/java/com/android/server/am/ActivityManagerService.java updateOomAdjLocked(void)dumpsys meminfo 查看到所有的進程分類利用cat proc/29421/原创 2020-08-10 17:48:05 · 2052 阅读 · 0 评论 -
邊實驗邊分析 - Android LowMemoryKiller 介紹
邊實驗邊分析 - Android LowMemoryKiller 介紹一、簡述二、Process 分類三、Android 7.0以下及7.0以上的區別四、ADJ查看方式五、總結一、簡述在Linux中,存在著一個OOM 终结者(Out Of Memory killer),他會在内存過低的情況下,殺掉你的進程,來釋放空閑的内存維持正常的運作。Android中也不一例外的存在者一個殺手,但是他不叫OOM殺手,而叫做LMK殺手(Android LowMemoryKiller),具體的原理不在這裏闡述,想知道的朋原创 2020-07-20 12:11:55 · 231 阅读 · 1 评论