使用通知Notification
Android8.0开始引入了通知渠道的概念,每条通知都要属于一个对应的渠道,每个应用程序都可以自由的创建当前应用拥有哪些通知渠道,但这些通知渠道的控制权是掌握在用户手上的,用户可以自由地选择这些通知渠道的重要程度,是否响铃、是否震动或者是否要关闭这个渠道的通知。对于每个应用来说,通知渠道的划分是非
Android多线程编程
耗时操作需要放在子线程中运行,否则会导致主线程被阻塞,从而影响用户对软件的正常使用。一、线程基本用法Kotlin中使用线程方法和Java类似,可以选择继承Thread类或实现Runnable接口来实现线程,而Kotlin还给我们提供了一种更加简单的开启线程的方法,写法如下:thread {// 编写
播放多媒体文件
Android在播放音频和视频方面做了相当不错的支持,它提供了一套较为完整的API。一、播放音频Android中播放音频文件一般使用MediaPlayer类来实现,它对多种格式音频文件提供了非常全面的控制方法,下表列出MediaPlayer类一些常用控制方法。方法名功能描述setDataSource
调用摄像头和相册
创建一个项目,用户可以选择拍照或者是从文件中选择图片,然后显示在ImageView中。首先修改activity_main.xml中代码:<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android&qu
更强大的滚动控件:RecyclerView
可以轻松实现ListView的同样效果,并且优化了不足之处。一、导入依赖在app/build.gradle中导入依赖dependencies {//如果有新版本,鼠标放在上面会提示更新implemention 'androidx.recyclerview:recyclerview:1.1.0'}二、
Android日志工具Log
一、类所在包android.util.Log二、日志方法// 琐碎、意义最小的信息。级别最低。Log.v()// 调试信息,对应debug,比v()高一级。Log.d()// 重要数据,分析用户行为数据,对应info。Log.i()// 警告信息,对应warn。Log.w()// 错误信息,比如进入
Intent启动不同程序Activity或网页
一、正常启动一个网页val intent = Intent(Intent.ACTION_VIEW)intent.data = Uri.parse("https://baidu.com")二、设置指定的Activity可以响应的数据<!-- 以下标签需配置在中 -->
隐式Intent跳转
一、设置AndroidManife.xml<activity android:name = ".SecondActivity> <intent-fliter> <!-- 指明当前Activity可以响应活动 --> &l
Fragment简单用法
一到四节演示一个简单例子,在Activity中添加两个Fragment来平分Activity左右空间。一、新建左Fragment(left_fragment.xml)<LinearLayout...><Button.../>二、新建右Fragment(right_fragme
使用限定符动态加载布局
一、Android常见限定符——屏幕大小smal小屏幕设备normal中等屏幕large大屏幕xlarge超大屏幕二、Android常见限定符——屏幕分辨率ldpi低分辨率(120dpi以下)mdpi中等分辨率(120dpi ~ 160dpi)hdpi高分辨率(160dpi ~ 240dpi)xhd