Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

欢迎页 #1572

Merged
merged 254 commits into from
Feb 19, 2025
Merged

欢迎页 #1572

merged 254 commits into from
Feb 19, 2025

Conversation

StageGuard
Copy link
Member

@StageGuard StageGuard commented Jan 22, 2025

欢迎页有以下步骤

  • 设置主题:设置亮色/暗色,主题颜色
  • 设置代理:保证 APP 能正常访问 ani 和 bangumi 的 API
  • BT 功能:简单介绍 BitTorrent P2P,在 Android 请求通知权限
  • Bangumi 授权:简单介绍 Bangumi,点击打开浏览器授权,另外提供 step-by-step token 授权指南

其他改动

  • 修改了启动 APP 时读取 UISettings 的方式,改成在 AniAppViewModel 读取
  • 移动 DEFAULT_SEED_COLOR 到 app-platform 模块
  • 添加了 ProxySettingsFlowProxyProvider,SettingsBasedProxyProvider 改为实现这个

接下来的计划

  • 移除旧的 BangumiOAuth 和 BangumiTokenAuth 界面,复用新欢迎页的 Bangumi 授权逻辑
    • 使用新的 AuthConfigurator 和 AuthStateNew 替换现有的 AuthState
  • 修改设置界面的代理设置页,复用新欢迎页的代理设置逻辑
  • 修改设置界面的主题设置页,使用新的 ThemePreviewPanel

截图

Portrait

select theme portrait configure proxy portrait bangumi authorize portrait authorize help portrait token authorize portrait

Landscape

select theme landscape configure proxy landscape bangumi authorize landscape

@Him188
Copy link
Member

Him188 commented Jan 23, 2025

我先粗略 review 几个我比较在意的点, 以避免全写完了全都要改

Copy link
Member

@Him188 Him188 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Android relesae build does not start

23:28:43.909  E  Process: me.him188.ani, PID: 6594
                 kotlinx.serialization.SerializationException: Serializer for class 'a' is not found.
                 Please ensure that class is marked as '@Serializable' and that the serialization compiler plugin is applied.
                 
                 	at kotlinx.serialization.internal.Platform_commonKt.serializerNotRegistered(Unknown Source:11)
                 	at kotlinx.serialization.SerializersKt__SerializersKt.serializer(SourceFile:3)
                 	at kotlinx.serialization.SerializersKt.serializer(SourceFile:1)
                 	at androidx.navigation.NavGraph.setStartDestination(SourceFile:3)
                 	at androidx.navigation.NavGraphBuilder.build(SourceFile:16)
                 	at androidx.navigation.compose.NavHostKt.NavHost(SourceFile:34)
                 	at me.him188.ani.app.ui.main.AniAppContentKt$AniAppContentImpl$1.invoke(SourceFile:9)
                 	at me.him188.ani.app.ui.main.AniAppContentKt$AniAppContentImpl$1.invoke(SourceFile:1)
                 	at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(SourceFile:17)
                 	at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(SourceFile:2)
                 	at androidx.compose.animation.SharedTransitionScopeKt$SharedTransitionLayout$1.invoke(SourceFile:20)
                 	at androidx.compose.animation.SharedTransitionScopeKt$SharedTransitionLayout$1.invoke(SourceFile:1)
                 	at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(SourceFile:22)
                 	at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(SourceFile:3)
                 	at androidx.compose.animation.SharedTransitionScopeKt$SharedTransitionScope$1.invoke(SourceFile:26)
                 	at androidx.compose.animation.SharedTransitionScopeKt$SharedTransitionScope$1.invoke(SourceFile:1)
                 	at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(SourceFile:17)
                 	at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(SourceFile:2)
                 	at androidx.compose.ui.layout.LookaheadScopeKt.LookaheadScope(Unknown Source:124)
                 	at androidx.compose.animation.SharedTransitionScopeKt.SharedTransitionScope(Unknown Source:67)
                 	at androidx.compose.animation.SharedTransitionScopeKt.SharedTransitionLayout(Unknown Source:102)
                 	at me.him188.ani.app.ui.main.AniAppContentKt.AniAppContentImpl(Unknown Source:214)
                 	at me.him188.ani.app.ui.main.AniAppContentKt.access$AniAppContentImpl(Unknown Source:0)
                 	at me.him188.ani.app.ui.main.AniAppContentKt$AniAppContent$1$1$1.invoke(SourceFile:7)
                 	at me.him188.ani.app.ui.main.AniAppContentKt$AniAppContent$1$1$1.invoke(SourceFile:1)
                 	at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(SourceFile:12)
                 	at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(SourceFile:1)
                 	at androidx.compose.runtime.CompositionLocalKt.CompositionLocalProvider(SourceFile:3)
                 	at me.him188.ani.app.ui.foundation.animation.AniMotionSchemeKt.ProvideAniMotionCompositionLocals(Unknown Source:219)
                 	at me.him188.ani.app.ui.main.AniAppContentKt$AniAppContent$1$1.invoke(SourceFile:4)
                 	at me.him188.ani.app.ui.main.AniAppContentKt$AniAppContent$1$1.invoke(SourceFile:1)
                 	at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(SourceFile:12)
                 	at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(SourceFile:1)
                 	at androidx.compose.runtime.CompositionLocalKt.CompositionLocalProvider(SourceFile:7)
                 	at me.him188.ani.app.ui.main.AniAppContentKt.AniAppContent(Unknown Source:311)
                 	at me.him188.ani.app.ui.main.AniAppContentKt.AniAppContent$lambda$0(Unknown Source:6)
                 	at me.him188.ani.app.ui.main.AniAppContentKt.b(Unknown Source:0)
                 	at c3.a.invoke(Unknown Source:26)
                 	at androidx.compose.runtime.RecomposeScopeImpl.compose(Unknown Source:9)
                 	at androidx.compose.runtime.ComposerImpl.recomposeToGroupEnd(Unknown Source:126)
                 	at androidx.compose.runtime.ComposerImpl.skipCurrentGroup(Unknown Source:126)
                 	at androidx.compose.runtime.ComposerImpl.doCompose-aFTiNEg(Unknown Source:133)
                 	at androidx.compose.runtime.ComposerImpl.recompose-aFTiNEg$runtime_release(Unknown Source:35)
                 	at androidx.compose.runtime.CompositionImpl.recompose(Unknown Source:16)
                 	at androidx.compose.runtime.Recomposer.performRecompose(Unknown Source:62)

@StageGuard StageGuard enabled auto-merge (squash) February 18, 2025 03:12
@StageGuard StageGuard disabled auto-merge February 18, 2025 11:54
@Him188 Him188 added the z: ready-to-merge 状态: PR 已经可以合并, 正在等待一些安排 label Feb 19, 2025
@StageGuard StageGuard merged commit 1cbda80 into main Feb 19, 2025
21 of 22 checks passed
@StageGuard StageGuard deleted the sg/wizard-with-steps branch February 19, 2025 15:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
z: ready-to-merge 状态: PR 已经可以合并, 正在等待一些安排
Projects
None yet
Development

Successfully merging this pull request may close these issues.

欢迎页 BT 介绍 优化欢迎页
4 participants