- 博客(55)
- 资源 (1)
- 收藏
- 关注
原创 Matter 协议系列:DNS-SD
DNS - SD 在matter中发现场景:Commissionable Node Discovery(可添加节点发现)Operational Discovery(可操作节点发现)Commissioner Discovery(添加者发现)User Directed Commissioning(用户直接添加)
2023-09-22 14:11:40 650
原创 Matter 协议系列:入网流程
在Matter(前身为Project CHIP)中,Commissioning是指将Fabric(网络结构)凭证分配给新设备的过程。Commissioner是执行Commissioning过程的设备。Commissionee是需要被加入到Fabric中的新设备。
2023-09-22 14:08:01 625
原创 Android 插件开发框架 总结
1)类转载器ClassLoader:标准的javaSDK中有ClassLoader类,ClassLoader 加载类的方式常称为双亲委托,ClassLoader.java 具体代码如下:protectedClass>loadClass(StringclassName,booleanresolve)throwsClassNotFoundException
2023-09-22 14:04:23 238 1
原创 Matter 协议系列:发现
Matter是一个旨在推动智能家居设备互操作性和采用的开放标准。它通过不同的发现方法,如蓝牙低功耗(BLE)、Wi-Fi Soft-AP和基于IP的DNS-SD,实现了未绑定(Commissionable)和已绑定(Operational)节点的发现。未绑定节点通过BLE广播、Wi-Fi Soft-AP网络或DNS-SD方式进行发现。BLE广播包含Discriminator(识别码)、Vendor ID(供应商ID)、Product ID(产品ID)和扩展数据。Wi-Fi
2023-09-22 13:56:09 265
原创 Matter 是什么?
Matter(物联网Matter)旨在成为一个可互操作的标准,促进技术采用和创新,逐渐取代智能家居生态系统的专有协议。Matter采用一个开源的软件开发工具包(SDK),其中包含了协议规范的实现,以及丰富的示例代码和可互操作的代码。Matter协议的核心部分位于OSI模型的顶部三层,这意味着它可以在任何类型的IPv6传输和网络上运行。虽然控制和其他操作性通信是通过IPv6执行的,但可以使用低功耗蓝牙(BLE)来配置新设备。Matter是灵活和互操作的。
2023-09-22 11:59:43 2272
原创 Java EE 基础
Java EE核心技术:java------》servlet------》jsp(JavaServer Pages) servlet是jsp的基础,和java相比支持web开发,而jsp有助于界面开发Struts,hibernate,Spring、webwork、jsf等是web框架 Xml(扩展标记语言) JDBC(java的数据库编程):cracle/mys
2016-05-03 14:59:00 846
原创 ActionBar 样式详解 -- 样式 主题 简介
1. 样式资源解析(1) 样式简介样式解析 : 样式是设置给 View 组件的多个属性的集合; -- 样式的好处 : 给一个 TextView 设置 文字大小, 颜色, 对齐方式等, 如果需要给多个 TextView 设置同样的属性, 这里使用样式就可以大大节省了代码量;样式指定 : 每个 View 组件都有一个 style 属性, 可以通过
2016-05-03 11:34:14 6648
原创 Android布局优化
Android布局优化最终目的:快的页面加载速度,好的流畅度1.从xml布局提高性能查看布局层次工具:Hierarchy View检测布局嵌套层次(1)使用style主题定义通用属性,避免重复利用代码,减少代码量;(2)减少布局嵌套层次,使用TextView可以设置四个方向的图片,这样可以代替LinerLayout下包裹的一个ImageV
2016-05-03 11:26:03 572
原创 android 数据安全中常用的加密算法 4 MD5 与3DES
android 数据安全中常用的加密算法 4 MD5 与3DES一、MD5算法 MD5(单向散列算法)的全称是Message-Digest Algorithm 5(信息-摘要算法),经MD2、MD3和MD4发展而来。MD5算法的使用不需要支付任何版权费用。 MD5有如下特点:原理参见:http://blog.csdn.net/forgotaboutgirl/article/det
2015-12-18 21:08:44 2433
原创 android 数据安全中常用的加密算法 3 RSA
android 数据安全中常用的加密算法 3 RSARSA加密算法是最常用的非对称加密算法,CFCA在证书服务中离不了它。但是有不少新来的同事对它不太了解,恰好看到一本书中作者用实例对它进行了简化而生动的描述,使得高深的数学理论能够被容易地理解。我们经过整理和改写特别推荐给大家阅读,希望能够对时间紧张但是又想了解它的同事有所帮助。 RSA是第一个比较完善的公开密钥算法,它既能用于加密,
2015-12-18 20:58:25 898
原创 android 数据安全中常用的加密算法 2 AES
android 数据安全中常用的加密算法 2 AES AES:高级加密标准(英语:Advanced Encryption Standard,缩写:AES),在密码学中又称Rijndael加密法,是美国联邦政府采用的一种区块加密标准。这个标准用来替代原先的DES,已经被多方分析且广为全世界所使用。经过五年的甄选流程,高级加密标准由美国国家标准与技术研究院(NIST)于2001年11
2015-12-18 20:50:35 633
原创 android 数据安全中常用的加密算法 1 Base64
android 数据安全中常用的加密算法 1 Base64 加密1 Base64 加密Base64编码,是程序开发中经常使用到的编码方法。它是一种基于用64个可打印字符来表示二进制数据的表示方法。它通常用作存储、传输一些二进制数据编码方法!也是MIME(多用途互联网邮件扩展,主要用作电子邮件标准)中一种可打印字符表示二进制数据的常见编码方法!它其实只是定义用可打印字符传输内容一
2015-12-18 20:43:33 595
转载 DiskLruCache 源码解析
DiskLruCache 源码解析转自:http://blog.csdn.net/guolin_blog/article/details/28863651 我们先来看一下有哪些应用程序已经使用了DiskLruCache技术。在我所接触的应用范围里,Dropbox、Twitter、网易新闻等都是使用DiskLruCache来进行硬盘缓存的,其中Dropbox和Twi
2015-12-18 19:37:30 647
原创 Android 源码解析: 图片加载库Picasso 4 任务调度 Dispatcher
Android 源码解析: 图片加载库Picasso 4 任务调度 Dispatcher
2015-12-16 17:47:04 777
原创 Android 源码解析: 图片加载库Picasso 3 核心类
Android 源码解析: 图片加载库Picasso 3 核心类Picasso类库中各个类的设计:Picasso是Picasso框架的入口,同时也负责初始化各种工作的子线程,工作的实例;RequestCreator则是对任务的描述;而BitmapHunter则是一个具体的工作的线程,接受Picasso中配置好的调度池的调度同时负责知道对应的ReqeustHandler去执行数据
2015-12-15 22:47:21 478
原创 Android 源码解析: 图片加载库Picasso 2 Cache机制
Android 源码解析: 图片加载库Picasso 2 Cache机制Cache机制:默认实现为LruCache,就是使用LinkedHashMap实现的一个Cache类,因此LruCache在实现的时候,其实简单理解就是将LinkedHashMap封装,然后基于LinkedHashMap的方法实现Cache的方法,在Cache的set()方法的时候,会不断计算当前还可以使用的空间大
2015-12-14 16:29:17 584
原创 Android中View 绘制机制
Android中View 绘制机制1. View 树的绘图流程当 Activity 接收到焦点的时候,它会被请求绘制布局,该请求由 Android framework 处理.绘制是从根节点开始,对布局树进行 measure 和 draw。整个 View 树的绘图流程在ViewRoot.java类的performTraversals()函数展开,该函数所做 的工作可简单概况为是否
2015-12-06 20:27:26 591
原创 Android 源码解析:EventBus
EventBus源码解析EventBus 是一个 Android 事件发布/订阅框架,通过解耦发布者和订阅者简化 Android 事件传递,这里的事件可以理解为消息,本文中统一称为事件。事件传递既可用于 Android 四大组件间通讯,也可以用户异步线程和主线程间通讯等等。传统的事件传递方式包括:Handler、BroadCastReceiver、Interface 回调,
2015-11-02 15:45:50 978
原创 Android 代码混淆
Android 代码混淆optimizationpasses 5 是什么意思?optimizationpasses 表示proguard对你的代码进行迭代优化的次数,首先要明白optimization 会对代码进行各种优化,每次优化后的代码还可以再次优化,所以就产生了 优化次数的问题,这里面的 passes 应该翻译成 ‘次数’ 而不是 ‘通道’。楼上默认写 5 ,应该
2015-10-31 18:57:27 708
原创 Android框架常用java基础知识:反射,注解,动态代理
Android框架常用java基础知识:反射,注解,动态代理在学习Android的框架的源码的时候,发现大部分框架中都是有对java机制的灵活应用。常见的反射,代理,动态代理,注解,依赖注入等。下面是我对这些java常用机制的总结:关于反射: 反射是可以在运行时获取类的函数、属性、父类、接口等 Class 内部信息的机制。通过反射还可以在运
2015-10-30 21:40:14 1513
原创 Android实际开发中的bug总结与解决方法(二)
Android实际开发中的bug总结与解决方法(二) 解决bug中的总结:Fragment Transactions 和Activity状态丢失 Fragment transactions用于在一个Activity上添加、移除或者替换fragment。大多数时候,fragment transaction会在activity的onCreate()方法中执行,也可能在与
2015-10-30 15:08:08 1560
原创 Android实际开发中的bug总结与解决方法(三)
Android实际开发中的bug总结与解决方法(三)解决bug中的总结:Bitmap 内存优化相关 XXXXX项目中相关的bug有2个:1) 在生成圆角图片的RoundImageView的onDraw()方法中 :bug: bitmap size exceeds VM budget .2) 在SSQSplashActivity的onCreate()方法中加载欢迎
2015-10-30 15:07:05 1004
原创 Android 签名机制,项目签名,ANT打包,优化,发布总结
Android 签名机制,项目签名,ANT打包,优化,发布总结Android APK 签名打包的实现原理: 实际开发中,一次完整的Android项目打包要进行以下的几步:编译、代码混淆、打包apk、签名apk、apk优化。 首先,需要有一个 keystore,他是apk的数字签名,在签名apk时候需要。获取keystore的方法. CMD 进入到
2015-10-30 14:08:54 914
原创 单例设计模式详解
单例设计模式详解对于系统中的某些类来说,只有一个实例很重要,例如,一个系统中可以存在多个打印任务,但是只能有一个正在工作的任务;一个系统只能有一个窗口管理器或文件系统;一个系统只能有一个计时工具或ID(序号)生成器。如何保证一个类只有一个实例并且这个实例易于被访问呢?定义一个全局变量可以确保对象随时都可以被访问,但不能防止我们实例化多个对象。一个更好的解决办法是让类自身负责保存它的唯一
2015-10-29 14:21:46 688
原创 Android开发中对读写SD的处理
Android开发中对读写SD的处理众所周知,Android4.0以后的版本的sd卡有了内外之分。在2.x的版本中,在manifest中配置的权限android.permission.WRITE_EXTERNAL_STORAGE确实是用来使得sd卡获得写的权限。而在4.0开发的源码当中,由于有了内外置sd卡的区分,android.permission.WRITE_EXTERNAL_STORAG
2015-10-29 13:40:12 703
原创 Android实际开发中的bug总结与解决方法(一)
Android开发中有很多bug,我们是完全可以在线下避免的,不要等到线上报的BUG的再去修复。下面是我在实际开发中遇到过的bug和解决方法。BUG 1: java.lang.RuntimeException: Unable to start activity ComponentInfo {com.netease.caipiao.ssq/com.netease.caipiao.ssq.
2015-10-29 11:18:01 2789
原创 Gson 源码分析 总结
1 Gson 的简单使用:简单对象的序列化和反序列化:Gson gson = new Gson(); // Or use new GsonBuilder().create();MyType target = new MyType();String json = gson.toJson(target); // serializes target to JsonMyType t
2015-10-28 19:50:13 2956
原创 Android进程 与 消息模型
Android进程 与 消息模型Android进程 在了解Android线程之前得先了解一下Android的进程。当一个程序第一次启动的时候,Android会启动一个LINUX进程和一个主线程。默认的情况下,所有该程序的组件都将在该进程和线程中运行。同 时,Android会为每个应用程序分配一个单独的LINUX用户。Android会尽量保留一个正在运行进程,只在内
2014-12-01 12:05:54 626 1
转载 Android四大基本组件与生命周期 总结
Android四大基本组件与生命周期 总结Android四大基本组件分别是Activity,Service服务,Content Provider内容提供者,BroadcastReceiver广播接收器。 一:了解四大基本组件Activity :应用程序中,一个Activity通常就是一个单独的屏幕,它上面可以显示一些控件也可以监听并处理用户的事件做出响应。Activ
2014-12-01 11:57:36 540
原创 Android的数据存储方式 总结
Android的数据存储方式 总结Android提供了5种方式存储数据:--使用SharedPreferences存储数据;--文件存储数据;--SQLite数据库存储数据;--使用ContentProvider存储数据;--网络存储数据;Preference,File, DataBase这三种方式分别对应的目录是:/data/data/PackageName/Sh
2014-11-30 21:57:40 441
原创 哈希码 总结
哈希码哈希码是一种数据结构的算法。哈希码具体是什么?答:hashCode是jdk根据对象的地址或者字符串或者数字算出来的int类型的数值 常见的哈希码的算法有: 1:Object类的hashCode.返回对象的内存地址经过处理后的结构,由于每个对象的内存地址都不一样,所以哈希码也不一样。 2:String类的hashCode.
2014-11-29 16:01:11 10634 2
原创 Handler机制的简单原理
Handler机制的简单原理因为android UI界面不是线程安全的,不允许子线程更新主UI线程,为了达到主界面的更新操作,此时便有了Handler对象.Android UI操作并不是线程安全的并且这些操作必须在UI线程中执行。Android利用Handler来实现UI线程的更新的。Handler是Android中的消息发送器,其在哪个Activity中创建就
2014-11-26 15:00:26 1470
原创 HTTP协议 常用 总结
HTTP协议 常用 总结写在前面:最近各种事情,一边整项目,一边各种找实习,各种受鄙视,很久没有更新博客了。其实,大神都是,BLOG是写给自己看的。确实是这样,记录下自己的学习过程,以后方面复习。废话不多说了~~① http协议是建立在tcp/ip协议基础上② http协议全称 超文本传输协议③ http协议1.0 , 1.1版本 ,目前通用的
2014-11-26 11:54:24 593
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人