diff --git a/.github/ISSUE_TEMPLATE/bug.yml b/.github/ISSUE_TEMPLATE/bug.yml
index 4973964..ca10c36 100644
--- a/.github/ISSUE_TEMPLATE/bug.yml
+++ b/.github/ISSUE_TEMPLATE/bug.yml
@@ -19,8 +19,8 @@ body:
label: my-ty 版本
description: 请选择正在使用的版本
options:
- - 最新稳定版
- - 最新 CI 版
+ - 通用版
+ - 专用版
validations:
required: true
- type: textarea
diff --git a/.github/ISSUE_TEMPLATE/fr.yml b/.github/ISSUE_TEMPLATE/fr.yml
index e409ba4..4485c5c 100644
--- a/.github/ISSUE_TEMPLATE/fr.yml
+++ b/.github/ISSUE_TEMPLATE/fr.yml
@@ -11,7 +11,7 @@ body:
options:
- label: 之前没有人提交过类似或相同的功能请求。
required: true
- - label: 这个建议不会背离 LibChecker 的初衷。
+ - label: 这个建议不会背离 my-tv 的初衷。
required: true
- type: textarea
id: propose
diff --git a/README.md b/README.md
index d23e63a..1948802 100644
--- a/README.md
+++ b/README.md
@@ -14,11 +14,21 @@
## 更新日志
+### v1.6.4(通用)
+
+* 增加CETV1
+* 增加凤凰卫视
+* 默认关闭开机启动
+
### v1.6.2(通用)
* 修复按键无效的问题
* 新的频道列表样式
+### v1.6.1(安卓5及以上专用)
+
+* 增加凤凰卫视
+
### v1.6.0(通用)
* 通用(春晚緊急修復)
@@ -195,7 +205,7 @@ adb install my-tv.apk
## TODO
* 音量不同
-* 大湾区卫视、广东4k超高清、广东珠江
+* 大湾区卫视、广东4k超高清、广东珠江、三沙卫视
* CETV教育频道
* CHC高清三个电影频道
* 地方频道
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 43b8090..3bb6bc5 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -38,5 +38,9 @@
+
\ No newline at end of file
diff --git a/app/src/main/java/com/lizongying/mytv/BootReceiver.kt b/app/src/main/java/com/lizongying/mytv/BootReceiver.kt
index 773c3b6..26f83c9 100644
--- a/app/src/main/java/com/lizongying/mytv/BootReceiver.kt
+++ b/app/src/main/java/com/lizongying/mytv/BootReceiver.kt
@@ -7,8 +7,7 @@ import android.content.Intent
class BootReceiver : BroadcastReceiver() {
override fun onReceive(context: Context, intent: Intent) {
- val sp = context.getSharedPreferences("MainActivity", Context.MODE_PRIVATE)
- if (sp.getBoolean(MainActivity.BOOT_STARTUP, true)) {
+ if (SP.bootStartup) {
context.startActivity(
Intent(context, MainActivity::class.java)
.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)
diff --git a/app/src/main/java/com/lizongying/mytv/CardAdapter.kt b/app/src/main/java/com/lizongying/mytv/CardAdapter.kt
index 6b59017..715a216 100644
--- a/app/src/main/java/com/lizongying/mytv/CardAdapter.kt
+++ b/app/src/main/java/com/lizongying/mytv/CardAdapter.kt
@@ -109,6 +109,11 @@ class CardAdapter(
.centerInside()
.into(cardView.mainImageView)
+ "CETV1" -> Glide.with(viewHolder.view.context)
+ .load(R.drawable.cetv1)
+ .centerInside()
+ .into(cardView.mainImageView)
+
else -> Glide.with(viewHolder.view.context)
.load(tvViewModel.logo.value)
.centerInside()
diff --git a/app/src/main/java/com/lizongying/mytv/InfoFragment.kt b/app/src/main/java/com/lizongying/mytv/InfoFragment.kt
index 258a9af..8817731 100644
--- a/app/src/main/java/com/lizongying/mytv/InfoFragment.kt
+++ b/app/src/main/java/com/lizongying/mytv/InfoFragment.kt
@@ -47,6 +47,10 @@ class InfoFragment : Fragment() {
.load(R.drawable.bingtuan)
.into(binding.infoLogo)
+ "CETV1" -> Glide.with(this)
+ .load(R.drawable.cetv1)
+ .into(binding.infoLogo)
+
else -> Glide.with(this)
.load(tvViewModel.logo.value)
.into(binding.infoLogo)
diff --git a/app/src/main/java/com/lizongying/mytv/InitializerProvider.kt b/app/src/main/java/com/lizongying/mytv/InitializerProvider.kt
new file mode 100644
index 0000000..106277f
--- /dev/null
+++ b/app/src/main/java/com/lizongying/mytv/InitializerProvider.kt
@@ -0,0 +1,39 @@
+package com.lizongying.mytv
+
+import android.content.ContentProvider
+import android.content.ContentValues
+import android.net.Uri
+
+internal class InitializerProvider : ContentProvider() {
+
+ // Happens before Application#onCreate.It's fine to init something here
+ override fun onCreate(): Boolean {
+ SP.init(context!!)
+ return true
+ }
+
+ override fun query(
+ uri: Uri,
+ projection: Array?,
+ selection: String?,
+ selectionArgs: Array?,
+ sortOrder: String?,
+ ) = unsupported()
+
+ override fun getType(uri: Uri) = unsupported()
+
+ override fun insert(uri: Uri, values: ContentValues?) = unsupported()
+
+ override fun delete(uri: Uri, selection: String?, selectionArgs: Array?) =
+ unsupported()
+
+ override fun update(
+ uri: Uri,
+ values: ContentValues?,
+ selection: String?,
+ selectionArgs: Array?,
+ ) = unsupported()
+
+ private fun unsupported(errorMessage: String? = null): Nothing =
+ throw UnsupportedOperationException(errorMessage)
+}
diff --git a/app/src/main/java/com/lizongying/mytv/MainActivity.kt b/app/src/main/java/com/lizongying/mytv/MainActivity.kt
index 129acd4..98075c1 100644
--- a/app/src/main/java/com/lizongying/mytv/MainActivity.kt
+++ b/app/src/main/java/com/lizongying/mytv/MainActivity.kt
@@ -1,7 +1,5 @@
package com.lizongying.mytv
-import android.content.Context
-import android.content.SharedPreferences
import android.content.pm.PackageInfo
import android.content.pm.PackageManager
import android.content.pm.Signature
@@ -44,11 +42,6 @@ class MainActivity : FragmentActivity() {
private val delayHideMain: Long = 5000
private val delayHideSetting: Long = 10000
- lateinit var sharedPref: SharedPreferences
- private var channelReversal = false
- private var channelNum = true
- private var bootStartup = false
-
init {
lifecycleScope.launch(Dispatchers.IO) {
val utilsJob = async(start = CoroutineStart.LAZY) { Utils.init() }
@@ -78,12 +71,6 @@ class MainActivity : FragmentActivity() {
.commit()
}
gestureDetector = GestureDetector(this, GestureListener())
-
- sharedPref = getPreferences(Context.MODE_PRIVATE)
- channelReversal = sharedPref.getBoolean(CHANNEL_REVERSAL, channelReversal)
- channelNum = sharedPref.getBoolean(CHANNEL_NUM, channelNum)
- bootStartup = sharedPref.getBoolean(BOOT_STARTUP, bootStartup)
-
val packageInfo = getPackageInfo()
val versionName = packageInfo.versionName
val versionCode = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) {
@@ -91,13 +78,12 @@ class MainActivity : FragmentActivity() {
} else {
packageInfo.versionCode.toLong()
}
- settingFragment =
- SettingFragment(versionName, versionCode, channelReversal, channelNum, bootStartup)
+ settingFragment = SettingFragment(versionName, versionCode, SP.channelReversal, SP.channelNum, SP.bootStartup)
}
fun showInfoFragment(tvViewModel: TVViewModel) {
infoFragment.show(tvViewModel)
- if (channelNum) {
+ if (SP.channelNum) {
channelFragment.show(tvViewModel)
}
}
@@ -111,7 +97,7 @@ class MainActivity : FragmentActivity() {
return
}
- if (channelNum) {
+ if (SP.channelNum) {
channelFragment.show(channel)
}
}
@@ -239,30 +225,6 @@ class MainActivity : FragmentActivity() {
}
}
- fun saveChannelReversal(channelReversal: Boolean) {
- with(sharedPref.edit()) {
- putBoolean(CHANNEL_REVERSAL, channelReversal)
- apply()
- }
- this.channelReversal = channelReversal
- }
-
- fun saveChannelNum(channelNum: Boolean) {
- with(sharedPref.edit()) {
- putBoolean(CHANNEL_NUM, channelNum)
- apply()
- }
- this.channelNum = channelNum
- }
-
- fun saveBootStartup(bootStartup: Boolean) {
- with(sharedPref.edit()) {
- putBoolean(BOOT_STARTUP, bootStartup)
- apply()
- }
- this.bootStartup = bootStartup
- }
-
private fun showSetting() {
if (!mainFragment.isHidden) {
return
@@ -286,7 +248,7 @@ class MainActivity : FragmentActivity() {
private fun channelUp() {
if (mainFragment.isHidden) {
- if (channelReversal) {
+ if (SP.channelReversal) {
next()
return
}
@@ -303,7 +265,7 @@ class MainActivity : FragmentActivity() {
private fun channelDown() {
if (mainFragment.isHidden) {
- if (channelReversal) {
+ if (SP.channelReversal) {
prev()
return
}
@@ -557,10 +519,7 @@ class MainActivity : FragmentActivity() {
handler.removeCallbacks(hideMain)
}
- companion object {
- private const val TAG = "MainActivity"
- private const val CHANNEL_REVERSAL = "channel_reversal"
- private const val CHANNEL_NUM = "channel_num"
- const val BOOT_STARTUP = "boot_startup"
+ private companion object {
+ const val TAG = "MainActivity"
}
}
\ No newline at end of file
diff --git a/app/src/main/java/com/lizongying/mytv/MainFragment.kt b/app/src/main/java/com/lizongying/mytv/MainFragment.kt
index fff05ce..6495457 100644
--- a/app/src/main/java/com/lizongying/mytv/MainFragment.kt
+++ b/app/src/main/java/com/lizongying/mytv/MainFragment.kt
@@ -1,6 +1,5 @@
package com.lizongying.mytv
-import android.content.SharedPreferences
import android.os.Bundle
import android.os.Handler
import android.os.Looper
@@ -37,8 +36,6 @@ class MainFragment : Fragment(), CardAdapter.ItemListener {
var tvListViewModel = TVListViewModel()
- private lateinit var sharedPref: SharedPreferences
-
private var lastVideoUrl = ""
private val handler = Handler(Looper.getMainLooper())
@@ -56,9 +53,8 @@ class MainFragment : Fragment(), CardAdapter.ItemListener {
super.onActivityCreated(savedInstanceState)
activity?.let { request.initYSP(it) }
- sharedPref = (activity as? MainActivity)?.sharedPref!!
- itemPosition = sharedPref.getInt(POSITION, 0)
+ itemPosition = SP.itemPosition
view?.post {
val content = binding.content
@@ -343,10 +339,7 @@ class MainFragment : Fragment(), CardAdapter.ItemListener {
override fun onStop() {
Log.i(TAG, "onStop")
super.onStop()
- with(sharedPref.edit()) {
- putInt(POSITION, itemPosition)
- apply()
- }
+ SP.itemPosition = itemPosition
Log.i(TAG, "$POSITION $itemPosition saved")
}
diff --git a/app/src/main/java/com/lizongying/mytv/Request.kt b/app/src/main/java/com/lizongying/mytv/Request.kt
index 6bceea9..ecc2aed 100644
--- a/app/src/main/java/com/lizongying/mytv/Request.kt
+++ b/app/src/main/java/com/lizongying/mytv/Request.kt
@@ -9,6 +9,8 @@ import com.lizongying.mytv.Utils.getDateFormat
import com.lizongying.mytv.api.ApiClient
import com.lizongying.mytv.api.Auth
import com.lizongying.mytv.api.AuthRequest
+import com.lizongying.mytv.api.FAuth
+import com.lizongying.mytv.api.FAuthService
import com.lizongying.mytv.api.Info
import com.lizongying.mytv.api.LiveInfo
import com.lizongying.mytv.api.LiveInfoRequest
@@ -33,6 +35,7 @@ class Request {
private var yspApiService: YSPApiService = ApiClient().yspApiService
private var yspBtraceService: YSPBtraceService = ApiClient().yspBtraceService
private var yspProtoService: YSPProtoService = ApiClient().yspProtoService
+ private var fAuthService: FAuthService = ApiClient().fAuthService
private var ysp: YSP? = null
private var token = ""
@@ -328,7 +331,7 @@ class Request {
token = response.body()?.data?.token!!
Log.i(TAG, "info success $token")
val cookie =
- "versionName=99.99.99; versionCode=999999; vplatform=109; platformVersion=Chrome; deviceModel=120; appid=1400421205; yspappid=519748109;yspopenid=vu0-8lgGV2LW9QjDeuBFsX8yMnzs37Q3_HZF6XyVDpGR_I; vusession=$token"
+ "versionName=99.99.99; versionCode=999999; vplatform=109; platformVersion=Chrome; deviceModel=120; appid=1400421205; yspappid=519748109; yspopenid=vu0-8lgGV2LW9QjDeuBFsX8yMnzs37Q3_HZF6XyVDpGR_I; vusession=$token"
fetchVideo(tvModel, cookie)
} else {
Log.e(TAG, "info status error")
@@ -361,12 +364,53 @@ class Request {
})
} else {
val cookie =
- "versionName=99.99.99; versionCode=999999; vplatform=109; platformVersion=Chrome; deviceModel=120; appid=1400421205; yspappid=519748109;yspopenid=vu0-8lgGV2LW9QjDeuBFsX8yMnzs37Q3_HZF6XyVDpGR_I; vusession=$token"
+ "versionName=99.99.99; versionCode=999999; vplatform=109; platformVersion=Chrome; deviceModel=120; appid=1400421205; yspappid=519748109; yspopenid=vu0-8lgGV2LW9QjDeuBFsX8yMnzs37Q3_HZF6XyVDpGR_I; vusession=$token"
fetchVideo(tvModel, cookie)
}
}
+ private var fAuth: Call? = null
+ fun fetchFAuth(tvModel: TVViewModel) {
+ call?.cancel()
+ callAuth?.cancel()
+ fAuth?.cancel()
+
+ val title = tvModel.title.value
+
+ fAuth = fAuthService.getAuth(tvModel.getTV().pid, "HD")
+ fAuth?.enqueue(object : Callback {
+ override fun onResponse(call: Call, response: Response) {
+ if (response.isSuccessful && response.body()?.data?.live_url != null) {
+ val url = response.body()?.data?.live_url!!
+// Log.d(TAG, "$title url $url")
+ tvModel.addVideoUrl(url)
+ tvModel.allReady()
+ tvModel.retryTimes = 0
+ } else {
+ Log.e(TAG, "auth status error")
+ if (tvModel.tokenRetryTimes < tvModel.tokenRetryMaxTimes) {
+ tvModel.tokenRetryTimes++
+ fetchFAuth(tvModel)
+ }
+ }
+ }
+
+ override fun onFailure(call: Call, t: Throwable) {
+ Log.e(TAG, "auth request error $t")
+ if (tvModel.tokenRetryTimes < tvModel.tokenRetryMaxTimes) {
+ tvModel.tokenRetryTimes++
+ fetchFAuth(tvModel)
+ }
+ }
+ })
+ }
+
fun fetchData(tvModel: TVViewModel) {
+ if (tvModel.getTV().channel == "港澳台") {
+ fetchFAuth(tvModel)
+ return
+ }
+
if (tvModel.getTV().needToken) {
if (needAuth) {
fetchAuth(tvModel)
diff --git a/app/src/main/java/com/lizongying/mytv/SP.kt b/app/src/main/java/com/lizongying/mytv/SP.kt
new file mode 100644
index 0000000..583bd5f
--- /dev/null
+++ b/app/src/main/java/com/lizongying/mytv/SP.kt
@@ -0,0 +1,48 @@
+package com.lizongying.mytv
+
+import android.content.Context
+import android.content.SharedPreferences
+
+object SP {
+ // Name of the sp file TODO Should use a meaningful name and do migrations
+ private const val SP_FILE_NAME = "MainActivity"
+ // If Change channel with up and down in reversed order or not
+ private const val KEY_CHANNEL_REVERSAL = "channel_reversal"
+ // If use channel num to select channel or not
+ private const val KEY_CHANNEL_NUM = "channel_num"
+ // If start app on device boot or not
+ private const val KEY_BOOT_STARTUP = "boot_startup"
+ // Position in list of the selected channel item
+ private const val KEY_POSITION = "position"
+ // guid
+ private const val KEY_GUID = "guid"
+
+ private lateinit var sp: SharedPreferences
+
+ /**
+ * The method must be invoked as early as possible(At least before using the keys)
+ */
+ fun init(context: Context) {
+ sp = context.getSharedPreferences(SP_FILE_NAME, Context.MODE_PRIVATE)
+ }
+
+ var channelReversal: Boolean
+ get() = sp.getBoolean(KEY_CHANNEL_REVERSAL, false)
+ set(value) = sp.edit().putBoolean(KEY_CHANNEL_REVERSAL, value).apply()
+
+ var channelNum: Boolean
+ get() = sp.getBoolean(KEY_CHANNEL_NUM, true)
+ set(value) = sp.edit().putBoolean(KEY_CHANNEL_NUM, value).apply()
+
+ var bootStartup: Boolean
+ get() = sp.getBoolean(KEY_BOOT_STARTUP, false)
+ set(value) = sp.edit().putBoolean(KEY_BOOT_STARTUP, value).apply()
+
+ var itemPosition: Int
+ get() = sp.getInt(KEY_POSITION, 0)
+ set(value) = sp.edit().putInt(KEY_POSITION, value).apply()
+
+ var guid: String
+ get() = sp.getString(KEY_GUID, "") ?: ""
+ set(value) = sp.edit().putString(KEY_GUID, value).apply()
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/lizongying/mytv/SettingFragment.kt b/app/src/main/java/com/lizongying/mytv/SettingFragment.kt
index d713772..801f279 100644
--- a/app/src/main/java/com/lizongying/mytv/SettingFragment.kt
+++ b/app/src/main/java/com/lizongying/mytv/SettingFragment.kt
@@ -39,21 +39,21 @@ class SettingFragment(
val switchChannelReversal = _binding?.switchChannelReversal
switchChannelReversal?.isChecked = channelReversal
switchChannelReversal?.setOnCheckedChangeListener { _, isChecked ->
- (activity as MainActivity).saveChannelReversal(isChecked)
+ SP.channelReversal = isChecked
(activity as MainActivity).settingActive()
}
val switchChannelNum = _binding?.switchChannelNum
switchChannelNum?.isChecked = channelNum
switchChannelNum?.setOnCheckedChangeListener { _, isChecked ->
- (activity as MainActivity).saveChannelNum(isChecked)
+ SP.channelNum = isChecked
(activity as MainActivity).settingActive()
}
val switchBootStartup = _binding?.switchBootStartup
switchBootStartup?.isChecked = bootStartup
switchBootStartup?.setOnCheckedChangeListener { _, isChecked ->
- (activity as MainActivity).saveBootStartup(isChecked)
+ SP.bootStartup = isChecked
(activity as MainActivity).settingActive()
}
diff --git a/app/src/main/java/com/lizongying/mytv/TVList.kt b/app/src/main/java/com/lizongying/mytv/TVList.kt
index bdf8435..2a2eaea 100644
--- a/app/src/main/java/com/lizongying/mytv/TVList.kt
+++ b/app/src/main/java/com/lizongying/mytv/TVList.kt
@@ -2,14 +2,14 @@ package com.lizongying.mytv
object TVList {
var list = mapOf(
- "央视频道" to listOf(
+ "央视" to listOf(
TV(
0,
"CCTV1 综合",
"CCTV1",
listOf("http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226231/index.m3u8"),
0,
- "央视频道",
+ "央视",
"https://resources.yangshipin.cn/assets/oms/image/202306/d57905b93540bd15f0c48230dbbbff7ee0d645ff539e38866e2d15c8b9f7dfcd.png?imageMogr2/format/webp",
"600001859",
"2022576801",
@@ -23,7 +23,7 @@ object TVList {
"CCTV2",
listOf("http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226195/index.m3u8"),
0,
- "央视频道",
+ "央视",
"https://resources.yangshipin.cn/assets/oms/image/202306/20115388de0207131af17eac86c33049b95d69eaff064e55653a1b941810a006.png?imageMogr2/format/webp",
"600001800",
"2022576701",
@@ -37,7 +37,7 @@ object TVList {
"CCTV3",
listOf("http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226397/index.m3u8"),
0,
- "央视频道",
+ "央视",
"https://resources.yangshipin.cn/assets/oms/image/202306/7b7a65c712450da3deb6ca66fbacf4f9aee00d3f20bd80eafb5ada01ec63eb3a.png?imageMogr2/format/webp",
"600001801",
"2022576501",
@@ -54,7 +54,7 @@ object TVList {
"http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226191/index.m3u8"
),
0,
- "央视频道",
+ "央视",
"https://resources.yangshipin.cn/assets/oms/image/202306/f357e58fdbcc076a3d65e1f958c942b2e14f14342c60736ceed98b092d35356a.png?imageMogr2/format/webp",
"600001814",
"2022576601",
@@ -68,7 +68,7 @@ object TVList {
"CCTV5",
listOf("http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226395/index.m3u8"),
0,
- "央视频道",
+ "央视",
"https://resources.yangshipin.cn/assets/oms/image/202306/0a6a7138952675983a3d854df7688557b286d59aa06166edae51506f9204d655.png?imageMogr2/format/webp",
"600001818",
"2022576401",
@@ -82,7 +82,7 @@ object TVList {
"CCTV6",
listOf("http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226393/index.m3u8"),
0,
- "央视频道",
+ "央视",
"https://resources.yangshipin.cn/assets/oms/image/202306/741515efda91f03f455df8a7da4ee11fa9329139c276435cf0a9e2af398d5bf2.png?imageMogr2/format/webp",
"600108442",
"2013693901",
@@ -96,7 +96,7 @@ object TVList {
"CCTV7",
listOf("http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226192/index.m3u8"),
0,
- "央视频道",
+ "央视",
"https://resources.yangshipin.cn/assets/oms/image/202306/b29af94e295ebdf646cefb68122c429b9cd921f498ca20d2d8070252536f9ff9.png?imageMogr2/format/webp",
"600004092",
"2022576201",
@@ -110,7 +110,7 @@ object TVList {
"CCTV8",
listOf("http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226391/index.m3u8"),
0,
- "央视频道",
+ "央视",
"https://resources.yangshipin.cn/assets/oms/image/202306/ad51de94426a0ba039e6dd6a8534ea98ecc813a6176bde87b4f18cc34d6d7590.png?imageMogr2/format/webp",
"600001803",
"2022576101",
@@ -124,7 +124,7 @@ object TVList {
"CCTV9",
listOf("http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226197/index.m3u8"),
0,
- "央视频道",
+ "央视",
"https://resources.yangshipin.cn/assets/oms/image/202306/2ed1b4deeca179d5db806bb941790f82eb92a1b7299c1c38fe027f95a5caee5e.png?imageMogr2/format/webp",
"600004078",
"2022576001",
@@ -138,7 +138,7 @@ object TVList {
"CCTV10",
listOf("http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226189/index.m3u8"),
0,
- "央视频道",
+ "央视",
"https://resources.yangshipin.cn/assets/oms/image/202306/aa6157ec65188cd41826e5a2f088c3d6d153205f5f6428258d12c59999e221aa.png?imageMogr2/format/webp",
"600001805",
"2022573001",
@@ -152,7 +152,7 @@ object TVList {
"CCTV11",
listOf("http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226240/index.m3u8"),
0,
- "央视频道",
+ "央视",
"https://resources.yangshipin.cn/assets/oms/image/202306/ed12ed7c7a1034dae4350011fe039284c5d5a836506b28c9e32e3c75299625c0.png?imageMogr2/format/webp",
"600001806",
"2022575901",
@@ -166,7 +166,7 @@ object TVList {
"CCTV12",
listOf("http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226190/index.m3u8"),
0,
- "央视频道",
+ "央视",
"https://resources.yangshipin.cn/assets/oms/image/202306/484083cffaa40df7e659565e8cb4d1cc740158a185512114167aa21fa0c59240.png?imageMogr2/format/webp",
"600001807",
"2022575801",
@@ -183,7 +183,7 @@ object TVList {
"http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226233/index.m3u8"
),
0,
- "央视频道",
+ "央视",
"https://resources.yangshipin.cn/assets/oms/image/202306/266da7b43c03e2312186b4a999e0f060e8f15b10d2cc2c9aa32171819254cf1a.png?imageMogr2/format/webp",
"600001811",
"2022575701",
@@ -197,7 +197,7 @@ object TVList {
"CCTV14",
listOf("http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226193/index.m3u8"),
0,
- "央视频道",
+ "央视",
"https://resources.yangshipin.cn/assets/oms/image/202306/af6b603896938dc346fbb16abfc63c12cba54b0ec9d18770a15d347d115f12d5.png?imageMogr2/format/webp",
"600001809",
"2022575601",
@@ -211,7 +211,7 @@ object TVList {
"CCTV15",
listOf("http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221225785/index.m3u8"),
0,
- "央视频道",
+ "央视",
"https://resources.yangshipin.cn/assets/oms/image/202306/2ceee92188ef684efe0d8b90839c4f3ad450d179dc64d59beff417059453af47.png?imageMogr2/format/webp",
"600001815",
"2022575501",
@@ -228,7 +228,7 @@ object TVList {
"http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226921/index.m3u8"
),
0,
- "央视频道",
+ "央视",
"https://resources.yangshipin.cn/assets/oms/image/202306/53793fa7bacd3a93ff6dc5d2758418985e1f952a316c335d663b572d8bdcd74d.png?imageMogr2/format/webp",
"600098637",
"2022575401",
@@ -242,7 +242,7 @@ object TVList {
"CCTV17",
listOf("http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226198/index.m3u8"),
0,
- "央视频道",
+ "央视",
"https://resources.yangshipin.cn/assets/oms/image/202306/ddef563072f8bad2bea5b9e52674cb7b4ed50efb20c26e61994dfbdf05c1e3c0.png?imageMogr2/format/webp",
"600001810",
"2022575301",
@@ -256,7 +256,7 @@ object TVList {
"CCTV5+",
listOf("http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226221/index.m3u8"),
0,
- "央视频道",
+ "央视",
"https://resources.yangshipin.cn/assets/oms/image/202306/649ad76a90bfef55b05db9fe52e006487280f619089099d5dc971e387fc6eff0.png?imageMogr2/format/webp",
"600001817",
"2022576301",
@@ -270,7 +270,7 @@ object TVList {
"CCTV4K",
listOf(),
0,
- "央视频道",
+ "央视",
"https://resources.yangshipin.cn/assets/oms/image/202306/3e9d06fd7244d950df5838750f1c6ac3456e172b51caca2c16d2282125b111e8.png?imageMogr2/format/webp",
"600002264",
"2022575201",
@@ -284,7 +284,7 @@ object TVList {
"CCTV8K",
listOf(),
0,
- "央视频道",
+ "央视",
"",
"600156816",
"2020603421",
@@ -298,7 +298,7 @@ object TVList {
"CCTV风云剧场频道",
listOf("http://dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226950/index.m3u8"),
0,
- "央视频道",
+ "央视",
"https://resources.yangshipin.cn/assets/oms/image/202306/4d549e53e6d0f632d5a633d1945280797b153e588f919221a07faa869812cc89.png?imageMogr2/format/webp",
"600099658",
"2012513603",
@@ -312,7 +312,7 @@ object TVList {
"CCTV第一剧场频道",
listOf("http://dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226959/index.m3u8"),
0,
- "央视频道",
+ "央视",
"https://resources.yangshipin.cn/assets/oms/image/202306/a556bd7d93ce65e18f243a8892b5604f4faa994a4897315914216a710a706208.png?imageMogr2/format/webp",
"600099655",
"2012514403",
@@ -326,7 +326,7 @@ object TVList {
"CCTV怀旧剧场频道",
listOf("http://dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226972/index.m3u8"),
0,
- "央视频道",
+ "央视",
"https://resources.yangshipin.cn/assets/oms/image/202306/5661bd04fecdb6e899f801147a22ab5d3a475bf2b62e30aec2c0023190ebc9b1.png?imageMogr2/format/webp",
"600099620",
"2012511203",
@@ -340,7 +340,7 @@ object TVList {
"CCTV世界地理频道",
listOf(),
0,
- "央视频道",
+ "央视",
"https://resources.yangshipin.cn/assets/oms/image/202306/bb3c6c9e145d698137f5bb64a582021a01b51344b929003630eb769ea65832a9.png?imageMogr2/format/webp",
"600099637",
"2012513303",
@@ -354,7 +354,7 @@ object TVList {
"CCTV风云音乐频道",
listOf("http://dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226953/index.m3u8"),
0,
- "央视频道",
+ "央视",
"https://resources.yangshipin.cn/assets/oms/image/202306/bbf1d024c5228b8dd128b0e3cb1717d173fab4ee84c3a4c8a57b1a215362ca3b.png?imageMogr2/format/webp",
"600099660",
"2012514103",
@@ -368,7 +368,7 @@ object TVList {
"CCTV兵器科技频道",
listOf("http://dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226975/index.m3u8"),
0,
- "央视频道",
+ "央视",
"https://resources.yangshipin.cn/assets/oms/image/202306/4c6b6a6d3839889f34d33db3c2f80233b26b74d3489b393487635f8704e70796.png?imageMogr2/format/webp",
"600099649",
"2012513403",
@@ -382,7 +382,7 @@ object TVList {
"CCTV风云足球频道",
listOf("http://dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226984/index.m3u8"),
0,
- "央视频道",
+ "央视",
"https://resources.yangshipin.cn/assets/oms/image/202306/cd1e2bb52b06a991de168733e5ff0f1d85adc8042d40c8f393f723543e5dd08a.png?imageMogr2/format/webp",
"600099636",
"2012514203",
@@ -396,7 +396,7 @@ object TVList {
"CCTV高尔夫·网球频道",
listOf("http://dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226978/index.m3u8"),
0,
- "央视频道",
+ "央视",
"https://resources.yangshipin.cn/assets/oms/image/202306/cdd1b31ede7a5ad049ed53d9a072422f829e72dd062ed2c19e077fdd01699071.png?imageMogr2/format/webp",
"600099659",
"2012512503",
@@ -410,7 +410,7 @@ object TVList {
"CCTV女性时尚频道",
listOf("http://dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226969/index.m3u8"),
0,
- "央视频道",
+ "央视",
"https://resources.yangshipin.cn/assets/oms/image/202306/fa28955ce8b2539d728bf4c6a13a46ff57ad76eae46627f7bcfb1ed8a613d3fc.png?imageMogr2/format/webp",
"600099650",
"2012513903",
@@ -424,7 +424,7 @@ object TVList {
"CCTV央视文化精品频道",
listOf("http://dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226981/index.m3u8"),
0,
- "央视频道",
+ "央视",
"https://resources.yangshipin.cn/assets/oms/image/202306/14ac5ce40482cacd3d4b37435222bfe86af2b452a2f04ecbfc1d13d76edd7c57.png?imageMogr2/format/webp",
"600099653",
"2012513803",
@@ -438,7 +438,7 @@ object TVList {
"CCTV央视台球频道",
listOf("http://dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226956/index.m3u8"),
0,
- "央视频道",
+ "央视",
"https://resources.yangshipin.cn/assets/oms/image/202306/10e14a92478011aa6c3c8562e62127f3b1908e29fcd78e4b2b24b9e6d3ec2fbc.png?imageMogr2/format/webp",
"600099652",
"2012513703",
@@ -452,7 +452,7 @@ object TVList {
"CCTV电视指南频道",
listOf("http://dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226987/index.m3u8"),
0,
- "央视频道",
+ "央视",
"https://resources.yangshipin.cn/assets/oms/image/202306/244d72c0eb1615ed7d51c2f5db5a67f306aa3f58c05bc2d34de3aa7e956dc8c9.png?imageMogr2/format/webp",
"600099656",
"2012514003",
@@ -466,7 +466,7 @@ object TVList {
"CCTV卫生健康频道",
listOf(),
0,
- "央视频道",
+ "央视",
"https://resources.yangshipin.cn/assets/oms/image/202306/54a6863656fdfd8f803be193ddf22441c5000a108833889816fd2d8911715ce8.png?imageMogr2/format/webp",
"600099651",
"2012513503",
@@ -475,14 +475,14 @@ object TVList {
mustToken = true
),
),
- "地方频道" to listOf(
+ "地方" to listOf(
TV(
33,
"东方卫视",
"东方卫视",
listOf("http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226217/index.m3u8"),
0,
- "地方频道",
+ "地方",
"https://resources.yangshipin.cn/assets/oms/image/202306/9bd372ca292a82ce3aa08772b07efc4af1f85c21d1f268ea33440c49e9a0a488.png?imageMogr2/format/webp",
"600002483",
"2000292403",
@@ -499,7 +499,7 @@ object TVList {
"http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226211/index.m3u8"
),
0,
- "地方频道",
+ "地方",
"https://resources.yangshipin.cn/assets/oms/image/202306/4120e89d3079d08aa17d382f69a2308ec70839b278367763c34a34666c75cb88.png?imageMogr2/format/webp",
"600002475",
"2000296203",
@@ -516,7 +516,7 @@ object TVList {
"http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226194/index.m3u8"
),
0,
- "地方频道",
+ "地方",
"https://resources.yangshipin.cn/assets/oms/image/202306/7a6be5a2bb1dc53a945c016ff1f525dc4a84c51db371c15c89aa55404b0ba784.png?imageMogr2/format/webp",
"600002508",
"2000294503",
@@ -533,7 +533,7 @@ object TVList {
"http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226201/index.m3u8"
),
0,
- "地方频道",
+ "地方",
"https://resources.yangshipin.cn/assets/oms/image/202306/ac4ed6058a87c101ae7147ebc38905d0cae047fb73fd277ee5049b84f52bda36.png?imageMogr2/format/webp",
"600002505",
"2000281303",
@@ -550,7 +550,7 @@ object TVList {
"http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226200/index.m3u8"
),
0,
- "地方频道",
+ "地方",
"https://resources.yangshipin.cn/assets/oms/image/202306/380ad685c0c1d5b2c902246b8d2df6d3f9b45e2837abcfe493075bbded597a31.png?imageMogr2/format/webp",
"600002521",
"2000295603",
@@ -567,7 +567,7 @@ object TVList {
"http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221225764/index.m3u8"
),
0,
- "地方频道",
+ "地方",
"https://resources.yangshipin.cn/assets/oms/image/202306/3c760d0d00463855890e8a1864ea4a6b6dd66b90c29b4ac714a4b17c16519871.png?imageMogr2/format/webp",
"600002503",
"2000294103",
@@ -581,7 +581,7 @@ object TVList {
"山东卫视",
listOf("http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226209/index.m3u8"),
0,
- "地方频道",
+ "地方",
"https://resources.yangshipin.cn/assets/oms/image/202306/22d403f07a7cf5410b3ad3ddb65a11aa229a32475fac213f5344c9f0ec330ca1.png?imageMogr2/format/webp",
"600002513",
"2000294803",
@@ -595,7 +595,7 @@ object TVList {
"广东卫视",
listOf("http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226216/index.m3u8"),
0,
- "地方频道",
+ "地方",
"https://resources.yangshipin.cn/assets/oms/image/202306/28886880a4dc0f06fb7e0a528a1def0591d61a65870e29176ede0cc92033bbfd.png?imageMogr2/format/webp",
"600002485",
"2000292703",
@@ -612,7 +612,7 @@ object TVList {
"http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221225770/index.m3u8"
),
0,
- "地方频道",
+ "地方",
"https://resources.yangshipin.cn/assets/oms/image/202306/54b7e97cb816bb223fe05f3fc44da2c7820eb66e8550c19d23100f2c414ecc38.png?imageMogr2/format/webp",
"600002509",
"2000294203",
@@ -629,7 +629,7 @@ object TVList {
"http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226202/index.m3u8"
),
0,
- "地方频道",
+ "地方",
"https://resources.yangshipin.cn/assets/oms/image/202306/657651f411de2673d1770d9a78b44c1265704f7468cc41d4be7f51d630768494.png?imageMogr2/format/webp",
"600002531",
"2000297803",
@@ -646,7 +646,7 @@ object TVList {
"http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221225767/index.m3u8"
),
0,
- "地方频道",
+ "地方",
"https://resources.yangshipin.cn/assets/oms/image/202306/74925962148a6d31c85808b6cd4e444c2a54bab393d2c5fc85e960b50e22fa86.png?imageMogr2/format/webp",
"600002525",
"2000296103",
@@ -663,7 +663,7 @@ object TVList {
"http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221225750/index.m3u8"
),
0,
- "地方频道",
+ "地方",
"https://resources.yangshipin.cn/assets/oms/image/202306/d545becdc81c60197b08c7f47380705e4665ed3fe55efc8b855e486f6e655378.png?imageMogr2/format/webp",
"600002493",
"2000293403",
@@ -680,7 +680,7 @@ object TVList {
"http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221225793/index.m3u8"
),
0,
- "地方频道",
+ "地方",
"https://resources.yangshipin.cn/assets/oms/image/202306/4eb45f4781d33d872af027dc01c941559aab55667dd99cc5c22bef7037807b13.png?imageMogr2/format/webp",
"600002490",
"2000293303",
@@ -697,7 +697,7 @@ object TVList {
"http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226222/index.m3u8"
),
0,
- "地方频道",
+ "地方",
"https://resources.yangshipin.cn/assets/oms/image/202306/f4f23633c578beea49a3841d88d3490100f029ee349059fa532869db889872c5.png?imageMogr2/format/webp",
"600002309",
"2000272103",
@@ -714,7 +714,7 @@ object TVList {
"http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226215/index.m3u8"
),
0,
- "地方频道",
+ "地方",
"https://resources.yangshipin.cn/assets/oms/image/202306/d8273ae9be698ce2db21f5b886ecac95a73429593f93713c60ed8c12c38bf0d3.png?imageMogr2/format/webp",
"600002498",
"2000293903",
@@ -731,7 +731,7 @@ object TVList {
"http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226199/index.m3u8"
),
0,
- "地方频道",
+ "地方",
"https://resources.yangshipin.cn/assets/oms/image/202306/a66c836bd98ba3e41a2e9a570d4b9c50dedc6839e9de333e2e78212ad505f37e.png?imageMogr2/format/webp",
"600002520",
"2000295503",
@@ -748,7 +748,7 @@ object TVList {
"http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226203/index.m3u8"
),
0,
- "地方频道",
+ "地方",
"https://resources.yangshipin.cn/assets/oms/image/202306/f35fa04b51b1ee4984b03578b65403570868ebca03c6c01e11b097f999a58d9b.png?imageMogr2/format/webp",
"600002532",
"2000298003",
@@ -765,7 +765,7 @@ object TVList {
"http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226205/index.m3u8"
),
0,
- "地方频道",
+ "地方",
"https://resources.yangshipin.cn/assets/oms/image/202306/d59fec04c902e3581c617136d02d4b9b8c4cbe64272781ddd3525e80c823edb7.png?imageMogr2/format/webp",
"600002481",
"2000292203",
@@ -782,7 +782,7 @@ object TVList {
"http://39.134.24.166/dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221225768/index.m3u8"
),
0,
- "地方频道",
+ "地方",
"https://resources.yangshipin.cn/assets/oms/image/202306/3276a414ae0eaa0f116f2045cd913367967d0c7c1e978e8621ac3879436c6ed7.png?imageMogr2/format/webp",
"600002516",
"2000295003",
@@ -799,7 +799,7 @@ object TVList {
"http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221225766/index.m3u8"
),
0,
- "地方频道",
+ "地方",
"https://resources.yangshipin.cn/assets/oms/image/202306/3208fe6564a293c21b711333fb3edb05bb5b406cff840573c9a8d839680a1579.png?imageMogr2/format/webp",
"600002484",
"2000292503",
@@ -816,7 +816,7 @@ object TVList {
"http://dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221225769/index.m3u8"
),
0,
- "地方频道",
+ "地方",
"https://resources.yangshipin.cn/assets/oms/image/202306/6e060391fde0469801fc3d84dbf204b4f8d650d251f17d7595a6964c0bb99e81.png?imageMogr2/format/webp",
"600002506",
"2000291503",
@@ -830,7 +830,7 @@ object TVList {
"天津卫视",
listOf(),
0,
- "地方频道",
+ "地方",
"",
"600152137",
"2019927003",
@@ -844,7 +844,7 @@ object TVList {
"新疆卫视",
listOf(),
0,
- "地方频道",
+ "地方",
"",
"600152138",
"2019927403",
@@ -858,7 +858,7 @@ object TVList {
"兵团卫视",
listOf(),
0,
- "地方频道",
+ "地方",
"",
"600170344",
"2022606701",
@@ -866,15 +866,73 @@ object TVList {
true,
mustToken = false
),
- ),
- "国际频道" to listOf(
TV(
57,
+ "CETV1",
+ "CETV1",
+ listOf(),
+ 0,
+ "地方",
+ "",
+ "600171827",
+ "2022823801",
+ "",
+ true,
+ mustToken = false
+ ),
+ ),
+ "港澳台" to listOf(
+ TV(
+ 58,
+ "凤凰卫视资讯台",
+ "",
+ listOf(),
+ 0,
+ "港澳台",
+ "http://c1.fengshows-cdn.com/a/2021_22/79dcc3a9da358a3.png",
+ "7c96b084-60e1-40a9-89c5-682b994fb680",
+ "",
+ "",
+ false,
+ mustToken = false
+ ),
+ TV(
+ 59,
+ "凤凰卫视中文台",
+ "",
+ listOf(),
+ 0,
+ "港澳台",
+ "http://c1.fengshows-cdn.com/a/2021_22/ede3d9e09be28e5.png",
+ "f7f48462-9b13-485b-8101-7b54716411ec",
+ "",
+ "",
+ false,
+ mustToken = false
+ ),
+ TV(
+ 60,
+ "凤凰卫视香港台",
+ "",
+ listOf(),
+ 0,
+ "港澳台",
+ "http://c1.fengshows-cdn.com/a/2021_23/325d941090bee17.png",
+ "15e02d92-1698-416c-af2f-3e9a872b4d78",
+ "",
+ "",
+ false,
+ mustToken = false
+ ),
+ ),
+ "国际" to listOf(
+ TV(
+ 61,
"CGTN",
"CGTN",
listOf("http://live.cgtn.com/1000/prog_index.m3u8"),
0,
- "国际频道",
+ "国际",
"https://resources.yangshipin.cn/assets/oms/image/202306/a72dff758ca1c17cd0ecc8cedc11b893d208f409d5e6302faa0e9d298848abc3.png?imageMogr2/format/webp",
"600014550",
"2022575001",
@@ -883,12 +941,12 @@ object TVList {
mustToken = false
),
TV(
- 58,
+ 62,
"CGTN 法语频道",
"CGTN法语频道",
listOf("https://livefr.cgtn.com/1000f/prog_index.m3u8"),
0,
- "国际频道",
+ "国际",
"https://resources.yangshipin.cn/assets/oms/image/202306/a8d0046a47433d952bf6ed17062deb8bd2184ba9aec0f7781df6bf9487a3ffcf.png?imageMogr2/format/webp",
"600084704",
"2022574901",
@@ -897,12 +955,12 @@ object TVList {
mustToken = false
),
TV(
- 59,
+ 63,
"CGTN 俄语频道",
"CGTN俄语频道",
listOf("http://liveru.cgtn.com/1000r/prog_index.m3u8"),
0,
- "国际频道",
+ "国际",
"https://resources.yangshipin.cn/assets/oms/image/202306/bf0a820893cbaf20dd0333e27042e1ef9c8806e5b602b6a8c95af399db0bc77a.png?imageMogr2/format/webp",
"600084758",
"2022574801",
@@ -911,12 +969,12 @@ object TVList {
mustToken = false
),
TV(
- 60,
+ 64,
"CGTN 阿拉伯语频道",
"CGTN阿拉伯语频道",
listOf("http://livear.cgtn.com/1000a/prog_index.m3u8"),
0,
- "国际频道",
+ "国际",
"https://resources.yangshipin.cn/assets/oms/image/202306/2e44e2aa3e7a1cedf07fd0ae59fe69e86a60a2632660a006e3e9e7397b2d107e.png?imageMogr2/format/webp",
"600084782",
"2022574601",
@@ -925,7 +983,7 @@ object TVList {
mustToken = false
),
TV(
- 61,
+ 65,
"CGTN 西班牙语频道",
"CGTN西班牙语频道",
listOf(
@@ -933,7 +991,7 @@ object TVList {
"http://livees.cgtn.com/1000e/prog_index.m3u8"
),
0,
- "国际频道",
+ "国际",
"https://resources.yangshipin.cn/assets/oms/image/202309/7c337e3dbe64402ec7e4678a619a4a6d95144e42f35161181ff78e143b7cf67a.png?imageMogr2/format/webp",
"600084744",
"2022571701",
@@ -942,12 +1000,12 @@ object TVList {
mustToken = false
),
TV(
- 62,
+ 66,
"CGTN 纪录频道",
"CGTN外语纪录频道",
listOf("https://livedoc.cgtn.com/500d/prog_index.m3u8"),
0,
- "国际频道",
+ "国际",
"https://resources.yangshipin.cn/assets/oms/image/202309/74d3ac436a7e374879578de1d87a941fbf566d39d5632b027c5097891ed32bd5.png?imageMogr2/format/webp",
"600084781",
"2022574701",
diff --git a/app/src/main/java/com/lizongying/mytv/api/ApiClient.kt b/app/src/main/java/com/lizongying/mytv/api/ApiClient.kt
index 6ff511a..fb22208 100644
--- a/app/src/main/java/com/lizongying/mytv/api/ApiClient.kt
+++ b/app/src/main/java/com/lizongying/mytv/api/ApiClient.kt
@@ -16,6 +16,7 @@ class ApiClient {
private val devUrl = "http://10.0.2.2:8081/"
private val protoUrl = "https://capi.yangshipin.cn/"
private val traceUrl = "https://btrace.yangshipin.cn/"
+ private val fUrl = "https://m.fengshows.com/"
private var okHttpClient = getUnsafeOkHttpClient()
@@ -59,6 +60,14 @@ class ApiClient {
.build().create(YSPBtraceService::class.java)
}
+ val fAuthService: FAuthService by lazy {
+ Retrofit.Builder()
+ .baseUrl(fUrl)
+ .client(okHttpClient)
+ .addConverterFactory(GsonConverterFactory.create())
+ .build().create(FAuthService::class.java)
+ }
+
private fun getUnsafeOkHttpClient(): OkHttpClient {
try {
val trustAllCerts: Array = arrayOf(
diff --git a/app/src/main/java/com/lizongying/mytv/api/FAuth.kt b/app/src/main/java/com/lizongying/mytv/api/FAuth.kt
new file mode 100644
index 0000000..0dca043
--- /dev/null
+++ b/app/src/main/java/com/lizongying/mytv/api/FAuth.kt
@@ -0,0 +1,10 @@
+package com.lizongying.mytv.api
+
+
+data class FAuth(
+ val data: Data,
+) {
+ data class Data(
+ val live_url: String,
+ )
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/lizongying/mytv/api/FAuthService.kt b/app/src/main/java/com/lizongying/mytv/api/FAuthService.kt
new file mode 100644
index 0000000..1e597dd
--- /dev/null
+++ b/app/src/main/java/com/lizongying/mytv/api/FAuthService.kt
@@ -0,0 +1,13 @@
+package com.lizongying.mytv.api
+
+import retrofit2.Call
+import retrofit2.http.GET
+import retrofit2.http.Query
+
+interface FAuthService {
+ @GET("api/v3/hub/live/auth-url")
+ fun getAuth(
+ @Query("live_id") live_id: String = "",
+ @Query("live_qa") live_qa: String = "",
+ ): Call
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/lizongying/mytv/api/YSP.kt b/app/src/main/java/com/lizongying/mytv/api/YSP.kt
index 23349cc..de104f5 100644
--- a/app/src/main/java/com/lizongying/mytv/api/YSP.kt
+++ b/app/src/main/java/com/lizongying/mytv/api/YSP.kt
@@ -1,9 +1,9 @@
package com.lizongying.mytv.api
import android.content.Context
-import android.content.SharedPreferences
import com.lizongying.mytv.Encryptor
import com.lizongying.mytv.MainActivity
+import com.lizongying.mytv.SP
import com.lizongying.mytv.Utils.getDateTimestamp
import com.lizongying.mytv.models.TVViewModel
import kotlin.math.floor
@@ -54,14 +54,11 @@ class YSP(var context: Context) {
var token = ""
private var encryptor: Encryptor? = null
- private lateinit var sharedPref: SharedPreferences
init {
if (context is MainActivity) {
encryptor = Encryptor()
encryptor!!.init(context)
-
- sharedPref = (context as MainActivity).sharedPref
}
guid = getGuid()
@@ -110,23 +107,17 @@ class YSP(var context: Context) {
}
fun getGuid(): String {
- var guid = sharedPref.getString("guid", "")
- if (guid == null || guid.length < 18) {
+ var guid = SP.guid
+ if (guid.length < 18) {
guid = generateGuid()
- with(sharedPref.edit()) {
- putString("guid", guid)
- apply()
- }
+ SP.guid = guid
}
return guid
}
private fun newGuid(): String {
guid = generateGuid()
- with(sharedPref.edit()) {
- putString("guid", guid)
- apply()
- }
+ SP.guid = guid
return guid
}
diff --git a/app/src/main/res/drawable/cetv1.png b/app/src/main/res/drawable/cetv1.png
new file mode 100644
index 0000000..9309b17
Binary files /dev/null and b/app/src/main/res/drawable/cetv1.png differ
diff --git a/app/src/main/res/raw/channels.json b/app/src/main/res/raw/channels.json
index 244d1da..a19fc49 100644
--- a/app/src/main/res/raw/channels.json
+++ b/app/src/main/res/raw/channels.json
@@ -2,7 +2,7 @@
{
"id": 0,
"videoIndex": 0,
- "channel": "央视频道",
+ "channel": "央视",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/d57905b93540bd15f0c48230dbbbff7ee0d645ff539e38866e2d15c8b9f7dfcd.png?imageMogr2/format/webp",
"pid": "600001859",
"sid": "2000210103",
@@ -17,7 +17,7 @@
{
"id": 1,
"videoIndex": 0,
- "channel": "央视频道",
+ "channel": "央视",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/20115388de0207131af17eac86c33049b95d69eaff064e55653a1b941810a006.png?imageMogr2/format/webp",
"pid": "600001800",
"sid": "2000203603",
@@ -32,7 +32,7 @@
{
"id": 2,
"videoIndex": 0,
- "channel": "央视频道",
+ "channel": "央视",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/7b7a65c712450da3deb6ca66fbacf4f9aee00d3f20bd80eafb5ada01ec63eb3a.png?imageMogr2/format/webp",
"pid": "600001801",
"sid": "2000203803",
@@ -47,7 +47,7 @@
{
"id": 3,
"videoIndex": 0,
- "channel": "央视频道",
+ "channel": "央视",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/f357e58fdbcc076a3d65e1f958c942b2e14f14342c60736ceed98b092d35356a.png?imageMogr2/format/webp",
"pid": "600001814",
"sid": "2000204803",
@@ -63,7 +63,7 @@
{
"id": 4,
"videoIndex": 0,
- "channel": "央视频道",
+ "channel": "央视",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/0a6a7138952675983a3d854df7688557b286d59aa06166edae51506f9204d655.png?imageMogr2/format/webp",
"pid": "600001818",
"sid": "2000205103",
@@ -78,7 +78,7 @@
{
"id": 5,
"videoIndex": 0,
- "channel": "央视频道",
+ "channel": "央视",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/741515efda91f03f455df8a7da4ee11fa9329139c276435cf0a9e2af398d5bf2.png?imageMogr2/format/webp",
"pid": "600001802",
"sid": "2013693901",
@@ -93,7 +93,7 @@
{
"id": 6,
"videoIndex": 0,
- "channel": "央视频道",
+ "channel": "央视",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/b29af94e295ebdf646cefb68122c429b9cd921f498ca20d2d8070252536f9ff9.png?imageMogr2/format/webp",
"pid": "600004092",
"sid": "2000510003",
@@ -108,7 +108,7 @@
{
"id": 7,
"videoIndex": 0,
- "channel": "央视频道",
+ "channel": "央视",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/ad51de94426a0ba039e6dd6a8534ea98ecc813a6176bde87b4f18cc34d6d7590.png?imageMogr2/format/webp",
"pid": "600001803",
"sid": "2000203903",
@@ -123,7 +123,7 @@
{
"id": 8,
"videoIndex": 0,
- "channel": "央视频道",
+ "channel": "央视",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/2ed1b4deeca179d5db806bb941790f82eb92a1b7299c1c38fe027f95a5caee5e.png?imageMogr2/format/webp",
"pid": "600004078",
"sid": "2000499403",
@@ -138,7 +138,7 @@
{
"id": 9,
"videoIndex": 0,
- "channel": "央视频道",
+ "channel": "央视",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/aa6157ec65188cd41826e5a2f088c3d6d153205f5f6428258d12c59999e221aa.png?imageMogr2/format/webp",
"pid": "600001805",
"sid": "2000203503",
@@ -153,7 +153,7 @@
{
"id": 10,
"videoIndex": 0,
- "channel": "央视频道",
+ "channel": "央视",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/ed12ed7c7a1034dae4350011fe039284c5d5a836506b28c9e32e3c75299625c0.png?imageMogr2/format/webp",
"pid": "600001806",
"sid": "2000204103",
@@ -168,7 +168,7 @@
{
"id": 11,
"videoIndex": 0,
- "channel": "央视频道",
+ "channel": "央视",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/484083cffaa40df7e659565e8cb4d1cc740158a185512114167aa21fa0c59240.png?imageMogr2/format/webp",
"pid": "600001807",
"sid": "2000202603",
@@ -183,7 +183,7 @@
{
"id": 12,
"videoIndex": 0,
- "channel": "央视频道",
+ "channel": "央视",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/266da7b43c03e2312186b4a999e0f060e8f15b10d2cc2c9aa32171819254cf1a.png?imageMogr2/format/webp",
"pid": "600001811",
"sid": "2000204603",
@@ -199,7 +199,7 @@
{
"id": 13,
"videoIndex": 0,
- "channel": "央视频道",
+ "channel": "央视",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/af6b603896938dc346fbb16abfc63c12cba54b0ec9d18770a15d347d115f12d5.png?imageMogr2/format/webp",
"pid": "600001809",
"sid": "2000204403",
@@ -214,7 +214,7 @@
{
"id": 14,
"videoIndex": 0,
- "channel": "央视频道",
+ "channel": "央视",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/2ceee92188ef684efe0d8b90839c4f3ad450d179dc64d59beff417059453af47.png?imageMogr2/format/webp",
"pid": "600001815",
"sid": "2000205003",
@@ -229,7 +229,7 @@
{
"id": 15,
"videoIndex": 0,
- "channel": "央视频道",
+ "channel": "央视",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/53793fa7bacd3a93ff6dc5d2758418985e1f952a316c335d663b572d8bdcd74d.png?imageMogr2/format/webp",
"pid": "600098637",
"sid": "2012375003",
@@ -245,7 +245,7 @@
{
"id": 16,
"videoIndex": 0,
- "channel": "央视频道",
+ "channel": "央视",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/ddef563072f8bad2bea5b9e52674cb7b4ed50efb20c26e61994dfbdf05c1e3c0.png?imageMogr2/format/webp",
"pid": "600001810",
"sid": "2000204203",
@@ -260,7 +260,7 @@
{
"id": 17,
"videoIndex": 0,
- "channel": "央视频道",
+ "channel": "央视",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/649ad76a90bfef55b05db9fe52e006487280f619089099d5dc971e387fc6eff0.png?imageMogr2/format/webp",
"pid": "600001817",
"sid": "2000204503",
@@ -275,7 +275,7 @@
{
"id": 18,
"videoIndex": 0,
- "channel": "央视频道",
+ "channel": "央视",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/3e9d06fd7244d950df5838750f1c6ac3456e172b51caca2c16d2282125b111e8.png?imageMogr2/format/webp",
"pid": "600002264",
"sid": "2000266303",
@@ -290,7 +290,7 @@
{
"id": 19,
"videoIndex": 0,
- "channel": "央视频道",
+ "channel": "央视",
"logo": "",
"pid": "600156816",
"sid": "2020603421",
@@ -305,7 +305,7 @@
{
"id": 20,
"videoIndex": 0,
- "channel": "央视频道",
+ "channel": "央视",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/4d549e53e6d0f632d5a633d1945280797b153e588f919221a07faa869812cc89.png?imageMogr2/format/webp",
"pid": "600099658",
"sid": "2012513603",
@@ -320,7 +320,7 @@
{
"id": 21,
"videoIndex": 0,
- "channel": "央视频道",
+ "channel": "央视",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/a556bd7d93ce65e18f243a8892b5604f4faa994a4897315914216a710a706208.png?imageMogr2/format/webp",
"pid": "600099655",
"sid": "2012514403",
@@ -335,7 +335,7 @@
{
"id": 22,
"videoIndex": 0,
- "channel": "央视频道",
+ "channel": "央视",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/5661bd04fecdb6e899f801147a22ab5d3a475bf2b62e30aec2c0023190ebc9b1.png?imageMogr2/format/webp",
"pid": "600099620",
"sid": "2012511203",
@@ -350,7 +350,7 @@
{
"id": 23,
"videoIndex": 0,
- "channel": "央视频道",
+ "channel": "央视",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/bb3c6c9e145d698137f5bb64a582021a01b51344b929003630eb769ea65832a9.png?imageMogr2/format/webp",
"pid": "600099637",
"sid": "2012513303",
@@ -365,7 +365,7 @@
{
"id": 24,
"videoIndex": 0,
- "channel": "央视频道",
+ "channel": "央视",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/bbf1d024c5228b8dd128b0e3cb1717d173fab4ee84c3a4c8a57b1a215362ca3b.png?imageMogr2/format/webp",
"pid": "600099660",
"sid": "2012514103",
@@ -380,7 +380,7 @@
{
"id": 25,
"videoIndex": 0,
- "channel": "央视频道",
+ "channel": "央视",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/4c6b6a6d3839889f34d33db3c2f80233b26b74d3489b393487635f8704e70796.png?imageMogr2/format/webp",
"pid": "600099649",
"sid": "2012513403",
@@ -395,7 +395,7 @@
{
"id": 26,
"videoIndex": 0,
- "channel": "央视频道",
+ "channel": "央视",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/cd1e2bb52b06a991de168733e5ff0f1d85adc8042d40c8f393f723543e5dd08a.png?imageMogr2/format/webp",
"pid": "600099636",
"sid": "2012514203",
@@ -410,7 +410,7 @@
{
"id": 27,
"videoIndex": 0,
- "channel": "央视频道",
+ "channel": "央视",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/cdd1b31ede7a5ad049ed53d9a072422f829e72dd062ed2c19e077fdd01699071.png?imageMogr2/format/webp",
"pid": "600099659",
"sid": "2012512503",
@@ -425,7 +425,7 @@
{
"id": 28,
"videoIndex": 0,
- "channel": "央视频道",
+ "channel": "央视",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/fa28955ce8b2539d728bf4c6a13a46ff57ad76eae46627f7bcfb1ed8a613d3fc.png?imageMogr2/format/webp",
"pid": "600099650",
"sid": "2012513903",
@@ -440,7 +440,7 @@
{
"id": 29,
"videoIndex": 0,
- "channel": "央视频道",
+ "channel": "央视",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/14ac5ce40482cacd3d4b37435222bfe86af2b452a2f04ecbfc1d13d76edd7c57.png?imageMogr2/format/webp",
"pid": "600099653",
"sid": "2012513803",
@@ -455,7 +455,7 @@
{
"id": 30,
"videoIndex": 0,
- "channel": "央视频道",
+ "channel": "央视",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/10e14a92478011aa6c3c8562e62127f3b1908e29fcd78e4b2b24b9e6d3ec2fbc.png?imageMogr2/format/webp",
"pid": "600099652",
"sid": "2012513703",
@@ -470,7 +470,7 @@
{
"id": 31,
"videoIndex": 0,
- "channel": "央视频道",
+ "channel": "央视",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/244d72c0eb1615ed7d51c2f5db5a67f306aa3f58c05bc2d34de3aa7e956dc8c9.png?imageMogr2/format/webp",
"pid": "600099656",
"sid": "2012514003",
@@ -485,7 +485,7 @@
{
"id": 32,
"videoIndex": 0,
- "channel": "央视频道",
+ "channel": "央视",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/54a6863656fdfd8f803be193ddf22441c5000a108833889816fd2d8911715ce8.png?imageMogr2/format/webp",
"pid": "600099651",
"sid": "2012513503",
@@ -500,7 +500,7 @@
{
"id": 33,
"videoIndex": 0,
- "channel": "地方频道",
+ "channel": "地方",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/9bd372ca292a82ce3aa08772b07efc4af1f85c21d1f268ea33440c49e9a0a488.png?imageMogr2/format/webp",
"pid": "600002483",
"sid": "2000292403",
@@ -515,7 +515,7 @@
{
"id": 34,
"videoIndex": 0,
- "channel": "地方频道",
+ "channel": "地方",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/4120e89d3079d08aa17d382f69a2308ec70839b278367763c34a34666c75cb88.png?imageMogr2/format/webp",
"pid": "600002475",
"sid": "2000296203",
@@ -531,7 +531,7 @@
{
"id": 35,
"videoIndex": 0,
- "channel": "地方频道",
+ "channel": "地方",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/7a6be5a2bb1dc53a945c016ff1f525dc4a84c51db371c15c89aa55404b0ba784.png?imageMogr2/format/webp",
"pid": "600002508",
"sid": "2000294503",
@@ -547,7 +547,7 @@
{
"id": 36,
"videoIndex": 0,
- "channel": "地方频道",
+ "channel": "地方",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/ac4ed6058a87c101ae7147ebc38905d0cae047fb73fd277ee5049b84f52bda36.png?imageMogr2/format/webp",
"pid": "600002505",
"sid": "2000281303",
@@ -563,7 +563,7 @@
{
"id": 37,
"videoIndex": 0,
- "channel": "地方频道",
+ "channel": "地方",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/380ad685c0c1d5b2c902246b8d2df6d3f9b45e2837abcfe493075bbded597a31.png?imageMogr2/format/webp",
"pid": "600002521",
"sid": "2000295603",
@@ -579,7 +579,7 @@
{
"id": 38,
"videoIndex": 0,
- "channel": "地方频道",
+ "channel": "地方",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/3c760d0d00463855890e8a1864ea4a6b6dd66b90c29b4ac714a4b17c16519871.png?imageMogr2/format/webp",
"pid": "600002503",
"sid": "2000294103",
@@ -595,7 +595,7 @@
{
"id": 39,
"videoIndex": 0,
- "channel": "地方频道",
+ "channel": "地方",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/22d403f07a7cf5410b3ad3ddb65a11aa229a32475fac213f5344c9f0ec330ca1.png?imageMogr2/format/webp",
"pid": "600002513",
"sid": "2000294803",
@@ -610,7 +610,7 @@
{
"id": 40,
"videoIndex": 0,
- "channel": "地方频道",
+ "channel": "地方",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/28886880a4dc0f06fb7e0a528a1def0591d61a65870e29176ede0cc92033bbfd.png?imageMogr2/format/webp",
"pid": "600002485",
"sid": "2000292703",
@@ -625,7 +625,7 @@
{
"id": 41,
"videoIndex": 0,
- "channel": "地方频道",
+ "channel": "地方",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/54b7e97cb816bb223fe05f3fc44da2c7820eb66e8550c19d23100f2c414ecc38.png?imageMogr2/format/webp",
"pid": "600002509",
"sid": "2000294203",
@@ -641,7 +641,7 @@
{
"id": 42,
"videoIndex": 0,
- "channel": "地方频道",
+ "channel": "地方",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/657651f411de2673d1770d9a78b44c1265704f7468cc41d4be7f51d630768494.png?imageMogr2/format/webp",
"pid": "600002531",
"sid": "2000297803",
@@ -657,7 +657,7 @@
{
"id": 43,
"videoIndex": 0,
- "channel": "地方频道",
+ "channel": "地方",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/74925962148a6d31c85808b6cd4e444c2a54bab393d2c5fc85e960b50e22fa86.png?imageMogr2/format/webp",
"pid": "600002525",
"sid": "2000296103",
@@ -673,7 +673,7 @@
{
"id": 44,
"videoIndex": 0,
- "channel": "地方频道",
+ "channel": "地方",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/d545becdc81c60197b08c7f47380705e4665ed3fe55efc8b855e486f6e655378.png?imageMogr2/format/webp",
"pid": "600002493",
"sid": "2000293403",
@@ -689,7 +689,7 @@
{
"id": 45,
"videoIndex": 0,
- "channel": "地方频道",
+ "channel": "地方",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/4eb45f4781d33d872af027dc01c941559aab55667dd99cc5c22bef7037807b13.png?imageMogr2/format/webp",
"pid": "600002490",
"sid": "2000293303",
@@ -705,7 +705,7 @@
{
"id": 46,
"videoIndex": 0,
- "channel": "地方频道",
+ "channel": "地方",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/f4f23633c578beea49a3841d88d3490100f029ee349059fa532869db889872c5.png?imageMogr2/format/webp",
"pid": "600002309",
"sid": "2000272103",
@@ -721,7 +721,7 @@
{
"id": 47,
"videoIndex": 0,
- "channel": "地方频道",
+ "channel": "地方",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/d8273ae9be698ce2db21f5b886ecac95a73429593f93713c60ed8c12c38bf0d3.png?imageMogr2/format/webp",
"pid": "600002498",
"sid": "2000293903",
@@ -737,7 +737,7 @@
{
"id": 48,
"videoIndex": 0,
- "channel": "地方频道",
+ "channel": "地方",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/a66c836bd98ba3e41a2e9a570d4b9c50dedc6839e9de333e2e78212ad505f37e.png?imageMogr2/format/webp",
"pid": "600002520",
"sid": "2000295503",
@@ -753,7 +753,7 @@
{
"id": 49,
"videoIndex": 0,
- "channel": "地方频道",
+ "channel": "地方",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/f35fa04b51b1ee4984b03578b65403570868ebca03c6c01e11b097f999a58d9b.png?imageMogr2/format/webp",
"pid": "600002532",
"sid": "2000298003",
@@ -769,7 +769,7 @@
{
"id": 50,
"videoIndex": 0,
- "channel": "地方频道",
+ "channel": "地方",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/d59fec04c902e3581c617136d02d4b9b8c4cbe64272781ddd3525e80c823edb7.png?imageMogr2/format/webp",
"pid": "600002481",
"sid": "2000292203",
@@ -785,7 +785,7 @@
{
"id": 51,
"videoIndex": 0,
- "channel": "地方频道",
+ "channel": "地方",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/3276a414ae0eaa0f116f2045cd913367967d0c7c1e978e8621ac3879436c6ed7.png?imageMogr2/format/webp",
"pid": "600002516",
"sid": "2000295003",
@@ -801,7 +801,7 @@
{
"id": 52,
"videoIndex": 0,
- "channel": "地方频道",
+ "channel": "地方",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/3208fe6564a293c21b711333fb3edb05bb5b406cff840573c9a8d839680a1579.png?imageMogr2/format/webp",
"pid": "600002484",
"sid": "2000292503",
@@ -817,7 +817,7 @@
{
"id": 53,
"videoIndex": 0,
- "channel": "地方频道",
+ "channel": "地方",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/6e060391fde0469801fc3d84dbf204b4f8d650d251f17d7595a6964c0bb99e81.png?imageMogr2/format/webp",
"pid": "600002506",
"sid": "2000291503",
@@ -833,7 +833,7 @@
{
"id": 54,
"videoIndex": 0,
- "channel": "地方频道",
+ "channel": "地方",
"logo": "",
"pid": "600152137",
"sid": "2019927003",
@@ -848,7 +848,7 @@
{
"id": 55,
"videoIndex": 0,
- "channel": "地方频道",
+ "channel": "地方",
"logo": "",
"pid": "600152138",
"sid": "2019927403",
@@ -863,7 +863,7 @@
{
"id": 56,
"videoIndex": 0,
- "channel": "国际频道",
+ "channel": "国际",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/a72dff758ca1c17cd0ecc8cedc11b893d208f409d5e6302faa0e9d298848abc3.png?imageMogr2/format/webp",
"pid": "600014550",
"sid": "2001656803",
@@ -878,7 +878,7 @@
{
"id": 57,
"videoIndex": 0,
- "channel": "国际频道",
+ "channel": "国际",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/a8d0046a47433d952bf6ed17062deb8bd2184ba9aec0f7781df6bf9487a3ffcf.png?imageMogr2/format/webp",
"pid": "600084704",
"sid": "2010153503",
@@ -893,7 +893,7 @@
{
"id": 58,
"videoIndex": 0,
- "channel": "国际频道",
+ "channel": "国际",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/bf0a820893cbaf20dd0333e27042e1ef9c8806e5b602b6a8c95af399db0bc77a.png?imageMogr2/format/webp",
"pid": "600084758",
"sid": "2010152603",
@@ -908,7 +908,7 @@
{
"id": 59,
"videoIndex": 0,
- "channel": "国际频道",
+ "channel": "国际",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202306/2e44e2aa3e7a1cedf07fd0ae59fe69e86a60a2632660a006e3e9e7397b2d107e.png?imageMogr2/format/webp",
"pid": "600084782",
"sid": "2010155203",
@@ -923,7 +923,7 @@
{
"id": 60,
"videoIndex": 0,
- "channel": "国际频道",
+ "channel": "国际",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202309/7c337e3dbe64402ec7e4678a619a4a6d95144e42f35161181ff78e143b7cf67a.png?imageMogr2/format/webp",
"pid": "600084744",
"sid": "2010152503",
@@ -939,7 +939,7 @@
{
"id": 61,
"videoIndex": 0,
- "channel": "国际频道",
+ "channel": "国际",
"logo": "https://resources.yangshipin.cn/assets/oms/image/202309/74d3ac436a7e374879578de1d87a941fbf566d39d5632b027c5097891ed32bd5.png?imageMogr2/format/webp",
"pid": "600084781",
"sid": "2010155403",
diff --git a/screenshots/img_1.png b/screenshots/img_1.png
index 73eb540..e69de29 100644
Binary files a/screenshots/img_1.png and b/screenshots/img_1.png differ
diff --git a/screenshots/img_2.png b/screenshots/img_2.png
index 3b914f0..e69de29 100644
Binary files a/screenshots/img_2.png and b/screenshots/img_2.png differ
diff --git a/screenshots/img_3.png b/screenshots/img_3.png
index e517fa8..e69de29 100644
Binary files a/screenshots/img_3.png and b/screenshots/img_3.png differ