自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

健忘的鱼的博客

路漫漫其修远兮,吾将上下而求索

  • 博客(24)
  • 资源 (1)
  • 收藏
  • 关注

原创 【设计模式】策略、状态、命令模式

策略、状态、命令模式

2024-01-12 10:53:09 849

原创 【Android】Canvas 相关API

【代码】【Android】Canvas 相关API。

2023-12-05 09:52:24 57

原创 【Android】音频可视化

音频播放过程中的可视化,播放数据通过Visualizer分析得出fft数据,转换成float数组展示在界面上,优点:原生Api支持,使用简单;缺点:数据分析在jni层,不能个性化定义,音量为0时无数据返回,需麦克风权限。

2023-10-10 14:23:16 173

原创 【Android】Speex简易使用

speex是主要用于音频压缩,降噪;减少原始数据体积,提升各端数据传输效率,最后一次更新是在2016年,已被opus代替,该篇旨在记录对speex在android上的使用过程。

2023-08-15 12:20:18 309

原创 【Android】蓝牙相关

使用 BluetoothScanner 调用startScan进行扫描,扫描会持续进行,直到调用 stopScan,回调结果在ScanCallback的 onScanResult中,每次返回一条,需做去重操作。从服务中拿到特征,根据特征的通道类型建立连接,读写等会有不同的回调,需要绑定多个渠道。连接这里使用了第三方ViseBle,也可以自己实现。根据设备提供的服务码找到符合条件的。android 12以上声明。在回调中获取设备返回的数据。发出消息时建立消息的监听。

2023-06-30 10:22:40 119

原创 【Android】亚马逊简易使用

亚马逊官网对Android端实现上传下载的操作十分复杂,其实大多数操作都是为了生成awsconfiguration.json的配置文件,但这个配置文件也只是提供了键值对初始值,并不是必须的,可以自己组建JSONObject赋值。

2023-06-09 10:28:45 558

原创 【Android】ContentProvider

ContentProvider做为跨进程通信的手段之一,一般用于暴露本应用数据给到外部应用,提供一套标准的数据访问模型,常常与本地数据库联合使用。

2023-03-16 10:19:31 132

原创 【android Studio】打包

model模块打包成jar包。

2023-03-10 17:39:04 207

原创 【Jectpack】WorkManager

主要处理非及时性任务和定时的周期性任务,特点是保证任务一定执行但不一定立即执行,可以在应用退出后继续执行,用于替换部分前台服务的场景。

2023-03-07 10:15:45 77

原创 知识点专项整理

动态代理的核心点在于代理对象实现InvocationHandler(即中介),invoke函数实现调用,委托者实现委托的具体接口,代理对象初始化时传入接口对象,这样只要实现了该接口的对象都可以使用动态代理对象进行调用,接口对象在初始化时new的是具体的子类对象,这样实现了代理对象和实体对象的替换,这样好处在于当实现的模式主体更换时,调用的接口代码无需更换。管道:基于Unix系统,PIPE指匿名管道:半双工单向通讯,只能在父子,兄弟进程间通讯,数据量小,但无并发问题;APP(app运行的进程)

2023-02-20 09:45:10 62

原创 Java算法篇

是在插入第i个元素时,对前面的0~i-1元素进行折半,先跟他们中间的那个元素比,如果小,则对前半再进行折半,否则对后半进行折半,直到left

2023-02-06 16:28:32 50

原创 【设计模式】责任链模式

责任链模式理论模型实例实现场景分解实现定义拦截器接口实现链条,提供传递方法构建实例调用实践参考该模式主要用于处理一系列在同类型事务上具有相关性的场景,典型的如OKHTTP中的拦截器,采用的就是该模式,每个拦截器决定是否拦截还是交给下一个拦截点,各点之间连接成链,之所以是链是因为有一个点断开(即被拦截)则整个事务结束。责任链模式主要解决了各拦截器之间不相互感知且能按顺序执行。理论模型interceptor 接口,传递拦截链,拦截点需实现的接口chain 定义链条,责任链的核心实现,持有所有的拦截点

2021-12-19 17:55:42 128

原创 【Android】ConstraintLayout

ConstraintLayout 约束布局使用引入控件边界约束chain链goneMargin偏移量biasView 尺寸constraintWidth 控制ratio 控制max min圆形布局辅助控件GuideLine 参考线Group 组Placeholder 占位控件Barrier 屏障ConstraintLayout 现已做为布局的默认父布局,优点在于可以减少布局嵌套,大多数情况只要一个ConstraintLayout即可完成整个页面的布局,推荐用法是使用控件拖动的方式添加,连接约束线自动生成

2021-12-08 23:16:51 320

原创 【设计模式】代理,装饰,适配器

