Skip to content
Toggle navigation
P
Projects
G
Groups
S
Snippets
Help
pidan
/
FuSiLive
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Issues
0
Merge Requests
0
Pipelines
Wiki
Snippets
Members
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Commit
9d01856a
authored
Jul 24, 2026
by
suolong
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
提交下bug处理
parent
fa916616
Show whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
111 additions
and
37 deletions
DevelopmentPods/FUSCommon/FUSCommon/Classes/FUSAPPConfigs/FUSFuSiConfigs.m
DevelopmentPods/FUSCommon/FUSCommon/Classes/FUSAPPConfigs/FUSFuSiWebViewEventHelper.m
DevelopmentPods/FUSCommon/FUSCommon/Classes/Foundation/Socket/FUSSocketManager.m
DevelopmentPods/FUSCommon/FUSCommon/Classes/Foundation/Socket/SocketMessage/FUSSocketMessageCenter.m
DevelopmentPods/FUSCommon/FUSCommon/Classes/Payment/Controller/FUSRechargeViewController.m
FuSiLive.xcodeproj/project.pbxproj
FuSiLive.xcworkspace/xcuserdata/server.xcuserdatad/UserInterfaceState.xcuserstate
Modules/FUSShowRoomModule/FUSShowRoomModule/Features/NewLive/Main/View/FunctionView/PK/FUSPKNew/FUSView/FUSPKContentView/SubViews/FUSPKPunishTypesView.swift
DevelopmentPods/FUSCommon/FUSCommon/Classes/FUSAPPConfigs/FUSFuSiConfigs.m
View file @
9d01856a
...
@@ -78,12 +78,12 @@ static const NSString *FUSCidUDKey = @"FUSCidUDKey";
...
@@ -78,12 +78,12 @@ static const NSString *FUSCidUDKey = @"FUSCidUDKey";
/// App Version
/// App Version
-
(
NSString
*
)
appVersion
{
-
(
NSString
*
)
appVersion
{
return
@"785
0
"
;
return
@"785
1
"
;
}
}
/// App Dot Version
/// App Dot Version
-
(
NSString
*
)
appDotVersion
{
-
(
NSString
*
)
appDotVersion
{
return
@"7.8.5.
0
"
;
return
@"7.8.5.
1
"
;
}
}
/// App Id
/// App Id
...
...
DevelopmentPods/FUSCommon/FUSCommon/Classes/FUSAPPConfigs/FUSFuSiWebViewEventHelper.m
View file @
9d01856a
...
@@ -352,7 +352,9 @@ NSString * const kEVENT_RECHARGE_FIRST_RECHARGE_WINDOW_RECEIVE_OFFICIAL_RECAHARG
...
@@ -352,7 +352,9 @@ NSString * const kEVENT_RECHARGE_FIRST_RECHARGE_WINDOW_RECEIVE_OFFICIAL_RECAHARG
case
FUSJsWebCidExchangDiamond
:
// CID 为 6,跳转兑换宝石界面
case
FUSJsWebCidExchangDiamond
:
// CID 为 6,跳转兑换宝石界面
{
{
FUSExchangeDiamondViewController
*
exchangeDiamondViewCtrl
=
[[
FUSExchangeDiamondViewController
alloc
]
init
];
FUSExchangeDiamondViewController
*
exchangeDiamondViewCtrl
=
[[
FUSExchangeDiamondViewController
alloc
]
init
];
[
wkVC
.
navigationController
pushViewController
:
exchangeDiamondViewCtrl
animated
:
YES
];
UIViewController
*
topViewController
=
[
UIViewController
fus_topViewController
];
UINavigationController
*
navigationController
=
topViewController
.
navigationController
?:
wkVC
.
navigationController
;
[
navigationController
pushViewController
:
exchangeDiamondViewCtrl
animated
:
YES
];
break
;
break
;
}
}
case
FUSJsWebCidBindPhone
:
// CID 为 7,跳转手机绑定界面
case
FUSJsWebCidBindPhone
:
// CID 为 7,跳转手机绑定界面
...
...
DevelopmentPods/FUSCommon/FUSCommon/Classes/Foundation/Socket/FUSSocketManager.m
View file @
9d01856a
...
@@ -9,6 +9,7 @@
...
@@ -9,6 +9,7 @@
#import "FUSSocketManager.h"
#import "FUSSocketManager.h"
#import "GCDAsyncSocket.h"
#import "GCDAsyncSocket.h"
#import "FUSDataStatisticsManager.h"
#import "FUSDataStatisticsManager.h"
#import <AFNetworking/AFNetworkReachabilityManager.h>
// socket 数据解析队列
// socket 数据解析队列
static
dispatch_queue_t
socket_queue
;
static
dispatch_queue_t
socket_queue
;
...
@@ -37,6 +38,7 @@ typedef void(^StatusBlock) (SocketStatus status); // 状态回调
...
@@ -37,6 +38,7 @@ typedef void(^StatusBlock) (SocketStatus status); // 状态回调
int
mPort
;
// 端口号
int
mPort
;
// 端口号
int
mReconnectCount
;
// 重连次数
int
mReconnectCount
;
// 重连次数
AFNetworkReachabilityStatus
mLastNetworkStatus
;
ConnectBlock
mConnectBlock
;
// Socket连接回调
ConnectBlock
mConnectBlock
;
// Socket连接回调
StatusBlock
mStatusBlock
;
// 连接状态回调
StatusBlock
mStatusBlock
;
// 连接状态回调
...
@@ -50,6 +52,38 @@ typedef void(^StatusBlock) (SocketStatus status); // 状态回调
...
@@ -50,6 +52,38 @@ typedef void(^StatusBlock) (SocketStatus status); // 状态回调
return
[[
self
alloc
]
init
];
return
[[
self
alloc
]
init
];
}
}
-
(
instancetype
)
init
{
self
=
[
super
init
];
if
(
self
)
{
mLastNetworkStatus
=
AFNetworkReachabilityStatusUnknown
;
[[
NSNotificationCenter
defaultCenter
]
addObserver
:
self
selector
:
@selector
(
fus_networkReachabilityChanged
:
)
name
:
AFNetworkingReachabilityDidChangeNotification
object
:
nil
];
}
return
self
;
}
-
(
void
)
dealloc
{
[[
NSNotificationCenter
defaultCenter
]
removeObserver
:
self
];
}
-
(
void
)
fus_networkReachabilityChanged
:
(
NSNotification
*
)
notification
{
AFNetworkReachabilityStatus
status
=
[
notification
.
userInfo
[
AFNetworkingReachabilityNotificationStatusItem
]
integerValue
];
BOOL
wasOffline
=
mLastNetworkStatus
==
AFNetworkReachabilityStatusNotReachable
;
mLastNetworkStatus
=
status
;
// Reachability may recover before TCP reports a disconnect, leaving the socket
// half-open. Recreate it once when connectivity returns.
if
(
wasOffline
&&
status
>
AFNetworkReachabilityStatusNotReachable
&&
mHost
.
length
>
0
&&
mPort
>
0
)
{
FUSLogInfo
(
@"--->网络恢复,主动检查Socket连接"
);
[
self
fus_socketReconnectWithBlock
:
nil
];
}
}
#pragma mark -- Socket相关类方法
#pragma mark -- Socket相关类方法
...
@@ -229,12 +263,22 @@ typedef void(^StatusBlock) (SocketStatus status); // 状态回调
...
@@ -229,12 +263,22 @@ typedef void(^StatusBlock) (SocketStatus status); // 状态回调
NSNumber
*
userData
=
sock
.
userData
;
NSNumber
*
userData
=
sock
.
userData
;
NSInteger
userDataValue
=
userData
.
integerValue
;
NSInteger
userDataValue
=
userData
.
integerValue
;
if
(
userDataValue
==
SocketOfflineByServer
)
{
if
(
userDataValue
==
SocketOfflineByUser
)
{
// 用户主动断开
FUSLogInfo
(
@"--->socket断开连接, 用户主动断开"
);
mReconnectCount
=
0
;
// 重连次数归0
// Socket状态回调
if
(
mStatusBlock
)
mStatusBlock
(
SocketOfflineByUser
);
}
else
if
(
userDataValue
==
SocketOfflineByConnecting
)
{
FUSLogInfo
(
@"--->socket断开连接, 正在重建连接"
);
}
else
{
[[
NSNotificationCenter
defaultCenter
]
postNotificationName
:
kFUSSocketDisReconnectNotification
object
:@{
@"host"
:
mHost
,
@"port"
:
@
(
mPort
)}];
[[
NSNotificationCenter
defaultCenter
]
postNotificationName
:
kFUSSocketDisReconnectNotification
object
:@{
@"host"
:
mHost
,
@"port"
:
@
(
mPort
)}];
// v6.1.0 只要连接不上,就发送统计
// v6.1.0 只要连接不上,就发送统计
[
FUSDataStatisticsManager
fus_socketConnectFailed
:[
NSString
stringWithFormat
:
@"%zd"
,
userDataValue
]
ip
:
mHost
port
:
@
(
mPort
).
description
];
[
FUSDataStatisticsManager
fus_socketConnectFailed
:[
NSString
stringWithFormat
:
@"%zd"
,
userDataValue
]
ip
:
mHost
port
:
@
(
mPort
).
description
];
// 服务器掉线
// 服务器掉线
或弱网异常断开
if
(
mReconnectCount
<
100
)
{
if
(
mReconnectCount
<
100
)
{
// Socket状态回调
// Socket状态回调
if
(
mStatusBlock
)
mStatusBlock
(
SocketWillOfflineByServer
);
if
(
mStatusBlock
)
mStatusBlock
(
SocketWillOfflineByServer
);
...
@@ -253,16 +297,6 @@ typedef void(^StatusBlock) (SocketStatus status); // 状态回调
...
@@ -253,16 +297,6 @@ typedef void(^StatusBlock) (SocketStatus status); // 状态回调
// Socket状态回调
// Socket状态回调
if
(
mStatusBlock
)
mStatusBlock
(
SocketOfflineByServer
);
if
(
mStatusBlock
)
mStatusBlock
(
SocketOfflineByServer
);
}
}
}
else
if
(
userDataValue
==
SocketOfflineByUser
){
// 用户主动断开
FUSLogInfo
(
@"--->socket断开连接, 用户主动断开"
);
mReconnectCount
=
0
;
// 重连次数归0
// Socket状态回调
if
(
mStatusBlock
)
mStatusBlock
(
SocketOfflineByUser
);
}
else
{
FUSLogInfo
(
@"--->socket断开连接, 其他原因断开断开 %zd"
,
userDataValue
);
}
}
}
}
...
...
DevelopmentPods/FUSCommon/FUSCommon/Classes/Foundation/Socket/SocketMessage/FUSSocketMessageCenter.m
View file @
9d01856a
...
@@ -20,6 +20,9 @@
...
@@ -20,6 +20,9 @@
typedef
void
(
^
ConnectBlock
)(
BOOL
isSuccess
);
// 连接回调
typedef
void
(
^
ConnectBlock
)(
BOOL
isSuccess
);
// 连接回调
static
const
NSInteger
kFUSSocketMaxMissedHeartbeatCount
=
2
;
static
const
NSTimeInterval
kFUSSocketMinHeartbeatTimeout
=
60
;
@interface
FUSSocketMessageCenter
()
<
FUSSocketDelegate
>
@interface
FUSSocketMessageCenter
()
<
FUSSocketDelegate
>
@end
@end
...
@@ -37,6 +40,9 @@ typedef void(^ConnectBlock)(BOOL isSuccess); // 连接回调
...
@@ -37,6 +40,9 @@ typedef void(^ConnectBlock)(BOOL isSuccess); // 连接回调
ConnectBlock
mConnectBlock
;
// Socket连接回调
ConnectBlock
mConnectBlock
;
// Socket连接回调
NSTimeInterval
mHeartbeatInterval
;
NSTimeInterval
mHeartbeatInterval
;
NSInteger
mMissedHeartbeatCount
;
NSTimeInterval
mLastSocketReceiveTime
;
BOOL
mIsReconnectingForHeartbeat
;
}
}
...
@@ -205,6 +211,7 @@ typedef void(^ConnectBlock)(BOOL isSuccess); // 连接回调
...
@@ -205,6 +211,7 @@ typedef void(^ConnectBlock)(BOOL isSuccess); // 连接回调
*/
*/
-
(
void
)
fus_socketReconnectWithBlock
:
(
void
(
^
)(
BOOL
isSuccess
))
block
-
(
void
)
fus_socketReconnectWithBlock
:
(
void
(
^
)(
BOOL
isSuccess
))
block
{
{
mMissedHeartbeatCount
=
0
;
[
mSocketManager
fus_socketReconnectWithBlock
:
block
];
[
mSocketManager
fus_socketReconnectWithBlock
:
block
];
}
}
...
@@ -226,6 +233,9 @@ typedef void(^ConnectBlock)(BOOL isSuccess); // 连接回调
...
@@ -226,6 +233,9 @@ typedef void(^ConnectBlock)(BOOL isSuccess); // 连接回调
int
code
=
[[
dataDict
objectForKey
:
@"code"
]
intValue
];
int
code
=
[[
dataDict
objectForKey
:
@"code"
]
intValue
];
if
(
code
==
1
||
code
==
5
)
{
if
(
code
==
1
||
code
==
5
)
{
mMissedHeartbeatCount
=
0
;
mLastSocketReceiveTime
=
CFAbsoluteTimeGetCurrent
();
mIsReconnectingForHeartbeat
=
NO
;
// 发送消息队列中的离线消息
// 发送消息队列中的离线消息
[
self
sendMessageFromMessageQueue
];
[
self
sendMessageFromMessageQueue
];
...
@@ -283,6 +293,9 @@ typedef void(^ConnectBlock)(BOOL isSuccess); // 连接回调
...
@@ -283,6 +293,9 @@ typedef void(^ConnectBlock)(BOOL isSuccess); // 连接回调
{
{
// 取消心跳定时器
// 取消心跳定时器
[
mConnectTimer
invalidate
];
[
mConnectTimer
invalidate
];
mMissedHeartbeatCount
=
0
;
mLastSocketReceiveTime
=
0
;
mIsReconnectingForHeartbeat
=
NO
;
[
mSocketManager
fus_cutOffSocket
];
[
mSocketManager
fus_cutOffSocket
];
}
}
...
@@ -357,6 +370,26 @@ typedef void(^ConnectBlock)(BOOL isSuccess); // 连接回调
...
@@ -357,6 +370,26 @@ typedef void(^ConnectBlock)(BOOL isSuccess); // 连接回调
return
;
return
;
}
}
mMissedHeartbeatCount
++
;
NSTimeInterval
now
=
CFAbsoluteTimeGetCurrent
();
NSTimeInterval
heartbeatTimeout
=
MAX
([
self
heartbeatIntervalValue
]
*
(
kFUSSocketMaxMissedHeartbeatCount
+
1
),
kFUSSocketMinHeartbeatTimeout
);
BOOL
hasReceiveTimeout
=
mLastSocketReceiveTime
>
0
&&
now
-
mLastSocketReceiveTime
>=
heartbeatTimeout
;
if
(
mMissedHeartbeatCount
>
kFUSSocketMaxMissedHeartbeatCount
&&
hasReceiveTimeout
)
{
if
(
mIsReconnectingForHeartbeat
)
{
return
;
}
mIsReconnectingForHeartbeat
=
YES
;
FUSLogInfo
(
@"--->Socket心跳超时,主动重连"
);
[
mConnectTimer
invalidate
];
[
self
fus_socketReconnectWithBlock
:
^
(
BOOL
isSuccess
)
{
mIsReconnectingForHeartbeat
=
NO
;
if
(
!
isSuccess
)
{
FUSLogInfo
(
@"--->Socket心跳超时重连失败"
);
}
}];
return
;
}
// 发送心跳包
// 发送心跳包
[
FUSSocketMessageHelper
fus_sendSocketHeartbeatMessage
];
[
FUSSocketMessageHelper
fus_sendSocketHeartbeatMessage
];
}
}
...
@@ -394,6 +427,8 @@ typedef void(^ConnectBlock)(BOOL isSuccess); // 连接回调
...
@@ -394,6 +427,8 @@ typedef void(^ConnectBlock)(BOOL isSuccess); // 连接回调
*/
*/
-
(
void
)
socketAcceptMessageWithData
:
(
NSData
*
)
data
tag
:
(
long
)
tag
-
(
void
)
socketAcceptMessageWithData
:
(
NSData
*
)
data
tag
:
(
long
)
tag
{
{
mMissedHeartbeatCount
=
0
;
mLastSocketReceiveTime
=
CFAbsoluteTimeGetCurrent
();
// 将消息添加到消息队列
// 将消息添加到消息队列
[
mSocketQueue
fus_addAcceptMessageWithData
:
data
];
[
mSocketQueue
fus_addAcceptMessageWithData
:
data
];
if
([
FUSConfig
sharedInstanced
].
devConfigs
.
enableSocketDebug
)
FUSLogInfo
(
@"--->收到消息:socketAcceptMessageWithData
\n
"
);
if
([
FUSConfig
sharedInstanced
].
devConfigs
.
enableSocketDebug
)
FUSLogInfo
(
@"--->收到消息:socketAcceptMessageWithData
\n
"
);
...
...
DevelopmentPods/FUSCommon/FUSCommon/Classes/Payment/Controller/FUSRechargeViewController.m
View file @
9d01856a
...
@@ -123,11 +123,13 @@ NSString * const kEVENT_RECHARGE_OFFICIAL_PAGE_RETURN = @"officialrecharge_retur
...
@@ -123,11 +123,13 @@ NSString * const kEVENT_RECHARGE_OFFICIAL_PAGE_RETURN = @"officialrecharge_retur
isOfficial
:(
BOOL
)
isOfficial
{
isOfficial
:(
BOOL
)
isOfficial
{
NSString
*
gotopage
=
isOfficial
?
@"officialrecharge"
:
@"otherrecharge"
;
NSString
*
gotopage
=
isOfficial
?
@"officialrecharge"
:
@"otherrecharge"
;
NSString
*
roomId
=
FUSConfig
.
sharedInstanced
.
liveConfigs
.
currentRoomId
?:
@""
;
NSString
*
userId
=
[
FUSCacheDataShare
shareStore
].
userDetailInfo
.
uid
?:
@""
;
if
(
from
==
FUSFromLiveRoom
)
{
if
(
from
==
FUSFromLiveRoom
)
{
if
(
rechargePageFrom
==
FUSRechargePageFromGEMsLack
)
{
if
(
rechargePageFrom
==
FUSRechargePageFromGEMsLack
)
{
[
FUSTalkingData
fus_trackEvent
:
FUSLiveEventTrackParams
.
fus_EVENT_ROOM_LACKGEM_RECHARGE
label
:
@""
parameters
:
@{
@"roomid"
:
FUSConfig
.
sharedInstanced
.
liveConfigs
.
currentRoomId
,
@"userid"
:
[
FUSCacheDataShare
shareStore
].
userDetailInfo
.
ui
d
,
@"gotopage"
:
gotopage
}];
[
FUSTalkingData
fus_trackEvent
:
FUSLiveEventTrackParams
.
fus_EVENT_ROOM_LACKGEM_RECHARGE
label
:
@""
parameters
:
@{
@"roomid"
:
roomId
,
@"userid"
:
userI
d
,
@"gotopage"
:
gotopage
}];
}
else
if
(
rechargePageFrom
==
FUSRechargePageFromRoomGiftGEMsLack
)
{
}
else
if
(
rechargePageFrom
==
FUSRechargePageFromRoomGiftGEMsLack
)
{
[
FUSTalkingData
fus_trackEvent
:
FUSLiveEventTrackParams
.
fus_EVENT_ROOM_GIFT_SEND_LACKGEM_OFFICAL_RECHARGE
label
:
@""
parameters
:
@{
@"roomid"
:
FUSConfig
.
sharedInstanced
.
liveConfigs
.
currentRoomId
,
@"userid"
:
[
FUSCacheDataShare
shareStore
].
userDetailInfo
.
ui
d
,
@"gotopage"
:
gotopage
}];
[
FUSTalkingData
fus_trackEvent
:
FUSLiveEventTrackParams
.
fus_EVENT_ROOM_GIFT_SEND_LACKGEM_OFFICAL_RECHARGE
label
:
@""
parameters
:
@{
@"roomid"
:
roomId
,
@"userid"
:
userI
d
,
@"gotopage"
:
gotopage
}];
}
}
}
}
...
@@ -152,7 +154,8 @@ NSString * const kEVENT_RECHARGE_OFFICIAL_PAGE_RETURN = @"officialrecharge_retur
...
@@ -152,7 +154,8 @@ NSString * const kEVENT_RECHARGE_OFFICIAL_PAGE_RETURN = @"officialrecharge_retur
break
;
break
;
}
}
[
FUSTalkingData
fus_trackEvent
:
kEVENT_RECHARGE_OFFICIAL_PAGE
label
:
@""
parameters
:
@{
@"userid"
:
[
FUSCacheDataShare
shareStore
].
userDetailInfo
.
uid
,
@"PKG"
:
FUSConfig
.
sharedInstanced
.
appConfigs
.
appPKG
,
@"source"
:
source
}];
NSString
*
appPKG
=
FUSConfig
.
sharedInstanced
.
appConfigs
.
appPKG
?:
@""
;
[
FUSTalkingData
fus_trackEvent
:
kEVENT_RECHARGE_OFFICIAL_PAGE
label
:
@""
parameters
:
@{
@"userid"
:
userId
,
@"PKG"
:
appPKG
,
@"source"
:
source
}];
NSString
*
firebaseSource
=
@"others"
;
NSString
*
firebaseSource
=
@"others"
;
switch
(
from
)
{
switch
(
from
)
{
...
@@ -174,7 +177,7 @@ NSString * const kEVENT_RECHARGE_OFFICIAL_PAGE_RETURN = @"officialrecharge_retur
...
@@ -174,7 +177,7 @@ NSString * const kEVENT_RECHARGE_OFFICIAL_PAGE_RETURN = @"officialrecharge_retur
}
}
// Firebase 统计
// Firebase 统计
[
FIRAnalytics
logEventWithName
:
@"topuppage"
parameters
:@{
@"useruid"
:
[
FUSCacheDataShare
shareStore
].
userDetailInfo
.
ui
d
,
@"source"
:
firebaseSource
}];
[
FIRAnalytics
logEventWithName
:
@"topuppage"
parameters
:@{
@"useruid"
:
userI
d
,
@"source"
:
firebaseSource
}];
}
}
}
}
...
...
FuSiLive.xcodeproj/project.pbxproj
View file @
9d01856a
...
@@ -102,7 +102,7 @@
...
@@ -102,7 +102,7 @@
/* End PBXFileReference section */
/* End PBXFileReference section */
/* Begin PBXFileSystemSynchronizedBuildFileExceptionSet section */
/* Begin PBXFileSystemSynchronizedBuildFileExceptionSet section */
00E501FF2E0543A800579DB0
/*
Exceptions for "NotificationService" folder in "NotificationService" targ
et */
=
{
00E501FF2E0543A800579DB0
/*
PBXFileSystemSynchronizedBuildFileExceptionS
et */
=
{
isa
=
PBXFileSystemSynchronizedBuildFileExceptionSet
;
isa
=
PBXFileSystemSynchronizedBuildFileExceptionSet
;
membershipExceptions
=
(
membershipExceptions
=
(
"NotificationService-Info.plist"
,
"NotificationService-Info.plist"
,
...
@@ -112,18 +112,7 @@
...
@@ -112,18 +112,7 @@
/* End PBXFileSystemSynchronizedBuildFileExceptionSet section */
/* End PBXFileSystemSynchronizedBuildFileExceptionSet section */
/* Begin PBXFileSystemSynchronizedRootGroup section */
/* Begin PBXFileSystemSynchronizedRootGroup section */
00E501F42E0543A800579DB0
/* NotificationService */
=
{
00E501F42E0543A800579DB0
/* NotificationService */
=
{
isa
=
PBXFileSystemSynchronizedRootGroup
;
exceptions
=
(
00E501FF2E0543A800579DB0
/* PBXFileSystemSynchronizedBuildFileExceptionSet */
,
);
explicitFileTypes
=
{};
explicitFolders
=
();
path
=
NotificationService
;
sourceTree
=
"<group>"
;
};
isa
=
PBXFileSystemSynchronizedRootGroup
;
exceptions
=
(
00E501FF2E0543A800579DB0
/* Exceptions for "NotificationService" folder in "NotificationService" target */
,
);
explicitFileTypes
=
{
};
explicitFolders
=
(
);
path
=
NotificationService
;
sourceTree
=
"<group>"
;
};
/* End PBXFileSystemSynchronizedRootGroup section */
/* End PBXFileSystemSynchronizedRootGroup section */
/* Begin PBXFrameworksBuildPhase section */
/* Begin PBXFrameworksBuildPhase section */
...
@@ -444,10 +433,14 @@
...
@@ -444,10 +433,14 @@
inputFileListPaths
=
(
inputFileListPaths
=
(
"${PODS_ROOT}/Target Support Files/Pods-FuSiLive/Pods-FuSiLive-frameworks-${CONFIGURATION}-input-files.xcfilelist"
,
"${PODS_ROOT}/Target Support Files/Pods-FuSiLive/Pods-FuSiLive-frameworks-${CONFIGURATION}-input-files.xcfilelist"
,
);
);
inputPaths
=
(
);
name
=
"[CP] Embed Pods Frameworks"
;
name
=
"[CP] Embed Pods Frameworks"
;
outputFileListPaths
=
(
outputFileListPaths
=
(
"${PODS_ROOT}/Target Support Files/Pods-FuSiLive/Pods-FuSiLive-frameworks-${CONFIGURATION}-output-files.xcfilelist"
,
"${PODS_ROOT}/Target Support Files/Pods-FuSiLive/Pods-FuSiLive-frameworks-${CONFIGURATION}-output-files.xcfilelist"
,
);
);
outputPaths
=
(
);
runOnlyForDeploymentPostprocessing
=
0
;
runOnlyForDeploymentPostprocessing
=
0
;
shellPath
=
/bin/sh
;
shellPath
=
/bin/sh
;
shellScript
=
"\"${PODS_ROOT}/Target Support Files/Pods-FuSiLive/Pods-FuSiLive-frameworks.sh\"\n"
;
shellScript
=
"\"${PODS_ROOT}/Target Support Files/Pods-FuSiLive/Pods-FuSiLive-frameworks.sh\"\n"
;
...
@@ -461,10 +454,14 @@
...
@@ -461,10 +454,14 @@
inputFileListPaths
=
(
inputFileListPaths
=
(
"${PODS_ROOT}/Target Support Files/Pods-FuSiLive/Pods-FuSiLive-resources-${CONFIGURATION}-input-files.xcfilelist"
,
"${PODS_ROOT}/Target Support Files/Pods-FuSiLive/Pods-FuSiLive-resources-${CONFIGURATION}-input-files.xcfilelist"
,
);
);
inputPaths
=
(
);
name
=
"[CP] Copy Pods Resources"
;
name
=
"[CP] Copy Pods Resources"
;
outputFileListPaths
=
(
outputFileListPaths
=
(
"${PODS_ROOT}/Target Support Files/Pods-FuSiLive/Pods-FuSiLive-resources-${CONFIGURATION}-output-files.xcfilelist"
,
"${PODS_ROOT}/Target Support Files/Pods-FuSiLive/Pods-FuSiLive-resources-${CONFIGURATION}-output-files.xcfilelist"
,
);
);
outputPaths
=
(
);
runOnlyForDeploymentPostprocessing
=
0
;
runOnlyForDeploymentPostprocessing
=
0
;
shellPath
=
/bin/sh
;
shellPath
=
/bin/sh
;
shellScript
=
"\"${PODS_ROOT}/Target Support Files/Pods-FuSiLive/Pods-FuSiLive-resources.sh\"\n"
;
shellScript
=
"\"${PODS_ROOT}/Target Support Files/Pods-FuSiLive/Pods-FuSiLive-resources.sh\"\n"
;
...
@@ -694,7 +691,7 @@
...
@@ -694,7 +691,7 @@
CLANG_CXX_LANGUAGE_STANDARD
=
"gnu++17"
;
CLANG_CXX_LANGUAGE_STANDARD
=
"gnu++17"
;
CODE_SIGN_ENTITLEMENTS
=
FuSiLive/FuSiLive.entitlements
;
CODE_SIGN_ENTITLEMENTS
=
FuSiLive/FuSiLive.entitlements
;
CODE_SIGN_STYLE
=
Automatic
;
CODE_SIGN_STYLE
=
Automatic
;
CURRENT_PROJECT_VERSION
=
2026052
2
;
CURRENT_PROJECT_VERSION
=
2026052
3
;
DEFINES_MODULE
=
YES
;
DEFINES_MODULE
=
YES
;
DEVELOPMENT_TEAM
=
6GG26BHUMC
;
DEVELOPMENT_TEAM
=
6GG26BHUMC
;
ENABLE_ON_DEMAND_RESOURCES
=
NO
;
ENABLE_ON_DEMAND_RESOURCES
=
NO
;
...
@@ -729,7 +726,7 @@
...
@@ -729,7 +726,7 @@
"$(PROJECT_DIR)/FuSiLive/Classes/FUSModules/FUSLiveModule/NewLive/Main/View/StreamView/Beauty/ByteDanceBeauty"
,
"$(PROJECT_DIR)/FuSiLive/Classes/FUSModules/FUSLiveModule/NewLive/Main/View/StreamView/Beauty/ByteDanceBeauty"
,
);
);
LOCALIZATION_PREFERS_STRING_CATALOGS
=
NO
;
LOCALIZATION_PREFERS_STRING_CATALOGS
=
NO
;
MARKETING_VERSION
=
10.
0
.1
;
MARKETING_VERSION
=
10.
1
.1
;
OTHER_CFLAGS
=
(
OTHER_CFLAGS
=
(
"$(inherited)"
,
"$(inherited)"
,
"-isystem"
,
"-isystem"
,
...
@@ -959,7 +956,7 @@
...
@@ -959,7 +956,7 @@
CLANG_CXX_LANGUAGE_STANDARD
=
"gnu++17"
;
CLANG_CXX_LANGUAGE_STANDARD
=
"gnu++17"
;
CODE_SIGN_ENTITLEMENTS
=
FuSiLive/FuSiLive.entitlements
;
CODE_SIGN_ENTITLEMENTS
=
FuSiLive/FuSiLive.entitlements
;
CODE_SIGN_STYLE
=
Automatic
;
CODE_SIGN_STYLE
=
Automatic
;
CURRENT_PROJECT_VERSION
=
2026052
2
;
CURRENT_PROJECT_VERSION
=
2026052
3
;
DEFINES_MODULE
=
YES
;
DEFINES_MODULE
=
YES
;
DEVELOPMENT_TEAM
=
6GG26BHUMC
;
DEVELOPMENT_TEAM
=
6GG26BHUMC
;
ENABLE_ON_DEMAND_RESOURCES
=
NO
;
ENABLE_ON_DEMAND_RESOURCES
=
NO
;
...
@@ -994,7 +991,7 @@
...
@@ -994,7 +991,7 @@
"$(PROJECT_DIR)/FuSiLive/Classes/FUSModules/FUSLiveModule/NewLive/Main/View/StreamView/Beauty/ByteDanceBeauty"
,
"$(PROJECT_DIR)/FuSiLive/Classes/FUSModules/FUSLiveModule/NewLive/Main/View/StreamView/Beauty/ByteDanceBeauty"
,
);
);
LOCALIZATION_PREFERS_STRING_CATALOGS
=
NO
;
LOCALIZATION_PREFERS_STRING_CATALOGS
=
NO
;
MARKETING_VERSION
=
10.
0
.1
;
MARKETING_VERSION
=
10.
1
.1
;
OTHER_CFLAGS
=
(
OTHER_CFLAGS
=
(
"$(inherited)"
,
"$(inherited)"
,
"-isystem"
,
"-isystem"
,
...
...
FuSiLive.xcworkspace/xcuserdata/server.xcuserdatad/UserInterfaceState.xcuserstate
View file @
9d01856a
No preview for this file type
Modules/FUSShowRoomModule/FUSShowRoomModule/Features/NewLive/Main/View/FunctionView/PK/FUSPKNew/FUSView/FUSPKContentView/SubViews/FUSPKPunishTypesView.swift
View file @
9d01856a
...
@@ -100,7 +100,10 @@ class FUSPKPunishTypesView: FUSBaseView {
...
@@ -100,7 +100,10 @@ class FUSPKPunishTypesView: FUSBaseView {
var
typesBtnList
:
[
UIButton
]
=
.
init
()
var
typesBtnList
:
[
UIButton
]
=
.
init
()
/// 最大选择个数
/// 最大选择个数
let
vsPunishMaxLimit
:
Int
=
FUSCacheDataShare
.
shareStore
()
.
settingInitDataModel
.
vsPunishMaxLimit
let
vsPunishMaxLimit
:
Int
=
max
(
FUSCacheDataShare
.
shareStore
()
.
settingInitDataModel
?
.
vsPunishMaxLimit
??
1
,
1
)
override
func
makeUI
()
{
override
func
makeUI
()
{
super
.
makeUI
()
super
.
makeUI
()
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment