Android
文章平均质量分 70
break妖
这个作者很懒,什么都没留下…
展开
-
Android 截屏实现、屏幕截图、MediaProjection、ImageReader
Android 截屏、截图、MediaProjection、ImageReader原创 2022-05-10 22:34:45 · 9122 阅读 · 102 评论 -
Android webSocket应用Demo,推送、即时通信、心跳重连。可实现简单聊天、服务端推送消息到客服端等功能。(java-webSocket)
Android webSocket应用Demo,推送、即时通信、心跳重连。可实现简单聊天、服务端推送消息到客服端等功能。(java-webSocket)原创 2021-12-03 16:26:56 · 2734 阅读 · 8 评论 -
Android 唤醒应用程序,一个APP唤醒另一个APP,A应用调用B应用Activity,两个APP间传递数据
注:将A作为当前应用,B作为要被唤醒的应用B应用需要在manifest文件对应Activity添加 android:exported="true"方式一:getLaunchIntentForPackage唤醒这种方式会启动要唤醒的app程序,相当于启动了B应用,进入其启动页。"com.test.wakedemo2"为应用的包名。//A应用中唤醒部分代码逻辑Intent intent = getPackageManager().getLaunchIntentForPackage("co原创 2021-10-25 15:19:02 · 5753 阅读 · 0 评论 -
Android CameraX使用,预览、拍照、获取静态图像、录制视频
1.想要了解介绍的参考官网:https://developer.android.google.cn/training/camerax/architecture2.实现预览效果如图2.1第一步:引入依赖(1)添加GoogleMaven代码库buildscript { repositories { google() jcenter() }}(2)添加java1.8android { compil...原创 2021-09-04 17:01:31 · 13892 阅读 · 88 评论 -
Android 音视频开发 视频编码,音频编码格式
1.视频编码(1)MPEG系列(2)H.26X系列2.音频编码(1)AAC优点:相对于MP3其音质更佳,文件更小。缺点:属于有损音质(2)MP3特点:压缩率能达到1:10甚至是1:12.利用人耳对高频声音信号不敏感的特性,将时域波形信号转换成频域信号,划分多个频段,对高频信号使用大压缩率,低频信号使用小压缩率,保证信号不失真。(3)AC3有损音频编码格式被广泛应用于5.1声道,Dolby AC3提供的环绕声系统由5个全频域声道和一个超低音声道组成,被称为5.1原创 2020-12-21 11:48:56 · 2177 阅读 · 6 评论 -
Flutter Dart变量与常量
变量:1.可使用具体类型声明,如String、int、List、bool2.不确定类型可使用var、Object、dynamic关键字声明3.Object会在编译时进行检测,dynamic不会。常量:1.final或const2.final修饰的变量只能被设置一次3.const变量是一个 编译时常量,也就是在声明的同时就要进行初始化4.被final或const修饰的变量不能和var同时使用,需要省略varfinal String book = 'Flutter 从入门到放原创 2020-12-21 11:21:40 · 845 阅读 · 0 评论 -
Android 图片数据格式转换url图片地址转base64,url转Bitmap,Bitmap转base64,base64转Bitmap,ImageView 加载Bitmap,旋转图片角度
Android常用图片处理 :1.url图片地址转base64 想要将图片地址转成base64格式,需要先将其转为Bitmap,然后再有Bitmap转为base64,使用下面2和32.url转Bitmap 由于是通过地址获取图片,所以在转换的过程中要开启线程去处理,代码如下:public void urlToBitMap(final String url){ new Thread(new Runnable() { @Over...原创 2020-12-03 22:03:21 · 5424 阅读 · 1 评论 -
Android 录屏(录像)录制视频自定义输出视频分辨率,设置最合适尺寸;Android Mediacodec 录屏输出视频被缩小,Android 录屏全屏,录屏自定义尺寸,录屏录像黑边
1.问题: 首先我的应用场景Mediacodec ,使用了摄像头流与录屏流,中间会进行切换,然后录出来一个完整的视频,也就是从摄像到录屏再到摄像再录屏,需求比较。。。因为要录像又要录屏,所以不可能直接用手机屏幕的实际分辨率。所以从camera.getParameters()获取宽高并设置为输出的视频的分辨率。现象是很多手机上看录制好的视频录屏那块被缩小了,其实是因为有黑边造成的。因此问题其实是基于录屏的输出视频分辨率为核心的,其他录屏方案也大多适用。 2.分析 ...原创 2020-10-25 23:26:29 · 9079 阅读 · 1 评论 -
Android webView加载成功与失败回调,重新加载,onReceivedError、onReceivedSslError、onPageFinished、onProgressChanged
webView提供了多种网页加载的回调1.onPageStarted 开始加载2.onPageFinished 加载完成3.onReceivedError 加载失败4.onReceivedSslError 加载证书错误网页失败5.onProgressChanged 网页加载进度一、加载证书错误网页 如果是证书错误的网页,比如www.baidu123.com,在window浏览器上打开后显示如下提示的网页,是不会调用onReceiv...原创 2020-10-20 11:03:09 · 15405 阅读 · 19 评论 -
Android EventBus接收不到事件(EventBus在Activity与fragment中注册注销位置)
碰到了EventBus发送的事件接收不到的情况,调试后发现是已经被注销的问题。 首先注册和注销应该在向Activity生命周期中相对应的位置,因为Activity生命周期就是相对应的调用的,如onCreate和onDestory,onStart和onStop,onResume和onPause,如果调用到了onStop,下次出现就会从onStart开始。所以在注册后要在其相对的生命周期进行注销。 不建议在onResume中,因为onResume出现的频率大,所以...原创 2020-09-05 17:35:47 · 4544 阅读 · 3 评论 -
Activity四种启动模式区别与适用场景、两种启动模式设置方式区别
管理方式Activity的管理方式 =任务栈 任务栈 采用的结构 = “后进先出” 的栈结构 每按一次Back键,就有一个Activity出栈区别:启动模式的设置启动模式有2种设置方式:1.在 AndroidMainifest设置<activity android:name=".MainActivity"android:launchMode="singleTop">有四种模式 standard 默认启动模式,每次启动Activi...原创 2020-07-23 12:20:30 · 5292 阅读 · 6 评论 -
Android多线程的四种方式:Handler、AsyncTask、ThreadPoolExector、IntentService
1.Handler(适用于多个异步任务的更新UI)异步通信机制,将工作线程中需更新UI的操作信息 传递到 UI主线程,从而实现 工作线程对UI的更新处理,最终实现异步消息的处理。Handler不仅仅能将子线程的数据传递给主线程,它能实现任意两个线程的数据传递。适用于多个异步任务的更新UI(1)MessageMessage 可以在线程之间传递消息。可以在它的内部携带少量数据,用于在不同线程之间进行数据交换。除了 what 字段,还可以使用 arg1 和 arg2 来携带整型数据,使用 obj原创 2020-07-21 16:31:11 · 3416 阅读 · 0 评论 -
Java 单例模式四种方式
一、GetInstance与newgetInstance是一个函数,在java中,可以使用这种方式使用单例模式创建类的实例,所谓单例模式就是一个类有且只有一个实例,不像object ob=new object();的这种方式去实例化后去使用。例: Class A{ Private static A a = null;...原创 2020-07-16 12:13:59 · 744 阅读 · 0 评论 -
Android Studio快捷键Ctrl+ 篇
1. Ctrl+D ——单行复制选中一行,Ctrl+D复制改行到下一行,选中多行也同样适用2. Ctrl+G ——Go to Line/Column 快速定位指定行列在框中输入行号:列号,如n:m,点击OK可快速切换到对应的n行数并停留在第m个字符,如果只输入行号则会默认定位到该行第一个字符。3. Ctrl+E ——Recent Files 最近打开文件列表同时按下Ctrl+E快捷键,弹出最近打开文件列表,可以快速选择最近曾经打开的文件4. Ctrl+/ ——单行..原创 2020-07-14 11:58:31 · 4251 阅读 · 0 评论 -
Android 选择器 PickerView实例,时间选择器、地址选择器、单项选择器、多项选择器自定义布局
是采用的github开源库PickerView,省时省力。最终效果图见最后首先添加依赖://PickerView 选择器implementation 'com.contrarywind:Android-PickerView:4.1.9'//谷歌Gsonimplementation 'com.google.code.gson:gson:2.8.6'//eventbusimplementation 'org.greenrobot:eventbus:3.2.0'Gson是在解析地址文件的时原创 2020-07-06 23:11:21 · 4411 阅读 · 1 评论 -
Android MediaPlayer状态及生命周期
状态图及生命周期:1:Idle(就绪)状态及End(结束)状态Idle:创建MP实例或者调用reset函数,处于Idle状态;此外,使用new操作符创建的MediaPlayer对象处于Idle状态,而那些通过重载的create()便利方法创建的MediaPlayer对象却不是处于Idle状态。事实上,如果成功调用了重载的create()方法,那么这些对象已经是Prepare状态了。End:调用release函数,就会变成End状态。当处于End状态时,它将不能再被使用,不能再回到其.原创 2020-06-11 18:04:08 · 1532 阅读 · 0 评论 -
Caused by: java.lang.RuntimeException: The SDK directory 'F:\AS_SDK' does not exist.
Caused by: java.lang.RuntimeException: The SDK directory 'F:\AS_SDK' does not exist. 项目中的sdk地址和本地sdk地址不一样,所以找不到,有时候会弹出来提醒更换sdk路径可以直接确定,没有提醒的话就手动加一下,直接找到项目根目录,添加一个local.properties文件,如果你有其他可以跑的项目可以直...原创 2019-01-30 15:05:44 · 3491 阅读 · 0 评论 -
Android 渐变色沉浸式状态栏
效果图在最下在AndroidManifest.xml中的activity中使用自定义主题<activity android:name=".dailyAccompany.view.activity.AlarmListActivity" android:theme="@style/TranslucentStatusTheme" android:screenOrientat...原创 2018-12-29 17:15:46 · 1043 阅读 · 0 评论 -
Android MVVM databidng 数据双向绑定与事件绑定
MVVM首先在xml布局文件中添加<data> <variable name="loginHandler" type="com.webtest.handler.LoginHandler"/> <variable name="loginInfo" type="com.webtest...原创 2018-09-17 15:21:43 · 3694 阅读 · 0 评论