Skip to content
This repository was archived by the owner on Jul 18, 2026. It is now read-only.

Commit d67b8f3

Browse files
authored
Merge pull request #262 from misaka10032w/develop
[Fix] 适配解析新的网站布局
2 parents a5deea2 + 0e90896 commit d67b8f3

17 files changed

Lines changed: 441 additions & 518 deletions

File tree

app/build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ android {
3737
applicationId = "com.yenaly.han1meviewer"
3838
minSdk = property("min.sdk")?.toString()?.toIntOrNull()
3939
targetSdk = property("target.sdk")?.toString()?.toIntOrNull()
40-
val (code, name) = createVersion(major = 0, minor = 22, patch = 7)
40+
val (code, name) = createVersion(major = 0, minor = 23, patch = 0)
4141
versionCode = code
4242
versionName = name
4343

app/src/main/java/com/yenaly/han1meviewer/logic/Parser.kt

Lines changed: 96 additions & 176 deletions
Large diffs are not rendered by default.

app/src/main/java/com/yenaly/han1meviewer/logic/model/HanimeInfo.kt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ data class HanimeInfo(
2727
override val reviews: String? = "",
2828
override val currentArtist: String? = "",
2929
val watched: Boolean ?= false,
30+
override val upLoadTime: String? = null
3031
): VideoItemType , HanimeInfoType {
3132
companion object {
3233
const val NORMAL = 0

app/src/main/java/com/yenaly/han1meviewer/logic/model/HomePage.kt

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -12,16 +12,16 @@ data class HomePage(
1212
val banner: Banner?,
1313
val latestHanime: MutableList<HanimeInfo>,
1414
val latestRelease: MutableList<HanimeInfo>,
15-
val latestUpload: MutableList<HanimeInfo>,
16-
val chineseSubtitle: MutableList<HanimeInfo>,
17-
val hanimeTheyWatched: MutableList<HanimeInfo>,
18-
val hanimeCurrent: MutableList<HanimeInfo>,
19-
val hotHanimeMonthly: MutableList<HanimeInfo>,
20-
val animeShort: MutableList<HanimeInfo>,
15+
val ecchiAnime: MutableList<HanimeInfo>,
16+
val shortEpisodeAnime: MutableList<HanimeInfo>,
17+
val twoPointFiveDAnime: MutableList<HanimeInfo>,
18+
val threeDCG: MutableList<HanimeInfo>,
2119
val motionAnime: MutableList<HanimeInfo>,
22-
val thereDWork: MutableList<HanimeInfo>, //3D作品
23-
val douJinWork: MutableList<HanimeInfo>, //同人
20+
val twoDAnime: MutableList<HanimeInfo>,
21+
val aiGenerated: MutableList<HanimeInfo>,
22+
val mmd: MutableList<HanimeInfo>,
2423
val cosplay: MutableList<HanimeInfo>,
24+
val watchingNow: MutableList<HanimeInfo>,
2525
val newAnimeTrailer: MutableList<HanimeInfo>,
2626
val timestamp: Long = System.currentTimeMillis()
2727
) {

app/src/main/java/com/yenaly/han1meviewer/logic/model/MySubscriptions.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,5 +24,6 @@ data class SubscriptionVideosItem(
2424
override val duration: String? = null,
2525
override val views: String? = null,
2626
override val reviews: String? = null,
27-
override val currentArtist: String? = null
27+
override val currentArtist: String? = null,
28+
override val upLoadTime: String?= null,
2829
) : Parcelable, VideoItemType

app/src/main/java/com/yenaly/han1meviewer/logic/model/VideoItemType.kt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,4 +8,5 @@ interface VideoItemType {
88
val views: String?
99
val reviews: String?
1010
val currentArtist: String?
11+
val upLoadTime: String?
1112
}

app/src/main/java/com/yenaly/han1meviewer/ui/fragment/ComposeItem.kt

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ import androidx.compose.ui.res.painterResource
3636
import androidx.compose.ui.res.stringResource
3737
import androidx.compose.ui.text.style.TextAlign
3838
import androidx.compose.ui.text.style.TextOverflow
39+
import androidx.compose.ui.tooling.preview.Preview
3940
import androidx.compose.ui.unit.dp
4041
import androidx.compose.ui.unit.sp
4142
import androidx.compose.ui.zIndex
@@ -229,6 +230,16 @@ fun VideoCardItem(
229230
overflow = TextOverflow.Ellipsis,
230231
color = MaterialTheme.colorScheme.onSurface
231232
)
233+
Spacer(modifier = Modifier.weight(1f))
234+
}
235+
if (!videoItem.upLoadTime.isNullOrEmpty()) {
236+
Text(
237+
text = videoItem.upLoadTime!!,
238+
fontSize = 11.sp,
239+
maxLines = 1,
240+
overflow = TextOverflow.Ellipsis,
241+
color = MaterialTheme.colorScheme.onSurface
242+
)
232243
}
233244
}
234245
}
@@ -335,3 +346,38 @@ fun EmptyView(hint: String, picRes: Int = R.drawable.h_chan_speechless) {
335346
}
336347
}
337348
}
349+
350+
@Preview(showBackground = true)
351+
@Composable
352+
fun VideoCardPreview(){
353+
MaterialTheme {
354+
VideoCardItem(fakeVideosItem, onClickVideosItem = { }, onLongClickVideosItem = {_,_->})
355+
}
356+
}
357+
358+
@Preview
359+
@Composable
360+
fun PlaylistItemPreview(){
361+
MaterialTheme {
362+
PlaylistItem(
363+
playlist = fakePlaylists.first(),
364+
modifier = Modifier.padding(8.dp).height(140.dp)
365+
)
366+
}
367+
}
368+
369+
@Preview(showBackground = true)
370+
@Composable
371+
fun ArtistPreview(){
372+
MaterialTheme {
373+
ArtistItem(fakeArtists.first(), onClickArtist = {}, onLongClickArtist = {}, modifier = Modifier)
374+
}
375+
}
376+
377+
@Preview(showBackground = true)
378+
@Composable
379+
fun EmptyViewPreview(){
380+
MaterialTheme {
381+
EmptyView("发生了一些事情")
382+
}
383+
}

