Android
Blithe_Lee2
不管生活如何,都要努力去做
展开
-
安卓自定义 画一个动态显示盘
画一个动态现实环境状态的数据盘,效果如下。1.先自定义一个View,然后画一个圆环。public class CircleShowView extends View { private static float R1=300; private static float paint_width=20; Paint paint=new Paint(Paint.ANTI_ALIAS_FLAG); public CircleShowView(Context cont原创 2020-11-26 11:12:20 · 220 阅读 · 0 评论 -
安卓绘制图形讲解和实例
一.掌握基本绘制的三个重点:图形的位置、尺寸、角度的计算Xfermode 的使用文字的位置和尺寸计算二 .绘制的基本要素:1.重写 onDraw()2.使用 Canvas 来绘制3.使用 Paint 来配置4.坐标系 坐标系的原点为view左上角。5.尺寸单位是像素,而不是 dp。 dp都是做适配的 绘制常用的api安卓新建一个项目。 新建一个类,做自定义view接下来,实例画一个仪表盘public class CircleView extends View原创 2020-11-25 13:23:43 · 352 阅读 · 0 评论 -
cookie和session的原理和安卓中作用
Cookie 与 Session 的作用和原理。 Session 是在服务端保存的一个数据结构,用来跟踪用户的状态,这个数据可以保存在集群、数据库、文件中。 Cookie 是客户端保存用户信息的一种机制,用来记录用户的一些信息,也是实现Session 的一种方式。Session:由于 HTTP 协议是无状态的协议,所以服务端需要记录用户的状态时,就需要用某种机制来识具体的用户,这个机制就是 Session.典型的场景比如购物车,当你点击下单按钮时,由于HTTP 协议无状态,所以并不知道是原创 2020-11-19 13:44:41 · 390 阅读 · 0 评论 -
java RetroFit的源码详解以及使用
简介初期是用于安卓的网络请求框架,后来也被用于java,结构清晰 两者都可以用按照官网的介绍 来实现一下新建安卓工程dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) implementation 'androidx.appcompat:appcompat:1.2.0' implementation 'androidx.constraintlayout:constraint.原创 2020-11-18 14:32:41 · 751 阅读 · 0 评论 -
RESTful架构
1.理解RESTful架构RESTful架构,就是目前最流行的一种互联网软件架构。它结构清晰、符合标准、易于理解、扩展方便在2000年被提出,基于HTTP、URI、XML、JSON等标准和协议,支持轻量级、跨平台、跨语言的架构设计。是Web服务的一种新的架构风格(一种思想)。2.REST架构的主要原则对网络上所有的资源都有一个资源标志符。对资源的操作不会改变标识符。同一资源有多种表现形式(xml、json)所有操作都是无状态的(Stateless)符合上述REST原则的架构方式称为RESTf转载 2020-11-18 12:58:25 · 275 阅读 · 0 评论 -
安卓 NDK人脸识别 身份识别
OPenCV核心1.获取图片2.opencv处理识别区域3.对识别区域进行ocr识别在这里插入图片描述处理识别区域:灰度化二值化膨胀:轮廓处理直接在安卓中开始处理:1.native函数待续,。原创 2020-11-12 16:49:28 · 158 阅读 · 0 评论 -
安卓 各类加密编码详解
现代密码学可以加密任何⼆进制数据⾮对称加密的出现使得密码学有了更⼴泛的⽤途:数字签名对称加密通信双⽅使⽤同⼀个密钥,使⽤加密算法配合上密钥来加密,解密时使⽤加密过程的完全逆过程配合密钥来进⾏解密。简化模型即上⾯的古典密码学中替换式加密的模型:对⽂字进⾏规则化替换来加密,对密⽂进⾏逆向的规则化替换来解密。经典算法DES(56 位密钥,密钥太短⽽逐渐被弃⽤)、AES(128 位、192 位、256 位密钥,现在最流⾏)对称加密(如 AES)的破解拿到⼀组或多组原⽂-密⽂对设法找到⼀个密钥原创 2020-11-12 11:01:33 · 700 阅读 · 0 评论 -
安卓网络协议 HTTP协议
HTTP 的定义⼀种⽹络传输协议,位于 TCP / IP 协议族的最顶层——应⽤层HTTPHypertext Transfer Protocol,超⽂本传输协议,和 HTML (Hypertext Markup Language 超⽂本标记语⾔) ⼀起诞⽣,⽤于在⽹络上请求和传输 HTML 内容HTTP 的⼯作⽅式浏览器:⽤户输⼊地址后回⻋或点击链接 -> 浏览器拼装 HTTP 报⽂并发送请求给服务器 -> 服务器处理请求后发送响应报⽂给浏览器 -> 浏览器解析响应报⽂并使原创 2020-11-12 10:07:34 · 865 阅读 · 0 评论 -
es\styles.xml:43:5-58:13: AAPT: error: expected reference but got (raw string) #000
原创 2020-03-13 18:15:36 · 1916 阅读 · 0 评论 -
字符串String转时间Date 相互转换
public static Date parseServerTime(String serverTime, String format) {if (format == null || format.isEmpty()) {format = “yyyy-MM-dd HH:mm:ss”;}SimpleDateFormat sdf = new SimpleDateFormat(format, L...原创 2020-03-12 14:02:44 · 348 阅读 · 0 评论 -
安卓NDK So动态库 和编译
含义: 库是别人写好的 可以复用代码 现实中大多数程序都依赖很多库 不可能所有功能都自己来实现 和jar包道理一样 库也包括动态库和静态库之分2.如何编译一个so库...原创 2020-03-08 17:28:54 · 189 阅读 · 0 评论 -
安卓线程中断interrupted()和isInterrupted()--控制程序
现在的jdk版本三个方法完成对线程中断的支持。public boolean isInterrupted()public void interrupt()public static boolean interrupted() 每个线程都一个状态位用于标识当前线程对象是否是中断状态。isInterrupted是一个实例方法,主要用于判断当前线程对象的中断标志位是否被标记了,如果被标记了则...原创 2020-02-27 21:43:57 · 510 阅读 · 0 评论 -
安卓架构 MVC MVP MVVM
首先不是好坏的区别 知识应用场景问题mvc比如点击一个view,事件就会传递到Activity也就是Controller当中,最后Controller再通知Model来进行数据的获取,Model再通知View来进行界面的一些展示工作事件的传递,比如说要从Controller传递到Model,我们可以直接让Controller持有Model的引用。Model要向View传递数据,我们一般不...原创 2020-02-25 13:37:29 · 164 阅读 · 0 评论 -
安卓系统架构理解
安卓系统架构 总共分为五层 ,由下往上依次是 linux,Hal驱动层,C++Native库和Android运行时环境,应用框架层,应用层虽然框架图各层是静止的 但是其实各个层之间一直在运行,且各个层级相互交流传递信息,某一层的变化引起另一个层级的变化。Boot Loader来引导开机 最先运行的是内核,在初始化过程中会产生第一个进程 初始化硬件驱动Boot Loader:这是启动And...原创 2020-02-24 21:34:32 · 3677 阅读 · 0 评论 -
dart基础
dart语言 开发 基础1.dart语言开发官网 www.dartlang.orgdart 在线调试工具dart语言简洁 强大 可以跨平台 可以编译成arm 平台的代码 对于web平台 可以翻译成jscript来运行 简单的开发出运行在android和ios的代码dart代码语法和重要概念概念要点:1.一切变量都是对象 包括数字 函数 null2.对象是类的实例...原创 2020-02-07 11:06:57 · 118 阅读 · 0 评论 -
App启动流程底层详解
首先应该说一下linux的启动流程 或者设计说一下系统的启动流程。首先不管是什么系统 启动流程都是一样的 ![系统启动流程](https://img-总的来说,linux系统启动流程可以简单总结为以下几步:1)开机BIOS自检,加载硬盘。2)读取MBR,进行MBR引导。3)grub引导菜单(Boot Loader)。4)加载内核kernel。5)启动init进程,依据inittab...原创 2019-10-28 15:10:31 · 501 阅读 · 0 评论 -
库版本报错 all com.android.support libraries must use the exact same version specification(mixing
在app build.gradle中添加:configurations.all {resolutionStrategy.eachDependency { DependencyResolveDetails details ->def requested = details.requestedif (requested.group == ‘com.android.support’) {...原创 2019-10-17 11:21:08 · 248 阅读 · 0 评论 -
关于Edittext点击弹出软键盘,布局上移标题消失问题,微信聊天界面
最近遇到了关于软键盘弹出,布局上移动的解决 当edittext获取焦点呢,弹出软键盘,布局上移,标题位置不变,1,取消activity设置, Activity 设置 android:windowSoftInputMode=""2.主布局增加Scrollview包裹主布局,并且设置属性android:fil原创 2016-06-28 13:53:52 · 3765 阅读 · 0 评论 -
fragment中加载高德地图出现滑动冲突解决。
1,截图高德地图滑动问题,网上搜了好多方法,最后测试了大家常用的一种,重写ViewPager。public class MyViewPager extends ViewPager { private boolean isCanScroll = true; public MyViewPager(Context context) { supe原创 2016-06-27 10:38:14 · 2509 阅读 · 3 评论 -
二分查找法的两种写法
有序数列中查找 先和中间数查找,比较大小再和边上的查找 1. 2.利用递归: public class Erfen {public static int binarySearch(int[] s,int left,int right,int target){ if(left<right){ int mid=(left+right)/2; if(原创 2017-05-17 18:16:22 · 1656 阅读 · 0 评论 -
安卓WIFI获取列表并密码连接 开发实例
安卓WIFI获取列表并密码连接 开发实例标签(空格分隔): 未分类最近在做关于智能控制的app,用到wifi控制,简单配置并获取过程 记录如下:用WiFi首先要获取wifi列表 ,然后去连接wifi 和我们手机设置操作相同,首先要确认是否打开wifi开关吧,判断用wifiManager.isWifiEnabled()方法; 用到几个权限 < uses-per...原创 2018-04-14 11:57:15 · 5500 阅读 · 0 评论 -
安卓studio jni 简单实例demo
安卓studio jni 简单实例标签(空格分隔): jni1.Jni 是java native Interface 就是java本地接口,接口就是语言链接的入口。在安卓中 我们首先写好c文件,然后编译成linux平台的so文件库。现在,我写一个例子来说:首先,我们定义一个本地方法,函数内容用C语言来实现/ 新建一个空,新建一个class,自己定义...原创 2018-05-30 15:41:43 · 1058 阅读 · 1 评论 -
安卓串口开发 遇到的坑
1.发送数据太快安卓串口设置为150mm发送一次数据 出现两条数据出现在一起 同时发送出去使用设备安卓串口 采用透传模式 单片机处理不及时 导致第一条 第二条数据 合并为一条数据处理 出现数据处理不完整。记改为200mm发送一次 问题消失...原创 2019-04-27 10:24:57 · 527 阅读 · 0 评论 -
安卓串口——谷歌android_serialport_api studio使用以及相关问题
安卓设备和plc等硬件设备通信原创 2019-05-14 08:56:44 · 1287 阅读 · 0 评论 -
串口主从机 稳定通信 问题总结
1.多线程主发一个线程,收一个线程,并给轮询工作部分 加同步机制原创 2019-05-14 13:53:47 · 757 阅读 · 0 评论 -
485通信特点及常见问题
1.232通信负载能力小 传输距离短485通信优势和缺点特点:采用一对平衡差分信号线传输,抑制了远距离传输的信号干扰信号干扰,传输距离可以1.2km’,双绞线可以挂载多个终端设备。缺点:半双工通信 只能在同一时间发送数据多个设备一起发送会产生冲突485通信的几种问题1.传输问题:远距离传输可以能由于阻抗不连续 产生干扰 出现信号发射现象需要阻抗匹配来消除 ,此处不具体介绍...原创 2019-05-14 14:28:17 · 7419 阅读 · 1 评论 -
【安卓篇】安卓Activity进程被杀规则
Android手机开发与桌面开发有一个主要不同之处:通常在一部Android手机里同时运行着多个应用(app),每个app对应一个系统进程,当系统需要更多的资源(如内存)而空闲资源不足时,Android系统就会选择杀掉一些“低优先级”的进程以便释放所需资源。 Android系统是如何确定进程优先级的高低的呢? 如果一个app正在与用户交互,那么它所在的进程具有最高优先级;其次,如果转载 2016-05-19 14:46:11 · 557 阅读 · 0 评论