fix: 评论区jumpUrl BV跳转
This commit is contained in:
@ -12,6 +12,7 @@ import 'package:pilipala/pages/preview/index.dart';
|
|||||||
import 'package:pilipala/pages/video/detail/index.dart';
|
import 'package:pilipala/pages/video/detail/index.dart';
|
||||||
import 'package:pilipala/pages/video/detail/reply_new/index.dart';
|
import 'package:pilipala/pages/video/detail/reply_new/index.dart';
|
||||||
import 'package:pilipala/utils/feed_back.dart';
|
import 'package:pilipala/utils/feed_back.dart';
|
||||||
|
import 'package:pilipala/utils/id_utils.dart';
|
||||||
import 'package:pilipala/utils/storage.dart';
|
import 'package:pilipala/utils/storage.dart';
|
||||||
import 'package:pilipala/utils/url_utils.dart';
|
import 'package:pilipala/utils/url_utils.dart';
|
||||||
import 'package:pilipala/utils/utils.dart';
|
import 'package:pilipala/utils/utils.dart';
|
||||||
@ -620,26 +621,34 @@ InlineSpan buildContent(
|
|||||||
..onTap = () async {
|
..onTap = () async {
|
||||||
final String title = content.jumpUrl[matchStr]['title'];
|
final String title = content.jumpUrl[matchStr]['title'];
|
||||||
if (appUrlSchema == '') {
|
if (appUrlSchema == '') {
|
||||||
final String redirectUrl =
|
if (matchStr.startsWith('BV')) {
|
||||||
await UrlUtils.parseRedirectUrl(matchStr);
|
|
||||||
final String pathSegment = Uri.parse(redirectUrl).path;
|
|
||||||
final String lastPathSegment =
|
|
||||||
pathSegment.split('/').last;
|
|
||||||
if (lastPathSegment.startsWith('BV')) {
|
|
||||||
UrlUtils.matchUrlPush(
|
UrlUtils.matchUrlPush(
|
||||||
lastPathSegment,
|
matchStr,
|
||||||
title,
|
title,
|
||||||
redirectUrl,
|
'',
|
||||||
);
|
);
|
||||||
} else {
|
} else {
|
||||||
Get.toNamed(
|
final String redirectUrl =
|
||||||
'/webview',
|
await UrlUtils.parseRedirectUrl(matchStr);
|
||||||
parameters: {
|
final String pathSegment = Uri.parse(redirectUrl).path;
|
||||||
'url': redirectUrl,
|
final String lastPathSegment =
|
||||||
'type': 'url',
|
pathSegment.split('/').last;
|
||||||
'pageTitle': title
|
if (lastPathSegment.startsWith('BV')) {
|
||||||
},
|
UrlUtils.matchUrlPush(
|
||||||
);
|
lastPathSegment,
|
||||||
|
title,
|
||||||
|
redirectUrl,
|
||||||
|
);
|
||||||
|
} else {
|
||||||
|
Get.toNamed(
|
||||||
|
'/webview',
|
||||||
|
parameters: {
|
||||||
|
'url': redirectUrl,
|
||||||
|
'type': 'url',
|
||||||
|
'pageTitle': title
|
||||||
|
},
|
||||||
|
);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if (appUrlSchema.startsWith('bilibili://search')) {
|
if (appUrlSchema.startsWith('bilibili://search')) {
|
||||||
|
|||||||
Reference in New Issue
Block a user