Android学习记录
健忘的程序员
安卓开发者
展开
-
MediaCodec问题收集
配置H264编解码器的时候分辨率应该是在[144x144]到[4096x4096]之间E/VENC: [SetPortDefinition]:[5687] nFrameWidth:96 nFrameHeight:96 should between [144 X 144] [4096 X 4096]原创 2021-12-21 10:56:40 · 164 阅读 · 0 评论 -
阿里云镜像
阿里云镜像 maven { url 'https://maven.aliyun.com/repository/public/' } maven { url 'https://maven.aliyun.com/repository/google' } maven { url 'https://maven.aliyun.com/repository/gradle原创 2021-10-11 13:38:51 · 432 阅读 · 0 评论 -
Kotlin解析JSON数据
import org.json.JSONObject// Json解析operator fun Any?.get(key: String): Any? { if (this == null) return null return try { val jsonMessage = this.toString() val jsonObject = JSONObject(jsonMessage) jsonObject.get(key) }原创 2021-09-28 18:30:42 · 1332 阅读 · 0 评论 -
Kotlin标准函数的作用及使用
let: 将原始调用对象,作为参数传递到Lambda表达式中使用:使用let标准函数,辅助判空 fun doStudy(student: Student?) { student?.let { it.read() it.study() } }with: 在Lambda表达式中提供,原始调用对象的上下文,将Lambda表达式的最后一行作为返回值返回使用: 连续调用同一个对象的方法时,可以使用with标准标准函数,让代码更加精简 val list = listOf("Apple原创 2020-11-22 09:52:05 · 150 阅读 · 0 评论 -
上手Jetpack:ViewModel以及LiveData
ViewModel添加依赖implementation 'androidx.lifecycle:lifecycle-extensions:2.2.0'创建ViewModelclass StartViewModel: ViewModel() { }获取ViewModel实例class StartActivity: AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) {原创 2020-07-05 11:41:55 · 371 阅读 · 0 评论 -
Kotlin上手(二)
高阶函数定义如果一个函数接收另外一个函数作为参数,或者返回值的类型是另一个函数,那么这个函数就是高阶函数fun num1AndNum2(num1: Int, num2: Int, operation: (Int, Int) -> Int): Int { val result = operation(num1, num2) return result}怎么调用它?//首先定义一个普通函数fun plus(num1: Int, num2: Int): Int { r原创 2020-07-01 21:39:03 · 146 阅读 · 0 评论 -
Kotlin上手(一)
标准函数withwith函数接收两个参数,第一个参数是任意类型的对象,第二个是Lambda表达式。with函数会在Lambda表达式中提供第一个参数的上下文,并使用Lambda表达式中的最后一行代码作为返回值返回。fun test() { val list = listOf("Apple", "Banana", "Orange") val result = with(StringBuilder()) { append("开始吃水果")原创 2020-07-01 21:18:58 · 190 阅读 · 0 评论 -
Jetpack架构组件上手之Lifecycles
导包 // ViewModel implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:$lifecycle_version" // LiveData implementation "androidx.lifecycle:lifecycle-livedata-ktx:$lifecycle_version"作用把原本写在onCreate,onStart等等回调方法的代码放到别的类中去写举例原创 2020-06-27 19:31:32 · 143 阅读 · 0 评论 -
Kotlin学习记录(学的第一行代码第三版里面的,感兴趣的可以直接买书看看)
Kotlin学习记录1、当一个函数中只有一行代码时,可以不用编写函数体。例子:fun largerNumber(num1:Int,num2:Int){ return max(num1,num2)}fun largerNumber(num1:Int,num2:Int):Int = max(num1,num2)2、类型推导机制:因为max(num1,num2)函数返回的是一个Int值,而且函数尾部用等于号跟max()函数连接,所以Kotlin可以推导出largerNumber的返回值也原创 2020-05-30 22:16:44 · 389 阅读 · 0 评论 -
Android播放器MediaPlayer(上)
这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Ma...原创 2019-10-28 20:39:10 · 710 阅读 · 0 评论