- 博客(19)
- 收藏
- 关注
原创 Gradle编译问题(appcompat和material相关)
原因是androidx.appcompat:appcompat和com.google.android.material:material的资源冲突等问题导致编译不过,修改版本即可编译过了
2023-01-04 13:30:56
1417
原创 HIAI的文字识别能力
使用HIAI实现证件识别HiAi介绍1. 准备工作2. 身份证识别2.1 首先要初始化sdk2.2 拍照或选取图片(省略)2.3 异步处理,提取图片信息2.4 效果图总结HiAi介绍Huawei HiAI 是华为开发的智能识别的SDK,能够智能识别图像、人脸、物体等,我们使用华为手机拍照时,拍摄界面会智能识别出动物、人脸、风景等,然后智能调整拍摄参数。这里就是使用了HIAI的能力。本文仅demo演示一下,身份证件的识别。华为开发者平台上的示例代码有缺陷,应该是未能及时更新导致编译报错。https:/
2020-09-17 20:58:45
563
原创 TabLayout+Viewpager加载动态多个fragment
废话不多说,直接上图代码展示布局<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:lay...
2019-06-23 13:11:06
2034
2
原创 Flutter与Android的交互
前言Flutter的思想是:一切皆组件!这里我使用开发工具:JDK1.8+AS3.3+Flutter1.6.2
2019-05-24 14:55:17
2039
原创 示例JNI加减乘除
前言JNI是JavaApp与Native Libs沟通的桥梁:Android 平台从一开就已经支持了C/C++了。我们知道Android的SDK主要是基于Java的,所以导致了在用Android SDK进行开发的工程师们都必须使用Java语言。不过,Google从一开始就说明Android也支持JNI编程方式,也就是第三方应用完成可以通过JNI调用自己的C动态度。于是NDK就应运而生了:...
2019-05-22 18:14:17
315
原创 IntentService实例讲解和源码分析
前言IntentService= Service+ 多线程,其中涉及到Handler队列请求,多线程Lopper的使用,IntentService的自动销毁1. 演示示例效果是连续点击一个按钮,触发startService,将任务交给IntentService处理;public class MainActivity extends AppCompatActivity { pr...
2019-05-22 13:07:35
280
原创 Synchronized同步锁编译代码分析
0. 前言synchronized关键字作为Java常用的同步锁机制,是最简单的解决并发问题的一种方法,它具备以下特点:1.原子性:确保线程互斥的访问同步代码;2.可见性:保证共享变量的修改能够及时可见,其实是通过Java内存模型中的 “对一个变量unlock操作之前,必须要同步到主内存中;如果对一个变量进行lock操作,则将会清空工作内存中此变量的值,在执行引擎使用此变量前,需要重新从主...
2019-05-17 17:48:55
255
原创 使用命令运行java文件
java运行在虚拟机的基础上,虚拟机执行字节码.class文件运行出最终结果,那么今天我们来单纯使用java命令来运行java文件;废话不多说,直接上操作1. java环境配置(跳过)2. 编写java文件新建txt文本文件,然后重命名文件后缀为.javapublic class JavaTest{ public static void main(String[] arg0)...
2019-05-17 14:59:27
4912
原创 算法:反转单向链表
将一个单向链表反转,最终输出反转后的链表的头节点废话少说,直接上代码:单向链表模型,如下public class ListNode { public ListNode next; public int val; public ListNode(int val){ this.val = val; } @Override pu...
2019-05-16 00:27:12
149
原创 算法:二分法查找有序数组
基本的二分法是通过,左右两端不断折半实现查找的算法;这里我使用一个已知在数组中的数据,去查找它在有序数组中的位置;上代码 public static void main(String[] arg0){ int[] array = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,...
2019-05-15 16:45:42
933
原创 一道简单的几何题
求解下图中阴影部分的面积,假设正方形的边长为1画辅助线:为对顶的两个三角形作高线 第一步:定理 :两角分别对应相等的两个三角形相似。 关注对顶的两个三角形 证 明:1.平行线的相交线内角相等,2.两个顶角相等, 因此这两个三角形有两个角相等,则为相似三角形; 第二步:性质:相似三角形任意对应线段的比等于相似比。 求相似比:对顶的两个三角形,其中两个底边分别...
2019-05-10 15:17:40
1071
原创 Java守护线程的理解和使用场景
守护线程:为所有非守护线程提供服务的线程;换句话说,任何一个守护线程都是整个JVM中所有非守护线程的保姆;代码演示守护线程通过调用接口实现设置,java.lang.Thread#setDaemon(boolean on),参数boolean类型,true则是守护线程,false则不是守护线程; public static void main(String[] arg0) { ...
2019-05-09 13:46:11
10595
1
转载 Protocol Buffer技术详解(语言规范)
转自:http://www.cnblogs.com/stephen-liu74/archive/2013/01/02/2841485.html本文主要源自于Protocol Buffer的官方文档,而代码示例则抽取于当前正在开发的一个公司内部项目的Demo。这样做的目的主要在于不仅可以保持Google文档的良好风格和系统性,同时再结合一些比较实用和通用的用例,这样就更加便于公司内部的培训,以及...
2019-05-08 17:22:20
172
原创 for循环语句执行顺序
for循环在编程中经常遇到,这里我们探究一下其中语句的执行顺序,以更加准确的确定代码演示结构说明for (a初始条件; b循环判断条件; c循环过程表达式) { d循环体}a.初始条件:对刚开始执行循环体做初始化;b.循环判断条件:判断是否满足循环执行的条件;c.循环过程表达式:每次执行循环体后,额外执行的语句,一般为i++, i--d.循环体:循环执行过程中的执行语句...
2019-05-07 15:22:28
6855
1
原创 Retrofit注解参数解释
@Path是网址中的动态参数,例如:trades/{userId}@Query是URL问号后面的参数,例如:trades/{userId}?token={token}@QueryMap相当于多个@Query@Field用于Post请求,提交单个数据,然后要加@FormUrlEncoded@Body相当于多个@Field,以对象的方式提交@Streaming:用于下载大...
2019-05-07 10:27:19
453
原创 字符串的Md5加密
说明MD5是不可逆的加密方式,具有长度固定、加密结果确定、不可解密等优点,因此应用场合非常多,比如保存用户密码(防止数据库中用户密码被管理员看到,所以数据库中的密码不许使用明文密码),或者文件校验(防止下载的文件是被别人修改后的文件而不是官方原文件),或者光盘破损校验等等。字符串密码的加密、文件校验等用途;这里讲解如何将字符串转换为MD5加密后的字符串:涉及字符串转换、MD5数组修正代码...
2019-05-06 16:18:24
1634
原创 Gradle脚本中定义编译常量
说明Android Studio等IDE都使用了gradle作为编译脚本,定义相关变量能够提高开发效率,便于随时切换环境BuildConfig成员变量:生成后都是public static final 类型;在gradle脚本中定义方式为: buildConfigField "String", "APP_KEY", '"3b495847766em3f74f6e07d0"' bui...
2019-04-28 18:46:43
1785
原创 Retrofit Post请求参数为Json
Retrofit请求Post请求参数说明1. 说明:Retrofit网络框架使用注解支持多种请求方式,请求参数也是注解实现的;这里主要讲解Post请求时的参数设置,涉及注解@Field、@FieldMap、@FormUrlEncoded、@Body2. POST请求简介:HTTP请求有GET、POST、PUT、DELETE、HEAD、OPTIONS…等,其中GET请求使用明文URL获取...
2019-04-26 15:38:55
11443
原创 小米手机裁剪图片报错java.lang.SecurityException
前情说明众所周知Android7.0提高了安全防护,不允许应用内部Uri暴露给外部,因此引入了FileProvider。有关FileProvider的使用和配置,这里就不赘述了。我这里出现的问题是选择图片在小米手机出现crash,拍照图片无法加载,而其他手机则正常。使用FileProvider构建的Uri是以Content://开头的,而使用Uri.fromFile()创建的是以file:/...
2019-04-23 10:40:19
5029
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人