android-使用fullscreenintent时,如何从resultactivity意图启动mainactivity?

5fjcxozz  于 2021-07-03  发布在  Java
关注(0)|答案(0)|浏览(351)

我在应用程序中有一个报警功能,我正在使用 setFullScreenIntent 解锁手机和显示警报时,通知火灾。我想在弹出通知时发出一些事件来响应本机层,然后启动mainactivity,所以我使用resultactivity作为目的。然而,当通知弹出,我听到警报,但它只显示一个空白的背景屏幕,而不是应用程序。但是,如果我锁定手机,它会立即解锁并显示应用程序。
我的问题是我是否要启动 MainActivity 正确地从 ResultActivity ? 这是实现行为的正确方法吗?
建筑物通知

Intent notificationIntent = new Intent(context, ResultActivity.class);
notificationIntent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
PendingIntent pendingIntent = PendingIntent.getActivity(context, notificationID, intent,
                    PendingIntent.FLAG_UPDATE_CURRENT);

NotificationCompat.Builder notification = new NotificationCompat.Builder(context, channelID)
                    // ...add notification stuff...
                    .setFullScreenIntent(pendingIntent, true);

结果性.kt

class DoseAlarm : ReactActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        // Do some things before launching app, like emitting an event to React Native
        val mainActivityIntent = Intent(applicationContext, getMainActivityClass())
        startActivity(mainActivityIntent)
        }
}

getmainactivityclass()

fun getMainActivityClass(): Class<*>? {
        val packageName = this.getPackageName()
        val launchIntent = this.getPackageManager().getLaunchIntentForPackage(packageName)
        val className = launchIntent!!.getComponent()!!.getClassName()
        try {
            return Class.forName(className)
        } catch (e: ClassNotFoundException) {
            Log.e(TAG, "Class $className not found")
            e.printStackTrace()
            return null
        }

    }

androidmanifest.xml文件

<activity
            android:name".ResultActivity">
</activity>
...
<activity
            android:name=".MainActivity"
            android:label="@string/app_name"
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题