pop aboutView upon first app launch

This commit is contained in:
TrueZhuanjia
2025-07-24 20:50:19 +08:00
parent 75e88ee31e
commit 619e936c39
2 changed files with 21 additions and 7 deletions
@@ -1134,7 +1134,7 @@ static NSMutableSet* hostList;
if(self.settingsExpandedInStreamView) [revealController buttonsInStreaming];
else [revealController buttonsNotInStreaming];
DataManager* dataMan = [[DataManager alloc] init];
// DataManager* dataMan = [[DataManager alloc] init];
// TemporarySettings* currentSettings = [dataMan getSettings];
[streamFrameViewController setUserInteractionEnabledForStreamView:!_settingsExpandedInStreamView || position == FrontViewPositionLeft];
@@ -1270,6 +1270,19 @@ static NSMutableSet* hostList;
}
}
- (BOOL)isFirstLaunch {
NSString *key = @"appHasLaunchedBefore";
BOOL launchedBefore = [[NSUserDefaults standardUserDefaults] boolForKey:key];
if (!launchedBefore) {
[[NSUserDefaults standardUserDefaults] setBool:YES forKey:key];
[[NSUserDefaults standardUserDefaults] synchronize]; // iOS 12+ 可省略
return YES;
}
return NO;
}
- (bool)isIPhone{
return ([UIDevice currentDevice].userInterfaceIdiom == UIUserInterfaceIdiomPhone);
}
@@ -1775,6 +1788,7 @@ static NSMutableSet* hostList;
//[self simulateSettingsButtonPress]; //force reload resolution table in the setting
//[self simulateSettingsButtonPress];
[self updateResolutionAccordingly];
if([self isFirstLaunch])[self helpButtonTapped];
}
@@ -137,11 +137,11 @@
}
}
- (BOOL)isFirstLaunch {
NSString *key = @"hasLaunchedBefore";
BOOL launchedBefore = [[NSUserDefaults standardUserDefaults] boolForKey:key];
- (BOOL)isFirstStreaming {
NSString *key = @"hasStreamedBefore";
BOOL streamedBefore = [[NSUserDefaults standardUserDefaults] boolForKey:key];
if (!launchedBefore) {
if (!streamedBefore) {
[[NSUserDefaults standardUserDefaults] setBool:YES forKey:key];
[[NSUserDefaults standardUserDefaults] synchronize]; // iOS 12+ 可省略
return YES;
@@ -419,7 +419,7 @@
}
#endif
- (void)popFirstLaunchTip {
- (void)popFirstStreamingTip {
// 初始化倒计时秒数
__block NSInteger remainingSeconds = 16;
@@ -535,7 +535,7 @@
//[_streamView setupStreamView:_controllerSupport interactionDelegate:self config:self.streamConfig];
[self reConfigStreamViewRealtime]; // call this method again to make sure all gestures are configured & added to the superview(self.view), including the gestures added from inside the streamview.
if([self isFirstLaunch]) [self popFirstLaunchTip];
if([self isFirstStreaming]) [self popFirstStreamingTip];
#if TARGET_OS_TV
if (!_menuTapGestureRecognizer || !_menuDoubleTapGestureRecognizer || !_playPauseTapGestureRecognizer) {