解读原理
文章平均质量分 83
-每天进步一点点-
这个作者很懒,什么都没留下…
展开
-
Android 快速集成谷歌账户登录
谷歌登录开发者平台注册地址为https://console.firebase.google.com/,并不是在https://console.developers.google.com/上进行注册,一开始我也是参考网上的帖子 在谷歌的developers网站上进行注册, 流但发现流程一直走不通,最后发现需要在firebase网站上进行注册,具体流程直接上图,简单粗暴明了:通过上述6步就能获取到一个google-service.json文件,把它拷贝的项目的根目录下,如...原创 2021-12-20 20:22:02 · 1247 阅读 · 0 评论 -
Android 高版本http访问权限err_cleartext_not_permitted解决方案
Android系统10,运行程序执行报CLEARTEXT communication to aaaaa.vaiwan.com not permitted by network security policy原因是Android 高版本后限制了http访问权限解决方案如下<?xml version="1.0" encoding="utf-8"?><manifest ...> <uses-permission android:name="androi...原创 2021-01-20 19:13:31 · 1022 阅读 · 0 评论 -
Android锁屏状态下保持后台唤醒WakeLock机制
一些手机app(如微信、QQ等)有新消息来到达,手机屏幕即使在锁屏状态下也会亮起,并提示用户有新消息。但是,一般情况下手机锁屏后,Android系统为了省电以及减少CPU消耗,在一段时间后会使系统进入休眠状态,这时,Android系统中CPU会保持在一个相对较低的功耗状态,而收到新消息必定有网络请求,而网络请求是消耗CPU的操作,那么如何在锁屏状态乃至系统进入休眠后,仍然保持系统的网络状态以及通过...转载 2018-02-15 17:12:35 · 4188 阅读 · 2 评论 -
Android平台对H264视频硬解码
原本我们是用JNI调用平台提供的硬件解码接口得到YUV帧,再放入opengl脚本里处理渲染的。可是换了新平台之后,没有拿到底层的接口,所以这两天找在Android上的H264解码方案。前天在友人的提示下找到了MediaCodec这个类,Android developer上面有MediaCodec的描述和用法,还算详细可以慢慢摸索。但是在网上关于这个类的用法是比较少。 那在这里贴代码介绍一下。 1...转载 2018-02-15 17:33:20 · 2538 阅读 · 1 评论 -
无人机开发-图传技术浅析
2016年,是中国无人机市场的元年,无人机能够一跃进入大众视野,并迅速在大众市场火热发展,是很多人始料未及的。从刚开始的空中摄录,到后来的实时摄录,方便的无人机图传功能无疑为无人机加足了筹码,赚足了眼球。博主就来分析一下无人机图传技术。一.观念从“图传”的叫法可以发现,这并非一个专业的定义,大概是从某些资深航模玩家口中发展而来。专业的航空航天器并没有独立的视频图像传输设备。图传的概念只存在于消费类...原创 2018-02-15 21:44:28 · 16699 阅读 · 3 评论 -
Android开发常用网络请求框架OkHttp、Volley、XUtils、Retrofit对比
网络请求框架总结1.xutils 此框架庞大而周全,这个框架可以网络请求,同时可以图片加载,又可以数据存储,又可以 View 注解,使用这种框架很方便,这样会使得你整个项目对它依赖性太强,万一以后这个库不维护了,或者中间某个模块出问题了,这个影响非常大,所以在项目开发时,一般会更喜欢选择专注某一领域的框架。2.OkHttp Android 开发中是可以直接使用现成的api进行网络请求...转载 2018-03-13 16:37:59 · 485 阅读 · 0 评论 -
Java RSA 加密
什么是Rsa加密? RSA算法是最流行的公钥密码算法,使用长度可以变化的密钥。RSA是第一个既能用于数据加密也能用于数字签名的算法。 RSA算法原理如下: 1.随机选择两个大质数p和q,p不等于q,计算N=pq; 2.选择一个大于1小于N的自然数e,e必须与(p-1)(q-1)互素。 3.用公式计算出d:d×e = 1 (mod (p-1)(q-1)) ...原创 2018-11-23 19:38:50 · 3936 阅读 · 0 评论 -
android 同一套代码打包多个apk在同个手机上安装运行的方案
背景:为了便于我们开发者的调试和产品测试人员的方便,由此产生需要在同一部机安装多个APP的需求同一套代码打多个APP包并能够在同一个手机上安装运行,同时APP名称、桌面icon图标也都不同首先在app下的build.gradle中:android {buildTypes { debug { applicationIdSuffix "...原创 2019-01-15 15:16:52 · 3992 阅读 · 0 评论 -
Android 引导、图片轮播控件(BGABanner)
目录功能介绍 效果图与示例 apk 常见问题 使用 自定义属性说明 关于我 打赏支持 License功能介绍 引导界面导航效果 支持根据服务端返回的数据动态设置广告条的总页数 支持大于等于1页时的无限循环自动轮播、手指按下暂停轮播、抬起手指开始轮播 支持自定义指示器位置和广告文案位置 支持图片指示器和数字指示器 支持 ViewPager 各种切换动画 ...转载 2019-02-02 11:02:34 · 1389 阅读 · 0 评论 -
Android Studio最全插件整理
在Android开发中,合理的使用Android Studio插件不但可以提高开发效率,还能从整体上提高代码的质量。下面就Android开发中常见的一些插件做一个整理。1,GsonFormatGsonFormat是一个可以快速将json字符串转换成一个Java Bean,免去我们根据json字符串手写对应Java Bean的过程。 使用方法:快捷键Alt+S也可以使用Alt+Inse...转载 2019-02-02 11:05:12 · 645 阅读 · 0 评论 -
android-AlarmService的使用
可参考博客:http://blog.csdn.net/knxw0001/article/details/101803972.1通过AlarmService每个5秒发送一个广播,setRepeating时的类型为AlarmManager.ELAPSED_REALTIME。 AlarmManager am = (AlarmManager)getSystemService(ALARM_SERVICE);...转载 2018-02-15 16:37:49 · 4457 阅读 · 0 评论 -
Android-TextureView的原理分析及使用
图1 TextureView及其依赖的java/c++类本文将从TetureView的用途、使用模式及其在Framework依赖的类(图1所示那些)的三个方面进行说明。1. 用途TextureView可用于承载显示『数据流』的场合,之前看到『流』不太明确其意义,这里给两个具体的场景大家体会一下:camera模块从sensor采集了1080p@30fps的预览数据『流』,视频通话模块从网络包里解出...原创 2018-02-14 22:14:30 · 18648 阅读 · 0 评论 -
无人机开发-Android地面站MavLink解析部分源码
MavLink是轻量级的通讯协议,主要应用于终端与小型无人载具间的通讯。由于它的通用性,MavLink可以被翻译成各种语言的代码应用于各种不同的环境。具体如何通过工具来生成对应的MavLink代码请访问:http://www.qgroundcontrol.org/mavlink/create_new_mavlink_messageMavLink协议所定义的消息,大致分为两类,一类是通用消息,另外一...转载 2018-02-13 21:01:44 · 2604 阅读 · 2 评论 -
android串口通信以及串口协议解析
把之前在新浪博客里写的分享也备份移植到CSDN博客,之前本文博客地址是:http://blog.sina.com.cn/s/blog_14ed06d6c0102wqdm.html一,android串口通信串口通信采用一个第三方开源项目,实现串口数据收发。1. 使用了http://code.google.com/p/android-serialport-api/的项目的serialpor原创 2017-05-26 10:59:43 · 2423 阅读 · 0 评论 -
Android 多线程之AsyncTask详解
一、Android当中的多线程在Android当中,当一个应用程序的组件启动的时候,并且没有其他的应用程序组件在运行时,Android系统就会为该应用程序组件开辟一个新的线程来执行。默认的情况下,在一个相同Android应用程序当中,其里面的组件都是运行在同一个线程里面的,这个线程我们称之为Main线程。当我们通过某个组件来启动另一个组件的时候,这个时候默认都是在同一个线程当中完成的。当然转载 2017-05-27 11:48:18 · 298 阅读 · 0 评论 -
Android开发者:你真的会用AsyncTask吗?
【导读】在Android应用开发的过程中,我们需要时刻注意保证应用程序的稳定和UI操作响应及时,因为不稳定或响应缓慢的应用将给应用带来不好的印象,严重的用户卸载你的APP,这样你的努力就没有体现的价值了。本文试图从AsnycTask的作用说起,进一步的讲解一下内部的实现机制。如果有一些开发经验的人,读完之后应该对使用AsnycTask过程中的一些问题豁然开朗,开发经验不丰富的也可以从中找到使用过程转载 2017-05-27 13:51:24 · 346 阅读 · 0 评论 -
android:详细解读DialogFragment
相信看这篇文章的人都应该知道android中的Dialog了吧,如果对于Dialog还不是很了解可以看我之前的一篇详解文章:Dialog详解:http://www.cnblogs.com/tianzhijiexian/p/3867731.html随着Fragment这个类的引入,Google官方推荐大家使用DialogFragment来代替传统的Dialog,那么是不是说我们之前学转载 2017-05-27 14:07:55 · 949 阅读 · 0 评论 -
H264格式
原文地址:http://blog.csdn.net/yangzhongxuan/article/details/8003494名词解释场和帧 : 视频的一场或一帧可用来产生一个编码图像。在电视中,为减少大面积闪烁现象,把一帧分成两个隔行的场。片: 每个图象中,若干宏块被排列成片的形式。片分为I片、B片、P片和其他一些片。 I片只...转载 2018-02-11 15:40:32 · 355 阅读 · 0 评论 -
Android性能优化-内存泄露和内存溢出原理解读和解决方案
什么是内存溢出与内存泄露? 首先我们要知道内存溢出与内存泄露的概念,什么是内存溢出和内存泄露。 内存溢出:就想杯子里得水满了,就溢出了。内存溢出就是分配的内存被用光了,不够用了。 内存泄露:就如同杯子里面有石子,导致杯子里面的一部分空间没有被利用,在APP中内存泄露就是指该被回收的内存没有被回收,导致一部分内存一直被占着,可利用内存变少了。当泄露过多 时,可...原创 2018-02-13 15:48:12 · 369 阅读 · 0 评论 -
无人机开发-通讯协议MavLink详解
1. MAVLink简介MAVLink(Micro Air Vehicle Link,微型空中飞行器链路通讯协议)是无人飞行器与地面站(Ground Control Station ,GCS)之间通讯,以及无人飞行器之间通讯最常用的协议。它已经在PX4、APM、PIXHAWK和Parrot AR.Drone飞控平台上进行了大量测试。2.发明者Lorenz Meier简介MAVLink的最初开发于2...转载 2018-02-13 17:58:15 · 5075 阅读 · 0 评论 -
无人机开发-介绍Mavlink协议的消息组成、如何看懂繁杂的mavlink官网介绍、简单介绍地面站与飞控的通讯流程
这篇博客主要介绍了mavlink的消息组成和如何看懂繁杂的mavlink官网介绍以及简单介绍了下地面站与飞控的通讯流程。前面已经提到了在mavlink消息帧里最重要的两个东西,一个是msgid;一个是payload,前者是payload中内容的编号,后者则存放了消息。消息有许多种类型,在官网的网页中中以蓝色的“#”加数字的方式来表示消息的编号如 “#0”(这样的表示方法应该是为了方便在网页中查找相...转载 2018-02-13 18:14:14 · 2665 阅读 · 0 评论 -
无人机开发-介绍MAVLink代码的大概结构
可以看到,里面有多个文件夹和几个头文件。pixhawk,ardupilotmega(apm),matrixpilot这类的文件夹里都是各个飞控自己定义的mavlink消息类型,原始的mavlink消息放在common文件夹里面(大部分消息都在common文件夹中)。checksum.h中存放的是计算校验码的代码。 mavlink_helper.h里面是将各个消息包补充完整(调用checksum.h...转载 2018-02-13 18:58:29 · 1688 阅读 · 0 评论 -
我们为什么要用fitsSystemWindows?
原文链接:https://github.com/bboyfeiyu/Android-tech-frontier/blob/master/issue-35/%E4%B8%BA%E4%BB%80%E4%B9%88%E6%88%91%E4%BB%AC%E8%A6%81%E7%94%A8fitsSystemWindows.mdSystem windows 指的就是屏幕上status b转载 2017-02-20 20:21:58 · 738 阅读 · 0 评论