capture.pcap
使用tcpdump抓包工具,抓包“https get请求百度主页”,生成的capture.pcap文件。
该文件可用wireshark打开,查看和学习 DNS解析步骤、TCP三次握手、TSL握手和秘钥协商 等过程
SIP-RFC3428.doc
本资源为RFC3428中文翻译,其对应的原协议地址为:https://tools.ietf.org/html/rfc3428 。
想要了解Sip协议Message方法扩展由来、Pager Model通信方式、Pager Model通信方式的具体举例的同学,可以下载。
QRcode.jar
java -jar QRCode.jar url=test image=qrcode.png save=/xiaxl/ 亲测可用
MVP_RxJava_Demo
http://dev.qq.com/topic/5799d7844bef22a823b3ad44中介绍的,
Android MVP框架
glide_disklrucache
glide与UniversalImageloader均使用的sdcard缓存策略
gradle多渠道打包的两种实现demo
gradle多渠道打包的两种实现demo
ES_001_Triangle
win7下VS2013搭建opengl es 2.0的C++开发环境案例代码。详情请查看博客:
http://xiaxveliang.blog.163.com/blog/static/2970803420151014104946451/
Gson简单与复杂json数据解析案例
可实现简单json数据与复杂json数据解析,详情请看:http://xiaxveliang.blog.163.com/blog/static/297080342014102674623118/
完善程序地图poi搜索
完善腾腾地图POI搜索1、自定义POI点选中图标2、自定义POI点详细信息弹框。详情请查看:http://xiaxveliang.blog.163.com/blog/static/297080342014102510537125/
Android_surfaceView与layout屏幕适配总结
Android各种屏幕适配策略demo总结,文档介绍链接地址:
http://xiaxveliang.blog.163.com/blog/static/2970803420149277310588/
shader中uniform变量的if或for会降低帧率
文档介绍博客地址:http://xiaxveliang.blog.163.com/blog/static/29708034201492735228272/
Xml本地格式化工具(Java代码显示,图形操作)
Xml本地格式化工具(Java代码显示,图形操作),使用详情:http://xiaxveliang.blog.163.com/blog/static/29708034201471044250517/
Android用SAX2解析xml
一个android小demo,采用SAX2方式解析xml。详细介绍请看:
http://xiaxveliang.blog.163.com/blog/static/2970803420147784312563/
android静默卸载data/app下的应用程序
前提:android设备需已root
详情请看:
http://xiaxveliang.blog.163.com/blog/static/2970803420146223547873/
android静默卸载指定包名APP
代码模拟"uninstall + 包名"命令,详情请浏览地址:
http://xiaxveliang.blog.163.com/blog/static/2970803420146223547873/
百度地图附近商铺信息
通过百度地图API获取附近商铺信息,效果图请看:
http://xiaxveliang.blog.163.com/blog/static/29708034201442035825239/
Activity启动和退出动画
Activity启动和退出时的动画效果,动画为从右侧进入和从右侧退出
android获取焦点后按钮变大
当按钮获取焦点后,按钮增大到之前的1.3倍。个人博客:xiaxveliang.blog.163.com
获取Android所有应用程序列表,点击某一项时可启动相应应用
一个简单案例,可获取android系统所有应用程序列表,实现点击列表中的某一项,打开相应的应用
Smack帮助文档中文版
Smack是一个用于和XMPP服务器通信的类库 由此可以实现即时通讯和聊天
Smack主要优势
非常简单易用 并且有十分强大的 API 只需三行代码就可以向用户发关文本消息:
XMPPConnection connection new XMPPConnection "jabber org" ;
connection login "mtucker" "password" ;
connection createChat "jsmith@jivesoftware com" sendMessage "Howdy " ;
不像其它类库那样强制您进行包级别的编码 Smack提供智能的更高级的构造 像 Chat和GroupChat类 让您进行高效的编程
不需用您熟悉XMPP XML格式 即使您熟悉 XML
提供简单的设计以进行通讯 Smack允许您在每个消息中设置任意数量的属性 包括java对象
Apache许可下的开源类库 这意味着您可以将Smack整合进您的商业或非商业的应用中 ">Smack是一个用于和XMPP服务器通信的类库 由此可以实现即时通讯和聊天
Smack主要优势
非常简单易用 并且有十分强大的 API 只需三行代码就可以向用户发关文本消息:
XMPPConnection connection new XMPPConnection "jabber org" [更多]
ExternalOES纹理数据 转换为 TEXTURE-2D纹理数据 工程代码
图形开发中,通常将TEXTURE_2D和TEXTURE_EXTERNAL_OES纹理分开使用,这种情况占据了80%的场景。然而,有时候也需要将TEXTURE_EXTERNAL_OES纹理转化为TEXTURE_2D纹理进行视频处理。这种情况,我们可以通过 如离屏渲染或FrameBuffer帧缓冲区对象,完成纹理数据的转化。
1. 首先,需创建一个OES纹理ID;
2. 完成OES纹理ID创建后,通过oesTexId创建一个图像消费者SurfaceTexture;
3. 通过SurfaceTexture创建Surface,将Surface对象传递给MediaPlayer,获取Sdcard中对应路径的视频帧数据获取;
4. 创建FRAMEBUFFER帧缓冲区,并绑定TEXTURE_2D空白纹理对象;
5. 将EXTERNAL_OES纹理渲染到FRAMEBUFFER帧缓冲区中;
6. 绘制渲染TEXTURE_2D纹理,完成纹理图像的显示;
文档介绍地址如下:
https://xiaxl.blog.csdn.net/article/details/135137815
OpenGLES渲染播放Sdcard中的视频资源
1、案例运行注意事项:
案例源码运行前,需向Sdcard如下路径存入测试视频:/sdcard/Android/data/com.xiaxl.glesvideo/files/video/demo.mp4
2、案例源码原理:
a、在OpenGL ES中创建 samplerExternalOES 类型纹理,用于渲染展示视频图像;
b、通过 samplerExternalOES 纹理创建一个 SurfaceTexture;
c、通过 SurfaceTexture 生成一个 Surface;
d、将该 Surface 绑定到 MediaPlayer 中;
e、通过 MediaPlayer 解封装视频,并最终通过OpenGL ES渲染解封装后的视频图像,同时播放视频的声音;
Android平台OpenGLES3将GL-TEXTURE-2D纹理id渲染到ImageReader提供的Surface上
效果目的:
Android平台 将 GL_TEXTURE_2D纹理 渲染到 Surface 上
案例实现文章介绍:
https://xiaxl.blog.csdn.net/article/details/131682521
技术实现流程大致如下:
1、OpenGLES3中加载GL_TEXTURE_2D纹理,生成纹理ID;
2、通过EGL构建EGLDisplay虚拟屏幕,并绑定ImageReader提供的Surface;
3、在EGL线程中,渲染GL_TEXTURE_2D对应的纹理图形;
4、在EGL线程中,完成渲染后,通过eglSwapBuffers方法交换缓冲数据;
5、在ImageReader中onImageAvailable方法中读取surface数据,保存为一张Bitmap;
6、将 步骤5 的Bitmap显示到ImageView上(用于验证纹理ID是否正常写入到Surface)
因实现流程较为复杂,技术难度要求较高,研究此案例代码花费时间较多,付费下载,谢谢。
监听Android系统软键盘的弹出与关闭(案例代码)
代码来源:
从facebook React源码ReactRootView中抽离CustomGlobalLayoutListener,用于监听Android系统软键盘的弹出与关闭。
实现原理:
监听Android DecorView对应的GlobalLayout布局变化,从而判断是否弹出了软键盘。
其他:
案例demo名称为GlobalKeyboardChange,可直接运行;
软键盘弹出和关闭时,可同时回调 keyboardHeight 软键盘的高度值。
TCP与TLS数据报文抓包
使用 tcpdump 抓包工具,抓取 “https get”请求数据包:
1、生成 wireshark 工具可读取的 capture.pcap 抓包文件;
2、学习 “DNS解析步骤”报文结构;
3、学习 “TCP三次握手”报文结构;
4、学习 “TLS握手与秘钥协商” 等过程。
详细介绍,可参考我的技术文章:
一文读懂 HTTPS 与 TLS证书链校验
https://xiaxl.blog.csdn.net/article/details/106927624
一文详解 TCP与UDP 协议
https://xiaxl.blog.csdn.net/article/details/106223354
Android使用 jitpack 发布 maven 多渠道AAR依赖库 案例实现
网络上大量涉及 JitPack 的教程不可用;
经过两天的研究,分别实现了Gradle 6.1与Gradle 7.5两种Gradle版本,多渠道发布JitPack maven AAR依赖库的案例,案例分别为:
+ jitpack_MultiFlavorLibDemo_gradle_6_1
+ jitpack_MultiFlavorLibDemo_gradle_7_5
并给出了详细的使用说明教程,详见如下地址:
https://xiaxl.blog.csdn.net/article/details/129151720
Android录制屏幕生成mp4文件
Android录制屏幕生成mp4文件:
1、运行环境要求:
Android 5.0以上,无需ROOT;
2、案例实现方式:
使用MediaProjection构建虚拟VirtualDisplay,完成屏幕录制生成mp4文件保存到本地sdcard。
3、案例源码:
案例源码以实现录屏最小集的方式实现,注释充分,通俗易懂。
Python3使用openpyxl、xlrd依赖库操作Excel案例源码
使用python3脚本实现如下功能:
使用 openpyxl 依赖库,详解.xlsx 新版Excel文件的读、写、设置行高、列宽、合并单元格等操作;
使用 xlrd 依赖库,详解.xls 旧版Excel文件的读取,并使用 xlutils.copy 依赖库修改Excel文件出最终的修订结果Excel;
详细文章介绍地址如下:
https://xiaxl.blog.csdn.net/article/details/123910322
Python3使用xlrd修改Excel数据映射关系
使用python3脚本实现如下功能:
根据映射关系数据,完善Excel表格中品牌与型号的对应关系,输出修改后的Excel。
使用 xlrd 依赖库,实现Excel数据的读写;
使用 xlutils.copy 依赖库,复制并修改Excel文件, 并输出最终的修订结果Excel。
详细文章介绍地址如下:
https://xiaxl.blog.csdn.net/article/details/123910322
Android12 SplashScreen使用案例代码下载
Android12 SplashScreen使用举例代码下载,运行效果 与 相关API使用介绍请参考博文:
Android12适配指南——SplashScreen:
https://xiaxl.blog.csdn.net/article/details/123522277
Android 12(API 31)引入了 SplashScreen 相关API,用于开发Android应用的启动页。
SplashScreen相关API的引入影响在Andorid 12设备上运行的所有应用。
若开发者未进行SplashScreen的适配工作,在应用冷启动和温启动时,可能会呈现两个启动页先后出现的情况(Android SplashScreen启动页 + Android应用自定义开发的启动页或引导页)。
安卓Kotlin Coroutine协程使用案例代码
安卓 Kotlin Coroutine协程 使用方式代码举例:
包含GlobalScope 、CoroutineScope 详细使用代码举例,相关介绍文章,可参考:
https://xiaxl.blog.csdn.net/article/details/123383727
Android veridex 非SDK接口检测工具
1、Android非SDK接口检测工具(2022.02.16版本)
2、对应的官方地址为:
https://android.googlesource.com/platform/prebuilts/runtime/+/master/appcompat
Android平台 使用OpenGLES3.0实现纹理纹理、颜色混合
在Android平台,使用OpenGLES3.0实现纹理纹理、颜色混合代码实现举例。
具体案例文章讲解请见:
https://xiaxl.blog.csdn.net/article/details/121634894
Android平台 OpenGL ES3.0绘制点、线、三角形实现源码
Android平台,OpenGL ES3.0 点、线、三角形绘制方式源码实现举例。
相关绘制方式文章讲解请参考:
https://xiaxl.blog.csdn.net/article/details/8873002
Android平台OpenGLES生成使用Mipmap纹理
该案例代码为Android 平台OpenGL ES实现举例,有两个作用:
1、在Android平台,使用OpenGL ES通过加载灰度图,构建山地图形渲染效果;
2、使用 OpenGLES 生成与使用Mipmap纹理,构建远处模糊,近处清晰的效果。
具体案例文章讲解请见:
https://xiaxl.blog.csdn.net/article/details/8873106
OpenGLES三种抗锯齿实现案例
介绍Android OpenGL ES中,三种可用的抗锯齿实现方式,这里给出详细的代码实现。
文章介绍,请参考:
https://blog.csdn.net/xiaxl/article/details/8873018
Android使用MediaCodeC与OpenGL硬解码 录制mp4音视频实现源码
将Camera数据显示到OpenGL ES渲染的图像中,并通过MediaCodeC 将 OpenGL ES 缓冲数据,硬编码写入到 mp4 视频文件中,完成视频的录制。
文件介绍请见:
https://xiaxl.blog.csdn.net/article/details/72530314
原理及实现步骤:
1、通过OpenGLES渲染Camera采集数据;
2、通过 MediaCodec.createInputSurface获取一个Surface;
3、通过EGL构建EGLDisplay并绑定Surface;
4、通过 EGL 线程中渲染GL_TEXTURE_EXTERNAL_OES对应的纹理ID;
5、在 EGL 线程完成渲染后,通过eglSwapBuffers交换缓冲,将EGL渲染内容交换到MediaCodeC给定的Surface中,从而完成mp4视频录制。
Android端 网易公开课3D动画勋章 实现源码
Android端 网易公开课3D动画勋章 实现源码,使用OpenGL ES 2.0加载、展示3dmax导出的obj、mtl勋章文件,通过自定义的openel 动画引擎,进行3D勋章的动画展示。
SIMalliance_OpenMobileAPI2_02.rar
Android于Android 9.0 引入了OMAPI相关实现,这篇文章是关于OMAPI的架构实现、API使用介绍实现文档。
Sim Alliance组织提供了一个标准接口规范Open Mobile API specification,使手机上层应用可以访问手机端不同的Secure Elements。
Android tcpdump
Android tcpdump Version 4.9.3 / 1.9.1.