结构型设计模式代理模式静态代理类图实现动态代理装饰器模式类图实现类适配器类图实现对象适配器类图实现实践参考代理模式代理模式目的是为外部访问者提供一个代理对象,使得外部访问者不直接访问某个对象的情况下,通过代理类访问对象方法,产生的缺点就是会延迟相应方法的访问,其用法可分为静态代理和动态代理静态代理类图实现被代理对象的对外接口interface Service { fun visit()}被代理对象本体class RealServer constructor( na

2021-12-08 16:48:28 388

原创 【设计模式】工厂模式

工厂模式实现简单工厂模式类图实现方式定义产品接口子类实现产品接口工厂类根据用户需求返回具体产品(核心)适用性工厂方法模式类图实现方式定义抽象工厂接口(核心)子类实现工厂抽象用户根据具体的工厂获取具体产品适用性抽象工厂模式类图实现赋予抽象工厂更多的类别(核心)交由子类实现实例化工厂创建产品对象适用性总结实践参考根据产品是具体产品还是具体工厂可分为简单工厂模式和工厂方法模式,根据工厂的抽象程度可分为工厂方法模式和抽象工厂模式。该模式用于封装和管理对象的创建,是一种创建型模式。简单工厂模式用户需要提供

2021-12-08 14:18:54 95

原创 【Jectpack】DataStore

dataStore 是jectpack推出的轻量化存储组件,包含PreferenceDataStore和ProtoDataStore两种方式,基于Flow()实现数据存储Why To Use之前的Android轻量化存储组件SharedPreferences读写操作会阻塞主线程,在数据量不多的情况下没什么影响,但随着对组件的滥用,存储的数据量逐渐增大,性能问题逐渐显现,官方也挣扎着出了apply()异步化方案,希望挽救SharedPreferences于水火,但可惜apply()并未实现真正意义上的.

2021-12-05 19:26:06 2641

原创 【Android】RXAndroid

RXAndroid 起源于RXJava,体现了响应式的编程规范,可以方便地处理异步数据流,强调对数据的观察与处理的流程一、使用导入依赖 implementation 'io.reactivex.rxjava3:rxandroid:3.0.0' implementation 'io.reactivex.rxjava3:rxjava:3.0.0'GitHub地址:RxAndroid核心APIObservable被观察者,事件由被观察者发出Observer 观察者,事件由观察者接收Subs.

2021-11-30 15:49:19 5345

原创 【Jectpack】LifeCycle

LifeCycle可以让本没有生命周期的对象通过实现LifecycleObserver或DefaultLifecycleObserver接口后也具有生命周期的特性

2021-11-29 22:29:47 1259

原创 【Kotlin】 基础语法篇

记录些容易遗忘或易混淆的语法结构和关键字关键字vararg函数的变长参数$用于字符串模板中变量名或变量值is类型检测in区间判断inner 修饰内部类,内部类可以用this@Class来获取外部类对象,外部类通过对象调用内部类方法,不用inner修饰的类但写在内部称为嵌套类,外部类通过静态调用获取嵌套类对象,嵌套类不可通过this获取外部类对象internal同模块内可见sealed修饰密封类,类似于枚举,结合when条件语句使用,可列举出类的所以情况而不写else,这点比普通的swit.

2021-11-29 17:34:03 1137

原创 【Jectpack】 SplashScreen

Android12新增开屏页设置,在xml中设置相关属性可定义开屏页的logo、背景颜色、slogn、动画等样式,但只能在Android版本12及以上使用,12以下无效,但使用Jectpack的SplashScreen库可支持12以下开屏样式,最低支持到Android6一、使用导入依赖implementation 'androidx.core:core-splashscreen:1.0.0-alpha01'定义主题<style name="Theme.SplashTheme" pare.

2021-11-28 20:41:05 632

原创 切屏时onConfigurationChanged

onConfigurationChanged的使用

2016-04-03 14:03:45 302

原创 git的简易使用

1.配置身份在git bash中执行 git config --global user.name "XXX"                         git config --global user.email "XXXX"配置完后可以使用相同的命令检测是否配置成功。2.创建代码仓库cd命令进入到项目目录下,执行git init;完成后在项目目录下会生成.git的隐藏文

2016-03-14 15:17:31 217

原创 Android笔记(二)SpannableString显示表情

表情图片在文本框中显示过小的解决方法

2016-03-01 14:18:43 362

原创 Android笔记(一)R文件无法生成

在Clean前选择Build Auto...也就是Clean下方的选项,之后再Clean工程,问题解决

2016-02-25 21:38:07 285

android pdf

Android讲义pdf版本,是第一版的Android疯狂讲义,有需要就下吧

2014-08-25

空空如也

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

TA关注的人

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