app/src/main/java/com/yenaly/han1meviewer/ui/fragment/ComposePreview.kt

Lines changed: 0 additions & 187 deletions
This file was deleted.

app/src/main/java/com/yenaly/han1meviewer/ui/fragment/ComposePreviewDataSource.kt

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -24,39 +24,44 @@ val fakeVideos = listOf(
2424
videoCode = "101573",
2525
duration = "04:34",
2626
views = "44.9万次",
27-
reviews = "100%"
27+
reviews = "100%",
28+
upLoadTime = "2010-12-10"
2829
),
2930
SubscriptionVideosItem(
3031
title = "姐姐的秘密训练",
3132
coverUrl = "https://vdownload.hembed.com/image/thumbnail/101574l.jpg",
3233
videoCode = "101574",
3334
duration = "23:15",
3435
views = "22.1万次",
35-
reviews = "95%"
36+
reviews = "95%",
37+
upLoadTime = "2010-12-10"
3638
),
3739
SubscriptionVideosItem(
3840
title = "放学后的约定",
3941
coverUrl = "https://vdownload.hembed.com/image/thumbnail/101575l.jpg",
4042
videoCode = "101575",
4143
duration = "18:02",
4244
views = "58.3万次",
43-
reviews = "97%"
45+
reviews = "97%",
46+
upLoadTime = "2010-12-10"
4447
),
4548
SubscriptionVideosItem(
4649
title = "班长的福利日",
4750
coverUrl = "https://vdownload.hembed.com/image/thumbnail/101576l.jpg",
4851
videoCode = "101576",
4952
duration = "12:47",
5053
views = "30.0万次",
51-
reviews = "92%"
54+
reviews = "92%",
55+
upLoadTime = "2010-12-10"
5256
),
5357
SubscriptionVideosItem(
5458
title = "图书馆的秘密角落",
5559
coverUrl = "https://vdownload.hembed.com/image/thumbnail/101577l.jpg",
5660
videoCode = "101577",
5761
duration = "15:20",
5862
views = "61.7万次",
59-
reviews = "99%"
63+
reviews = "99%",
64+
upLoadTime = "2010-12-10"
6065
)
6166
)
6267
val fakeVideosItem =
@@ -66,7 +71,8 @@ val fakeVideosItem =
6671
videoCode = "101573",
6772
duration = "04:34",
6873
views = "44.9万次",
69-
reviews = "100%"
74+
reviews = "100%",
75+
upLoadTime = "2020-12-12"
7076
)
7177

7278
fun generateFakeCheckInRecords(

0 commit comments

Comments
 (0)