adb shell am broadcast -a android.intent.action.TEST --es maxCountValue 10 -n com.example.servicedemo/.MyReceiver
enter code here
class MyReceiver : BroadcastReceiver() {
override fun onReceive(context: Context?, intent: Intent?) {
Toast.makeText(context, "CompleteReceiver", Toast.LENGTH_LONG).show()
if (intent!!.action.equals("android.intent.action.TEST")) {
val mIntent = Intent(context, MyIntentService::class.java).apply {
Log.v("MyIntentService", intent.data.toString())
this.putExtra("maxCountValue", 100)
}
context?.startService(mIntent)
}
}
}
意向服务
private const val SERVICE_NAME = "MyIntentService"
class MyIntentService : IntentService(SERVICE_NAME) {
private val handler = Handler()
override fun onCreate() {
super.onCreate()
showToast("Job Execution Started")
}
override fun onStartCommand(intent: Intent?, flags: Int, startId: Int): Int {
showToast("Job Execution onStartCommand")
return super.onStartCommand(intent, flags, startId)
}
override fun onDestroy() {
super.onDestroy()
showToast("Job Execution onDestroy")
}
override fun onHandleIntent(intent: Intent?) {
val maxCount = intent!!.getIntExtra("maxCountValue", -1)
for (i in 0 until maxCount) {
Log.d(SERVICE_NAME, "onHandleWork: The number is: $i")
try {
Thread.sleep(100)
} catch (e: InterruptedException) {
Log.d(SERVICE_NAME, "Exception: ")
e.printStackTrace()
}
}
}
private fun showToast(msg: String) {
handler.post {
Toast.makeText(this@MyIntentService, msg, Toast.LENGTH_LONG).show()
}
}
}
舱单:
<service android:name=".MyIntentService"/>
<receiver android:name=".MyReceiver">
<intent-filter>
<action android:name="android.intent.action.TEST" />
</intent-filter>
</receiver>
“出于服务限制的目的,后台的定义与内存管理使用的定义不同;应用程序可能在后台与内存管理有关,但在前台与它启动服务的能力有关。”
-
https://developer.android.com/about/versions/oreo/background
我正在使用FCM推送通知。当应用程序处于前台时,应用程序运行良好,并打算启动新活动,但当应用程序处于后台时,它不启动新活动,而是启动默认活动的实例。 }
问题内容: 我有一个媒体播放器服务,可在整个应用程序的后台播放音乐,例如: 问题在于,当用户更改应用程序或进入手机主屏幕(应用程序在后台运行)时,音乐仍在播放。 我试图停止它和方法,但是当我更改活动时这会停止音乐,这是我不希望的(我希望音乐在用户浏览活动时继续播放)。 更新资料 我尝试了广播: 我加了 在音乐服务的onCreate和接收事件的方法中: 在应用程序类中,我这样做: 但是音乐不会恢复
FCM服务。NotificationDatabaseHandler是帮助器类。正在保存邮件标题和当前时间。
我只兼职做Android开发(考虑到API的许多细微之处和低级水平,这似乎很有挑战性),并且在我的应用程序处于后台时接收通知有问题。我的目标是Android8.1。我的应用程序碰巧使用了Azure和Xamarin,但我不知道这些细节是否是问题所固有的。 如果我的应用程序在后台,有时会显示通知,但其他时候我的应用程序会因以下错误而崩溃: 我看到这样的文章:https://blog.xamarin.c
据报道,像素设备的Android 11出现了以下崩溃。 致命异常:java.lang.RuntimeException无法启动活动ComponentInfo{}:java.lang.IllegalStateException:不允许启动服务意图{}:应用程序在后台uid UidRecord{} 这只发生在Android 11设备上。谷歌Android 11的服务实现有重大变化吗?
问题内容: 每当用户断开手机通话时,我都希望显示自定义弹出消息。问题是如何检测应用程序何时未运行。任何线索都将有所帮助。 问题答案: 已经有一段时间了,并且已经有了很多发展。 首先,如何在Flutter中创建服务以使应用程序始终在后台运行有一些答案? 此外,使用Flutter插件和地理围栏(在2018年9月),Flutter / Background流程 基本上将使您指向在后台执行中等/执行Dar