自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(26)
  • 收藏
  • 关注

原创 Flutter环境配置 mac- android

需要下载Dart和Flutter两个插件 restart AndroidStudio即可。放置到/Users/mac/Library/Android/flutter路径下。解决:AndroidStudio配置如下tools。esc进行退出insert 输入。按 i 将一下内容insert。Android环境配置完成~~tips:此命令需要等待响应。遇到红x再次需要配置。

2023-03-31 10:06:31 298

原创 Android 桌面快捷方式

Android 快捷方式使用方式ShortcutUtils.getInstance().addShortcut(this , MainActivity2.class , liveBundle , "vhall_live_Id" , "看直播" , "看直播"

2021-12-27 14:38:30 3328 1

原创 Android 弹幕(一)自定义

弹幕(一)自定义无法暂停根据时间戳和播放器同步弹幕数据/** * 一个简化版的DanmakuViewPool */public class CachedDanmakuViewPool implements Pool<DanmakuView> { private static final String TAG = "CachedDanmakuViewPool"; /** * 缓存DanmakuView队列。显示已经完毕的DanmakuView会被添加到缓存.

2021-11-09 13:38:20 799

原创 Android动画移动

实现方式TranslateAnimation translateAnimation = new TranslateAnimation( TranslateAnimation.RELATIVE_TO_SELF, -1, TranslateAnimation.RELATIVE_TO_SELF, 0, //0代表控件本身的位置 TranslateAnimation.RE

2021-11-09 13:32:34 2158

原创 Android全局拦截异常-防崩溃

全局设置Application @Override protected void attachBaseContext(Context base) { super.attachBaseContext(base); new Handler(getMainLooper()).post(new Runnable() { @Override public void run() { while (t

2021-11-09 13:27:44 3249

原创 网络IO模型——简析NIO / BIO / AIO

网络IO模型——NIO和BIOBIO(同步阻塞的BIO)NIO(同步非阻塞的NIO)AIO(异步非阻塞的AIO)场景BIO(同步阻塞的BIO)BIO:也就是Blocking的IO。在socket连接中read,write,connect一类的系统调用中会卡住,就是Block。比如在读取服务器数据时,无法得知是否有传输数据就会堵塞。因此在服务器发送数据之前,客户端会一直堵塞,直到收到服务器的消息才会继续执行。对于单线程来说,无法做其他的处理,整个线程都会进入等待中。会导致用户体验感差!所以一般网络在多线程

2021-06-17 10:51:42 312

原创 Socket通信 客户端(Android)

Socket通信长连接socket网络编程什么是socket?Socket的原理实例socket网络编程什么是socket?Socket的英文原义是“孔”或“插座”。在网络编程中,网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个socket。Socket套接字是通信的基石,是支持TCP/IP协议的网络通信的基本操作单元。它是网络通信过程中端点的抽象表示,包含进行网络通信必须的五种信息:连接使用的协议,本地主机的IP地址,本地进程的协议端口,远地主机的IP地址,远地进程的协

2021-06-11 14:24:00 530 1

原创 Android 可手动管理并垂直滚动轮播控件

A : 如何做到滚动并手动操控轮播?B : 当然使用ViewPager了A : 嗯 是这样的 ViewPager2就可以垂直了呀博主: androidx 项目开发者请自行离开 ViewPager2的确可以实现B : 项目使用的com.android.support:appcompat怎么办呢?A :把整体项目升级到androidx博主:的确是个好方法 未免忒费事了吧!!!后续会出一篇《如何升级androidx项目》B :做为开发者 代码只要跑起来就不要乱动了 升级暂不采纳 会出现很多冲突!

2021-05-21 09:54:33 742 7

原创 Android 通知及通知提示音

1.适配8.0发送通知2.通知提示音粘贴部分代码(亲测有效 放心使用)发送通知适配8.0 private NotificationManager manager; private Notification.Builder notification; //判断是否有通知权限 private boolean isNotification(){ return NotificationManagerCompat.from(this).areNotificationsE

2021-05-21 09:25:56 2340 4

原创 Android 网易云信直播

Android集成网易云信直播网易云官网集成Android端推流sdk概述设备要求: 支持Android 4.3及以上系统 特性要求: 支持推流到主流 RTMP 服务器 支持 H.264 和 AAC 编码 支持纯音频或者纯视频推流 支持直播中伴音 支持直播中单独暂停音频或者视频 支持MP4录制 支持显示推流统计信息 支持自定义YUV、PCM输入 支持YUV、PCM回调 支持直播前测速 支持音视频采集,编码,打包,传输 支持 armv7、arm64 架构 资源占用率

2021-05-13 17:06:41 2739 9

原创 OkHttp 处理Https问题

onFailure: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found.在之前接入php接口时是http没有任何问题完美跑通但在正式环境下域名切换到https下就会出现一个异常onFailure: java.security.cert.CertPathValidatorException: Trust anchor for certification path no

2021-04-26 17:46:35 1847 3

原创 Android GSYVideoPlayer自定义封面

GSYVideoPlayer自定义封面请先了解上一章节上一章节:GSYVideoPlayer视频播放在播放的时候发现,直播视频时GSY是有画面的但在直播音频的时候GSY会黑屏,这样用户体验感就不会很好怎么办?我一开始想到了两个办法 1.放一第一帧图片 2.放置一张背景图 3.修改GSYVideo Player本身的背景 经过测试我发现,方法1在播放时就不可行,方法2展示了一张图片无法暂停,缺隐藏了播放器依然不可行 那就只能读源码执行方法3了public class LiveVid

2021-04-22 13:20:38 3087 4

原创 Android VideoView使用 VideoError: what: 1 extra: -2147483648

VideoError: what: 1 extra: -2147483648可以看到我使用的第一个网络地址是没问题的可以播放 格式 .MP4 完美播放没有问题第二个地址是一个直播的地址 编码格式h.264 flv格式 VideoView无法播放并抛出 VideoError: what: 1 extra: -2147483648VideoView只支持3gp、MP4、avi 所以没有办法只能更换三方支持协议的播放器比如GSY IJK vitamio 这种硬解码支持多种协议的播放器

2021-03-30 16:14:37 1159 1

原创 Android GSYVideoPlayer视频播放器

GSYVideoPlayerGSYVideoPlayer官方地址GSYVideoPlayer 一个基于IJkPlayer的播放器支持调节声音亮度边播边缓存 使用了AndroidVideoCache;ExoPlayer使用SimpleCache支持多种协议h263\4\5、Https、concat、rtsp、hls、rtmp、crypto、mpeg等等简单滤镜(马赛克、黑白、色彩过滤、高斯、模糊、模糊等等20多种)、动画、(水印、画面多重播放等)视频第一帧、视频帧截图功能,视频生成gif功能。

2021-03-30 15:12:19 8671 12

原创 Android 自定义轮播图

Android 自定义轮播图定义Banner定义定时器Handler绘制一个下标指示器定义Banner主要使用ViewPager实现滑动public class Banner extends FrameLayout { public Context context; private @LayoutRes int layoutId = R.layout.banner_view; private View inflate; private ViewPager pag

2021-03-24 16:21:11 300 2

原创 Android 串口通信

串口通信SerialPort生成so文件编写处理C文件生成so文件常见bug*注意生成so文件首先确保已经安装了NDK和CMake然后创建一个SerialPort.java文件主要用来处理so文件注意包名一旦写好不要更改位置,具体代码:import android.util.Log;import java.io.File;import java.io.FileDescriptor;import java.io.FileInputStream;import java.io.FileOu

2021-01-25 11:18:57 1910 1

原创 Android 长连接Netty

netty准备工作netty准备工作依赖: implementation 'io.netty:netty-all:4.1.36.Final' compileOnly "org.projectlombok:lombok:1.16.18" implementation 'org.glassfish:javax.annotation:10.0-b28'导入jar包:libs–>fastjson-1.2.49.jar*下方有demo下载获取n

2021-01-11 14:40:07 620 6

原创 Android 双屏异显——Presention

双屏异显——Presention双屏异显——Presention是一个应用于辅助屏显示的一个组件一个双屏收银 主屏选择商品 副屏给客户显示需求Presention相当于一个在Window上显示的一个Dialog与Activity一样Presention也是通过setContentView();设置layout的 <!-- 显示系统窗口权限 --> <uses-permission android:name="android.permission.SYSTEM_ALERT

2021-01-11 10:23:52 1107

原创 Android 布局旋转 横屏竖屏

Android 屏幕旋转 横屏竖屏横屏 竖屏布局旋转横屏 竖屏方法一:*注意在setContentView()之前if(this.getResources().getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT){ setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);//横屏 //set

2021-01-11 10:08:15 986

原创 Android 金额转换精度丢失

在开发中经常会遇到Double.parseDouble() 、Integer.parseInt()转换后与我们想要得到的值不一致的问题?我们先了解一下Java中各类型的域当超出这个范围就会转换错误解决方案 -----> 使用BigDecimalBigDecimal概述Java在java.math包中提供的API类BigDecimal,用来对超过16位有效位的数进行精确的运算。双精度浮点型变量double可以处理16位有效数,但在实际应用中,可能需要对更大或者更小的数进行运算和处理。一般情

2021-01-04 10:34:08 432

原创 Android 9.0自动更新 安装包解析错误 java.lang.SecurityException: Permission Denial

在android 9.0自动下载更新时 遇到 安装包解析错误在android 7.0使用的是同一套框架却没有问题?然后通过adb命令抓取一下异常发现12-18 19:21:32.665 4804 5604 W InstallStaging: java.lang.SecurityException: Permission Denial: reading android.support.v4.content.FileProvider uri content://com.***.***.update_

2020-12-19 10:01:59 4266 2

原创 Android 自定义View——绘制饼图

自定义View——绘制(一)onDraw Canvas Paint(二)绘制范围和绘制顺序(三)坐标系(四)Demo展示(麦当劳logo、动态饼图)Android 中自定义View,大体可以分为三类:1、绘制2、布局3、触摸反馈本篇主要说一下自定义基础:绘制绘制:就是控件内容的显示,使用canvas(画板)和paint(画笔)绘制出图形的动作就是绘制(一)onDraw Canvas Paint1、绘制方法:绘制操作一般在onDraw(Canvas canvas)方法里进行绘制动作一

2020-12-14 15:35:41 493

原创 Android音频播放-支付金额播报

Android音频播放 支付金额播报(SoundPool、MediaPlayer)demo地址demo采用了Android音频播放的两种方式SoundPool 和 MediaPlayer两者区别是 SoundPool需要优先初始化 将音频加载到内存中 播放时从内存中获取音频文件 不加载无法播放MediaPlayer不需要初始化 随时都可以进行播放由此可见 SoundPool 播放会比MediaPlayer 更快一些SoundUtil 对SoundPool的封装 由于Soun

2020-12-10 10:23:45 2348 5

原创 Android - 极光推送 即时通讯

极光推送 即时通讯准备应用集成极光推送sdk准备应用Demo 项目地址github打开极光官网 链接: 极光 到极光推送官方网站注册开发者帐号;登录进入管理控制台,创建应用程序,得到 Appkey(SDK 与服务器端通过 Appkey 互相识别);在推送设置中给 Android设置包名、给 iOS 上传证书、启用 WinPhone,根据你的需求进行选择;集成sdk集成极光推送sdkJcenter 自动集成步骤使用 jcenter 自动集成的开发者,不需要在项目

2020-12-09 15:24:25 3150 7

原创 Android 开机自启的实现

Android的开机自动启动App首先在AndroidManifest.xml中注册一个广播和添加权限 <!-- App自启动所需权限 --> <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" /> <!-- App自启动 --> <receiver android:name=".包名.MyReceiver">

2020-12-08 10:23:02 690 1

原创 微信刷脸支付

Android微信刷脸支付开发文档一、程序启动时微信初始化二、获取微信数据、sdk调用凭证三、 启动微信刷脸app支付,发起订单四、更新支付结果,结束支付官方地址:微信开放平台开发指引sdk下载一、程序启动时微信初始化 /** * 初始化 * */ Map<String, String> m1 = new HashMap<>(); WxPayFace.getInstance().initWxpayface(this, m1, new I

2020-12-01 16:40:14 1757 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除