博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
android#service的基本使用
阅读量:3953 次
发布时间:2019-05-24

本文共 2448 字,大约阅读时间需要 8 分钟。

service 的实例代码

package com.lyr.myapplication.serviceimport android.content.Intentimport android.os.IBinderimport android.util.Logimport androidx.lifecycle.LifecycleServiceimport androidx.lifecycle.lifecycleScopeimport kotlinx.coroutines.delayimport kotlinx.coroutines.launchclass ExampleService : LifecycleService() {
var number = 0 override fun onCreate() {
super.onCreate() Log.i("xxx", "开启服务") } override fun onStartCommand(intent: Intent?, flags: Int, startId: Int): Int {
lifecycleScope.launch{
while (true) {
delay(1_000) Log.d("xx","${++number}") } } return super.onStartCommand(intent, flags, startId) override fun onBind(intent: Intent): IBinder {
super.onBind(intent) TODO("XX ") }}

onCreate 的时候,启动后台服务

package com.lyr.myapplicationimport android.content.Intentimport android.os.Bundleimport android.os.PersistableBundleimport android.util.Logimport androidx.appcompat.app.AppCompatActivityimport com.lyr.myapplication.service.ExampleServiceimport kotlinx.android.synthetic.main.webview_example.*/** * @Author  lyr * @create 2020/10/12 22:18 */class WebViewExampleActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?){
super.onCreate(savedInstanceState) setContentView(R.layout.webview_example) Log.i("x","加载页面") webView.settings.javaScriptEnabled = true// webView.loadUrl("https://m.baidu.com") //webView.loadUrl("file:///") webView.loadUrl("file:///android_asset/example.html");// Intent(this,ExampleActivity::class.java).also {
// startActivity(it)// } Intent(this,ExampleService::class.java).also {
startService(it) } }}

需要导入 的 依赖

implementation group: 'androidx.lifecycle', name: 'lifecycle-service', version: '2.2.0'    // https://mvnrepository.com/artifact/androidx.lifecycle/lifecycle-livedata    implementation group: 'androidx.lifecycle', name: 'lifecycle-livedata', version: '2.2.0'    // https://mvnrepository.com/artifact/androidx.lifecycle/lifecycle-livedata-ktx    implementation group: 'androidx.lifecycle', name: 'lifecycle-livedata-ktx', version: '2.2.0'    // https://mvnrepository.com/artifact/androidx.lifecycle/lifecycle-runtime    implementation group: 'androidx.lifecycle', name: 'lifecycle-runtime-ktx', version: '2.2.0'

转载地址:http://mzyzi.baihongyu.com/

你可能感兴趣的文章
c++ 标准模板库 List
查看>>
Android键盘系统相关代码分析(1)
查看>>
Android键盘系统
查看>>
关于构造IOCTL命令的学习心得
查看>>
Android Keyboard/Touch Panel分析
查看>>
Linux Kernel and Android休眠与唤醒
查看>>
Android Framework 分析
查看>>
inotify -- Linux 2.6 内核中的文件系统变化通知机制
查看>>
C++和JNI的数据转换
查看>>
poll()函数的使用
查看>>
I/O多路复用详解(二)
查看>>
深入理解硬盘的Linux分区
查看>>
ARM 指令集>>跳转指令
查看>>
gpio linux 实现模型
查看>>
Linux 2440 LCD 控制器
查看>>
/sys/bus/i2c/devices下的内容与i2c_board_info结构体
查看>>
为linux虚拟机增加第二块硬盘
查看>>
Linux那些事儿之我是EHCI(2) 套路
查看>>
i2c-adapter的注册过程
查看>>
container_of()宏
查看>>