什么可能导致startTaskLock固定,然后立即取消活动



我一直在尝试使用Android 6.0任务锁定/固定来锁定我的活动。它似乎不可行。有时,当我启动应用程序时,它会固定,并且一切都像应有的那样隐藏。其他时候它尝试了,但实际上并没有采取任何措施。例如,我得到了一个敬酒,上面写着"固定"的敬酒,然后立即说出一个"屏幕未锁定"的敬酒。最终结果是该应用程序尚未完全固定(隐藏家庭和任务切换图标(。但是,一旦进入这个周期,即使我继续尝试,它似乎也无法正常工作。这也是启动的问题,类似于此处报告的内容:

引导上的Android Pin活动

有什么办法可以告诉什么是导致Android取消我的活动的原因?它令人沮丧,因为它没有任何迹象表明它为什么不起作用。

我们的联想平板电脑无法固定家庭活动所在的任务。解决方案是在两个不同的任务中进行两个活动。

家庭活动

此活动是作为启动器启动时开始的,它唯一的责任是立即打开主要活动。请注意,它是透明的,并且具有不同的任务亲和力

<activity
    android:name=".HomeActivity"
    android:clearTaskOnLaunch="true"
    android:configChanges="orientation|screenSize"
    android:launchMode="singleTask"
    android:resumeWhilePausing="true"
    android:stateNotNeeded="true"
    android:taskAffinity="${applicationId}.home"
    android:theme="@android:style/Theme.Translucent.NoTitleBar.Fullscreen">
    <intent-filter>
        <action android:name="android.intent.action.MAIN"/>
        <category android:name="android.intent.category.HOME"/>
        <category android:name="android.intent.category.DEFAULT"/>
    </intent-filter>
</activity>

该活动也将在其onCreateonNewIntent中启动主要活动(因为它是singleTask活动(。这是Kotlin中的代码:

class HomeActivity : Activity() {
    override fun onNewIntent(intent: Intent) {
        super.onNewIntent(intent)
        handleIntent(intent)
    }
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        handleIntent(intent)
    }
    private fun handleIntent(intent: Intent) {
        val i = packageManager.getLaunchIntentForPackage(packageName)
        startActivity(i)
    }
}

主要活动

这是您的主要活动 - 应用程序的主要切入点,可以从任何启动器开始。它具有默认任务亲和力(等于应用程序ID(。

<activity
    android:name=".webview.activity.RealWebViewActivity"
    android:clearTaskOnLaunch="true"
    android:configChanges="orientation|screenSize"
    android:exported="false"
    android:launchMode="singleTask"
    android:resumeWhilePausing="true"
    android:stateNotNeeded="true">
    <intent-filter>
        <action android:name="android.intent.action.MAIN"/>
        <category android:name="android.intent.category.LAUNCHER"/>
        <category android:name="android.intent.category.DEFAULT"/>
    </intent-filter>
</activity>

相关内容

最新更新