feat: 适配 Activity 嵌入
This commit is contained in:
parent
2a44a4fb1c
commit
310ed1dbae
|
|
@ -103,6 +103,9 @@ dependencies {
|
||||||
implementation "androidx.browser:browser:1.3.0"
|
implementation "androidx.browser:browser:1.3.0"
|
||||||
implementation "androidx.viewpager2:viewpager2:1.0.0"
|
implementation "androidx.viewpager2:viewpager2:1.0.0"
|
||||||
implementation "androidx.palette:palette-ktx:1.0.0"
|
implementation "androidx.palette:palette-ktx:1.0.0"
|
||||||
|
implementation "androidx.window:window:1.0.0-beta03"
|
||||||
|
implementation "androidx.startup:startup-runtime:1.1.0"
|
||||||
|
|
||||||
|
|
||||||
//Test
|
//Test
|
||||||
testImplementation "junit:junit:4.13.2"
|
testImplementation "junit:junit:4.13.2"
|
||||||
|
|
|
||||||
|
|
@ -277,6 +277,16 @@
|
||||||
android:name="android.support.FILE_PROVIDER_PATHS"
|
android:name="android.support.FILE_PROVIDER_PATHS"
|
||||||
android:resource="@xml/file_paths_share_img" />
|
android:resource="@xml/file_paths_share_img" />
|
||||||
</provider>
|
</provider>
|
||||||
|
|
||||||
|
<provider
|
||||||
|
android:name="androidx.startup.InitializationProvider"
|
||||||
|
android:authorities="com.huanchengfly.tieba.post.androidx-startup"
|
||||||
|
android:exported="false"
|
||||||
|
tools:node="merge">
|
||||||
|
<meta-data
|
||||||
|
android:name="com.huanchengfly.tieba.post.components.WindowInitializer"
|
||||||
|
android:value="androidx.startup" />
|
||||||
|
</provider>
|
||||||
</application>
|
</application>
|
||||||
|
|
||||||
</manifest>
|
</manifest>
|
||||||
|
|
@ -30,21 +30,17 @@
|
||||||
"from": "com.huanchengfly.tieba.post.activities.MessageActivity",
|
"from": "com.huanchengfly.tieba.post.activities.MessageActivity",
|
||||||
"to": "com.huanchengfly.tieba.post.activities.FloorActivity"
|
"to": "com.huanchengfly.tieba.post.activities.FloorActivity"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"from": "com.huanchengfly.tieba.post.activities.HistoryActivity",
|
|
||||||
"to": "com.huanchengfly.tieba.post.activities.ThreadActivity"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"from": "com.huanchengfly.tieba.post.activities.UserCollectActivity",
|
"from": "com.huanchengfly.tieba.post.activities.UserCollectActivity",
|
||||||
"to": "com.huanchengfly.tieba.post.activities.ThreadActivity"
|
"to": "com.huanchengfly.tieba.post.activities.ThreadActivity"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"from": "com.huanchengfly.tieba.post.activities.UserActivity",
|
"from": "com.huanchengfly.tieba.post.activities.UserCollectActivity",
|
||||||
"to": "com.huanchengfly.tieba.post.activities.ThreadActivity"
|
"to": "com.huanchengfly.tieba.post.activities.UserActivity"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"from": "com.huanchengfly.tieba.post.activities.HistoryActivity",
|
"from": "com.huanchengfly.tieba.post.activities.UserActivity",
|
||||||
"to": "com.huanchengfly.tieba.post.activities.UserCollectActivity"
|
"to": "com.huanchengfly.tieba.post.activities.ThreadActivity"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"transActivities": [],
|
"transActivities": [],
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,19 @@
|
||||||
|
package com.huanchengfly.tieba.post.components
|
||||||
|
|
||||||
|
import android.content.Context
|
||||||
|
import androidx.startup.Initializer
|
||||||
|
import androidx.window.core.ExperimentalWindowApi
|
||||||
|
import androidx.window.embedding.SplitController
|
||||||
|
import com.huanchengfly.tieba.post.R
|
||||||
|
|
||||||
|
@ExperimentalWindowApi
|
||||||
|
class WindowInitializer : Initializer<SplitController> {
|
||||||
|
override fun create(context: Context): SplitController {
|
||||||
|
SplitController.initialize(context, R.xml.main_split_config)
|
||||||
|
return SplitController.getInstance()
|
||||||
|
}
|
||||||
|
|
||||||
|
override fun dependencies(): List<Class<out Initializer<*>>> {
|
||||||
|
return emptyList()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,33 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<resources xmlns:window="http://schemas.android.com/apk/res-auto">
|
||||||
|
<SplitPairRule
|
||||||
|
window:splitRatio="0.5"
|
||||||
|
window:splitMinWidth="600dp"
|
||||||
|
window:finishPrimaryWithSecondary="false"
|
||||||
|
window:finishSecondaryWithPrimary="true">
|
||||||
|
<SplitPairFilter
|
||||||
|
window:primaryActivityName=".activities.MainActivity"
|
||||||
|
window:secondaryActivityName="*/*" />
|
||||||
|
<SplitPairFilter
|
||||||
|
window:primaryActivityName=".activities.NewSearchActivity"
|
||||||
|
window:secondaryActivityName="*/*" />
|
||||||
|
<SplitPairFilter
|
||||||
|
window:primaryActivityName=".activities.ForumActivity"
|
||||||
|
window:secondaryActivityName="*/*" />
|
||||||
|
<SplitPairFilter
|
||||||
|
window:primaryActivityName=".activities.ThreadActivity"
|
||||||
|
window:secondaryActivityName="*/*" />
|
||||||
|
<SplitPairFilter
|
||||||
|
window:primaryActivityName=".activities.MessageActivity"
|
||||||
|
window:secondaryActivityName=".activities.FloorActivity" />
|
||||||
|
<SplitPairFilter
|
||||||
|
window:primaryActivityName=".activities.UserCollectActivity"
|
||||||
|
window:secondaryActivityName=".activities.ThreadActivity" />
|
||||||
|
<SplitPairFilter
|
||||||
|
window:primaryActivityName=".activities.UserCollectActivity"
|
||||||
|
window:secondaryActivityName=".activities.UserActivity" />
|
||||||
|
<SplitPairFilter
|
||||||
|
window:primaryActivityName=".activities.UserActivity"
|
||||||
|
window:secondaryActivityName=".activities.ThreadActivity" />
|
||||||
|
</SplitPairRule>
|
||||||
|
</resources>
|
||||||
Loading…
Reference in New Issue