fix: app id修改,视频详情加可滑动
This commit is contained in:
parent
fc445e7c80
commit
27529578ce
@ -21,7 +21,7 @@ android {
|
|||||||
|
|
||||||
defaultConfig {
|
defaultConfig {
|
||||||
// TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
|
// TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
|
||||||
applicationId = "com.example.skywood"
|
applicationId = "com.glimzo.havelo.app"
|
||||||
// You can update the following values to match your application needs.
|
// You can update the following values to match your application needs.
|
||||||
// For more information, see: https://flutter.dev/to/review-gradle-config.
|
// For more information, see: https://flutter.dev/to/review-gradle-config.
|
||||||
minSdk = flutter.minSdkVersion
|
minSdk = flutter.minSdkVersion
|
||||||
|
|||||||
@ -482,7 +482,7 @@
|
|||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
"@executable_path/Frameworks",
|
"@executable_path/Frameworks",
|
||||||
);
|
);
|
||||||
PRODUCT_BUNDLE_IDENTIFIER = com.example.skywood;
|
PRODUCT_BUNDLE_IDENTIFIER = com.glimzo.dorixa.app;
|
||||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||||
SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h";
|
SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h";
|
||||||
SWIFT_VERSION = 5.0;
|
SWIFT_VERSION = 5.0;
|
||||||
@ -499,7 +499,7 @@
|
|||||||
CURRENT_PROJECT_VERSION = 1;
|
CURRENT_PROJECT_VERSION = 1;
|
||||||
GENERATE_INFOPLIST_FILE = YES;
|
GENERATE_INFOPLIST_FILE = YES;
|
||||||
MARKETING_VERSION = 1.0;
|
MARKETING_VERSION = 1.0;
|
||||||
PRODUCT_BUNDLE_IDENTIFIER = com.example.skywood.RunnerTests;
|
PRODUCT_BUNDLE_IDENTIFIER = com.glimzo.dorixa.app;
|
||||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||||
SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG;
|
SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG;
|
||||||
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
|
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
|
||||||
@ -517,7 +517,7 @@
|
|||||||
CURRENT_PROJECT_VERSION = 1;
|
CURRENT_PROJECT_VERSION = 1;
|
||||||
GENERATE_INFOPLIST_FILE = YES;
|
GENERATE_INFOPLIST_FILE = YES;
|
||||||
MARKETING_VERSION = 1.0;
|
MARKETING_VERSION = 1.0;
|
||||||
PRODUCT_BUNDLE_IDENTIFIER = com.example.skywood.RunnerTests;
|
PRODUCT_BUNDLE_IDENTIFIER = com.glimzo.dorixa.app;
|
||||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||||
SWIFT_VERSION = 5.0;
|
SWIFT_VERSION = 5.0;
|
||||||
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Runner.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Runner";
|
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Runner.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Runner";
|
||||||
@ -533,7 +533,7 @@
|
|||||||
CURRENT_PROJECT_VERSION = 1;
|
CURRENT_PROJECT_VERSION = 1;
|
||||||
GENERATE_INFOPLIST_FILE = YES;
|
GENERATE_INFOPLIST_FILE = YES;
|
||||||
MARKETING_VERSION = 1.0;
|
MARKETING_VERSION = 1.0;
|
||||||
PRODUCT_BUNDLE_IDENTIFIER = com.example.skywood.RunnerTests;
|
PRODUCT_BUNDLE_IDENTIFIER = com.glimzo.dorixa.app;
|
||||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||||
SWIFT_VERSION = 5.0;
|
SWIFT_VERSION = 5.0;
|
||||||
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Runner.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Runner";
|
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Runner.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Runner";
|
||||||
@ -666,7 +666,7 @@
|
|||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
"@executable_path/Frameworks",
|
"@executable_path/Frameworks",
|
||||||
);
|
);
|
||||||
PRODUCT_BUNDLE_IDENTIFIER = com.example.skywood;
|
PRODUCT_BUNDLE_IDENTIFIER = com.glimzo.dorixa.app;
|
||||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||||
SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h";
|
SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h";
|
||||||
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
|
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
|
||||||
@ -691,7 +691,7 @@
|
|||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
"@executable_path/Frameworks",
|
"@executable_path/Frameworks",
|
||||||
);
|
);
|
||||||
PRODUCT_BUNDLE_IDENTIFIER = com.example.skywood;
|
PRODUCT_BUNDLE_IDENTIFIER = com.glimzo.dorixa.app;
|
||||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||||
SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h";
|
SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h";
|
||||||
SWIFT_VERSION = 5.0;
|
SWIFT_VERSION = 5.0;
|
||||||
|
|||||||
@ -4,9 +4,10 @@ final class ApiConst {
|
|||||||
static const appName = 'Glimzo';
|
static const appName = 'Glimzo';
|
||||||
static const int pageSize = 12;
|
static const int pageSize = 12;
|
||||||
// https://api-glimzodf.glimzodf.com/glimzodf
|
// https://api-glimzodf.glimzodf.com/glimzodf
|
||||||
static const String apiLink = 'https://api-quickeltv.quickeltv.com/quickeltv';
|
static const String apiLink = 'https://api-glimzodf.glimzodf.com/glimzodf';
|
||||||
|
|
||||||
static String webPrefix = "quickeltv.com";
|
// https://glimzodf.com
|
||||||
|
static String webPrefix = "glimzodf.com";
|
||||||
|
|
||||||
static String webIndex = "https://$webPrefix";
|
static String webIndex = "https://$webPrefix";
|
||||||
|
|
||||||
|
|||||||
@ -54,6 +54,7 @@ class _MainRootState extends State<HomePage> {
|
|||||||
|
|
||||||
for (SkywoodHome element in homeData) {
|
for (SkywoodHome element in homeData) {
|
||||||
print('lele: ${element.moduleKey} : ${element.dataList.length}');
|
print('lele: ${element.moduleKey} : ${element.dataList.length}');
|
||||||
|
print('url: ${element.dataList.first.imageUrl}');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -20,6 +20,8 @@ class DramaDetailPage extends StatefulWidget {
|
|||||||
}
|
}
|
||||||
|
|
||||||
class _DramaDetailPageState extends State<DramaDetailPage> {
|
class _DramaDetailPageState extends State<DramaDetailPage> {
|
||||||
|
static const int _preloadCount = 1;
|
||||||
|
|
||||||
SkywoodDetail? _detailBean;
|
SkywoodDetail? _detailBean;
|
||||||
SkywoodEpisode? _selectedEpisode;
|
SkywoodEpisode? _selectedEpisode;
|
||||||
final PageController _pageController = PageController();
|
final PageController _pageController = PageController();
|
||||||
@ -195,12 +197,17 @@ class _DramaDetailPageState extends State<DramaDetailPage> {
|
|||||||
return PageView.builder(
|
return PageView.builder(
|
||||||
controller: _pageController,
|
controller: _pageController,
|
||||||
scrollDirection: Axis.vertical,
|
scrollDirection: Axis.vertical,
|
||||||
|
allowImplicitScrolling: true,
|
||||||
onPageChanged: _onPageChanged,
|
onPageChanged: _onPageChanged,
|
||||||
itemCount: episodes.length,
|
itemCount: episodes.length,
|
||||||
itemBuilder: (context, index) {
|
itemBuilder: (context, index) {
|
||||||
final episode = episodes[index];
|
final episode = episodes[index];
|
||||||
final isCurrent = index == _currentPageIndex;
|
final isCurrent = index == _currentPageIndex;
|
||||||
|
|
||||||
|
if (!_shouldBuildPlayer(index)) {
|
||||||
|
return const ColoredBox(color: Colors.black);
|
||||||
|
}
|
||||||
|
|
||||||
return SkyPlayerView(
|
return SkyPlayerView(
|
||||||
key: ValueKey(
|
key: ValueKey(
|
||||||
'${episode.shortPlayVideoId}-$isCurrent-${detail.videoInfo?.shortPlayVideoId}',
|
'${episode.shortPlayVideoId}-$isCurrent-${detail.videoInfo?.shortPlayVideoId}',
|
||||||
@ -215,6 +222,10 @@ class _DramaDetailPageState extends State<DramaDetailPage> {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool _shouldBuildPlayer(int index) {
|
||||||
|
return (index - _currentPageIndex).abs() <= _preloadCount;
|
||||||
|
}
|
||||||
|
|
||||||
Widget _headerWidget() {
|
Widget _headerWidget() {
|
||||||
return Container(
|
return Container(
|
||||||
height: 40,
|
height: 40,
|
||||||
|
|||||||
@ -188,7 +188,12 @@ class HelpImg {
|
|||||||
// }
|
// }
|
||||||
return FadeInImage.assetNetwork(
|
return FadeInImage.assetNetwork(
|
||||||
placeholder: isWidth==true ? ConstImg.spaceImgW : ConstImg.spaceImgH, image: path,
|
placeholder: isWidth==true ? ConstImg.spaceImgW : ConstImg.spaceImgH, image: path,
|
||||||
width: width, height: height, fit: BoxFit.cover
|
width: width, height: height, fit: BoxFit.cover,
|
||||||
|
imageErrorBuilder: (context, error, stackTrace) {
|
||||||
|
return HelpImg.asset(isWidth==true ? ConstImg.spaceImgW : ConstImg.spaceImgH, fit: BoxFit.fill,
|
||||||
|
width: width, height: height
|
||||||
|
);
|
||||||
|
},
|
||||||
);
|
);
|
||||||
|
|
||||||
return Image.network(
|
return Image.network(
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user