appium-webdriveragent 11.4.1 → 11.4.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +6 -0
- package/WebDriverAgentLib/Info.plist +2 -2
- package/WebDriverAgentLib/Routing/FBTCPSocket.h +5 -1
- package/WebDriverAgentLib/Routing/FBTCPSocket.m +17 -5
- package/WebDriverAgentLib/Routing/FBWebServer.m +34 -5
- package/WebDriverAgentLib/Utilities/FBImageProcessor.m +35 -20
- package/WebDriverAgentLib/Utilities/FBMjpegServer.h +5 -0
- package/WebDriverAgentLib/Utilities/FBMjpegServer.m +65 -10
- package/build/lib/xcodebuild.js +1 -1
- package/build/lib/xcodebuild.js.map +1 -1
- package/build/tsconfig.tsbuildinfo +1 -1
- package/lib/xcodebuild.ts +4 -4
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,9 @@
|
|
|
1
|
+
## [11.4.2](https://github.com/appium/WebDriverAgent/compare/v11.4.1...v11.4.2) (2026-04-12)
|
|
2
|
+
|
|
3
|
+
### Bug Fixes
|
|
4
|
+
|
|
5
|
+
* Avoid keeping strong reference to self instance in delegates ([#1123](https://github.com/appium/WebDriverAgent/issues/1123)) ([dd15f48](https://github.com/appium/WebDriverAgent/commit/dd15f48d33edabef6aea8ac951cf539946b492f2))
|
|
6
|
+
|
|
1
7
|
## [11.4.1](https://github.com/appium/WebDriverAgent/compare/v11.4.0...v11.4.1) (2026-03-15)
|
|
2
8
|
|
|
3
9
|
### Bug Fixes
|
|
@@ -15,11 +15,11 @@
|
|
|
15
15
|
<key>CFBundlePackageType</key>
|
|
16
16
|
<string>FMWK</string>
|
|
17
17
|
<key>CFBundleShortVersionString</key>
|
|
18
|
-
<string>11.4.
|
|
18
|
+
<string>11.4.2</string>
|
|
19
19
|
<key>CFBundleSignature</key>
|
|
20
20
|
<string>????</string>
|
|
21
21
|
<key>CFBundleVersion</key>
|
|
22
|
-
<string>11.4.
|
|
22
|
+
<string>11.4.2</string>
|
|
23
23
|
<key>NSPrincipalClass</key>
|
|
24
24
|
<string/>
|
|
25
25
|
</dict>
|
|
@@ -38,7 +38,11 @@ NS_ASSUME_NONNULL_BEGIN
|
|
|
38
38
|
|
|
39
39
|
@interface FBTCPSocket : NSObject
|
|
40
40
|
|
|
41
|
-
|
|
41
|
+
#if __has_feature(objc_arc_weak)
|
|
42
|
+
@property (nullable, nonatomic, weak) id<FBTCPSocketDelegate> delegate;
|
|
43
|
+
#else
|
|
44
|
+
@property (nullable, nonatomic, assign) id<FBTCPSocketDelegate> delegate;
|
|
45
|
+
#endif
|
|
42
46
|
|
|
43
47
|
/**
|
|
44
48
|
Creates TCP socket isntance which is going to be started on the specified port
|
|
@@ -48,11 +48,14 @@
|
|
|
48
48
|
- (void)stop
|
|
49
49
|
{
|
|
50
50
|
@synchronized(self.connectedClients) {
|
|
51
|
-
|
|
52
|
-
|
|
51
|
+
NSArray *clients = self.connectedClients.copy;
|
|
52
|
+
[self.connectedClients removeAllObjects];
|
|
53
|
+
for (GCDAsyncSocket *client in clients) {
|
|
54
|
+
[client disconnect];
|
|
53
55
|
}
|
|
54
56
|
}
|
|
55
57
|
|
|
58
|
+
self.delegate = nil;
|
|
56
59
|
[self.listeningSocket disconnect];
|
|
57
60
|
}
|
|
58
61
|
|
|
@@ -66,12 +69,18 @@
|
|
|
66
69
|
@synchronized(self.connectedClients) {
|
|
67
70
|
[self.connectedClients addObject:newSocket];
|
|
68
71
|
}
|
|
69
|
-
|
|
72
|
+
id<FBTCPSocketDelegate> delegate = self.delegate;
|
|
73
|
+
if (nil != delegate) {
|
|
74
|
+
[delegate didClientConnect:newSocket];
|
|
75
|
+
}
|
|
70
76
|
}
|
|
71
77
|
|
|
72
78
|
- (void)socket:(GCDAsyncSocket *)sock didReadData:(NSData *)data withTag:(long)tag
|
|
73
79
|
{
|
|
74
|
-
|
|
80
|
+
id<FBTCPSocketDelegate> delegate = self.delegate;
|
|
81
|
+
if (nil != delegate) {
|
|
82
|
+
[delegate didClientSendData:sock];
|
|
83
|
+
}
|
|
75
84
|
}
|
|
76
85
|
|
|
77
86
|
- (void)socketDidDisconnect:(GCDAsyncSocket *)sock withError:(NSError *)err
|
|
@@ -79,7 +88,10 @@
|
|
|
79
88
|
@synchronized(self.connectedClients) {
|
|
80
89
|
[self.connectedClients removeObject:sock];
|
|
81
90
|
}
|
|
82
|
-
|
|
91
|
+
id<FBTCPSocketDelegate> delegate = self.delegate;
|
|
92
|
+
if (nil != delegate) {
|
|
93
|
+
[delegate didClientDisconnect:sock];
|
|
94
|
+
}
|
|
83
95
|
}
|
|
84
96
|
|
|
85
97
|
@end
|
|
@@ -47,10 +47,16 @@ static NSString *const FBServerURLEndMarker = @"<-ServerURLHere";
|
|
|
47
47
|
@property (nonatomic, strong) RoutingHTTPServer *server;
|
|
48
48
|
@property (atomic, assign) BOOL keepAlive;
|
|
49
49
|
@property (nonatomic, nullable) FBTCPSocket *screenshotsBroadcaster;
|
|
50
|
+
@property (nonatomic, nullable, strong) FBMjpegServer *mjpegServer;
|
|
50
51
|
@end
|
|
51
52
|
|
|
52
53
|
@implementation FBWebServer
|
|
53
54
|
|
|
55
|
+
- (void)dealloc
|
|
56
|
+
{
|
|
57
|
+
[self stopScreenshotsBroadcaster];
|
|
58
|
+
}
|
|
59
|
+
|
|
54
60
|
+ (NSArray<Class<FBCommandHandler>> *)collectCommandHandlerClasses
|
|
55
61
|
{
|
|
56
62
|
NSArray *handlersClasses = FBClassesThatConformsToProtocol(@protocol(FBCommandHandler));
|
|
@@ -97,7 +103,7 @@ static NSString *const FBServerURLEndMarker = @"<-ServerURLHere";
|
|
|
97
103
|
[self.server setInterface:bindingIP];
|
|
98
104
|
[FBLogger logFmt:@"Using custom binding IP address: %@", bindingIP];
|
|
99
105
|
}
|
|
100
|
-
|
|
106
|
+
|
|
101
107
|
NSError *error;
|
|
102
108
|
BOOL serverStarted = NO;
|
|
103
109
|
|
|
@@ -117,7 +123,7 @@ static NSString *const FBServerURLEndMarker = @"<-ServerURLHere";
|
|
|
117
123
|
[FBLogger logFmt:@"Last attempt to start web server failed with error %@", [error description]];
|
|
118
124
|
abort();
|
|
119
125
|
}
|
|
120
|
-
|
|
126
|
+
|
|
121
127
|
NSString *serverHost = bindingIP ?: ([XCUIDevice sharedDevice].fb_wifiIPAddress ?: @"127.0.0.1");
|
|
122
128
|
[FBLogger logFmt:@"%@http://%@:%d%@", FBServerURLBeginMarker, serverHost, [self.server port], FBServerURLEndMarker];
|
|
123
129
|
}
|
|
@@ -125,12 +131,15 @@ static NSString *const FBServerURLEndMarker = @"<-ServerURLHere";
|
|
|
125
131
|
- (void)initScreenshotsBroadcaster
|
|
126
132
|
{
|
|
127
133
|
[self readMjpegSettingsFromEnv];
|
|
134
|
+
self.mjpegServer = [[FBMjpegServer alloc] init];
|
|
128
135
|
self.screenshotsBroadcaster = [[FBTCPSocket alloc]
|
|
129
136
|
initWithPort:(uint16_t)FBConfiguration.mjpegServerPort];
|
|
130
|
-
self.screenshotsBroadcaster.delegate =
|
|
137
|
+
self.screenshotsBroadcaster.delegate = self.mjpegServer;
|
|
131
138
|
NSError *error;
|
|
132
139
|
if (![self.screenshotsBroadcaster startWithError:&error]) {
|
|
133
140
|
[FBLogger logFmt:@"Cannot init screenshots broadcaster service on port %@. Original error: %@", @(FBConfiguration.mjpegServerPort), error.description];
|
|
141
|
+
[self.mjpegServer stopStreaming];
|
|
142
|
+
self.mjpegServer = nil;
|
|
134
143
|
self.screenshotsBroadcaster = nil;
|
|
135
144
|
}
|
|
136
145
|
}
|
|
@@ -138,10 +147,18 @@ static NSString *const FBServerURLEndMarker = @"<-ServerURLHere";
|
|
|
138
147
|
- (void)stopScreenshotsBroadcaster
|
|
139
148
|
{
|
|
140
149
|
if (nil == self.screenshotsBroadcaster) {
|
|
150
|
+
self.mjpegServer = nil;
|
|
141
151
|
return;
|
|
142
152
|
}
|
|
143
153
|
|
|
154
|
+
id<FBTCPSocketDelegate> delegate = self.screenshotsBroadcaster.delegate;
|
|
155
|
+
if ([(NSObject *)delegate respondsToSelector:@selector(stopStreaming)]) {
|
|
156
|
+
[(FBMjpegServer *)delegate stopStreaming];
|
|
157
|
+
}
|
|
158
|
+
self.screenshotsBroadcaster.delegate = nil;
|
|
144
159
|
[self.screenshotsBroadcaster stop];
|
|
160
|
+
self.screenshotsBroadcaster = nil;
|
|
161
|
+
self.mjpegServer = nil;
|
|
145
162
|
}
|
|
146
163
|
|
|
147
164
|
- (void)readMjpegSettingsFromEnv
|
|
@@ -164,6 +181,8 @@ static NSString *const FBServerURLEndMarker = @"<-ServerURLHere";
|
|
|
164
181
|
if (self.server.isRunning) {
|
|
165
182
|
[self.server stop:NO];
|
|
166
183
|
}
|
|
184
|
+
self.server = nil;
|
|
185
|
+
self.exceptionHandler = nil;
|
|
167
186
|
self.keepAlive = NO;
|
|
168
187
|
}
|
|
169
188
|
|
|
@@ -192,10 +211,15 @@ static NSString *const FBServerURLEndMarker = @"<-ServerURLHere";
|
|
|
192
211
|
|
|
193
212
|
- (void)registerRouteHandlers:(NSArray *)commandHandlerClasses
|
|
194
213
|
{
|
|
214
|
+
__weak typeof(self) weakSelf = self;
|
|
195
215
|
for (Class<FBCommandHandler> commandHandler in commandHandlerClasses) {
|
|
196
216
|
NSArray *routes = [commandHandler routes];
|
|
197
217
|
for (FBRoute *route in routes) {
|
|
198
218
|
[self.server handleMethod:route.verb withPath:route.path block:^(RouteRequest *request, RouteResponse *response) {
|
|
219
|
+
__strong typeof(weakSelf) strongSelf = weakSelf;
|
|
220
|
+
if (nil == strongSelf) {
|
|
221
|
+
return;
|
|
222
|
+
}
|
|
199
223
|
NSDictionary *arguments = [NSJSONSerialization JSONObjectWithData:request.body options:NSJSONReadingMutableContainers error:NULL];
|
|
200
224
|
FBRouteRequest *routeParams = [FBRouteRequest
|
|
201
225
|
routeRequestWithURL:request.url
|
|
@@ -209,7 +233,7 @@ static NSString *const FBServerURLEndMarker = @"<-ServerURLHere";
|
|
|
209
233
|
[route mountRequest:routeParams intoResponse:response];
|
|
210
234
|
}
|
|
211
235
|
@catch (NSException *exception) {
|
|
212
|
-
[
|
|
236
|
+
[strongSelf handleException:exception forResponse:response];
|
|
213
237
|
}
|
|
214
238
|
}];
|
|
215
239
|
}
|
|
@@ -237,9 +261,14 @@ static NSString *const FBServerURLEndMarker = @"<-ServerURLHere";
|
|
|
237
261
|
[response respondWithString:calibrationPage];
|
|
238
262
|
}];
|
|
239
263
|
|
|
264
|
+
__weak typeof(self) weakSelf = self;
|
|
240
265
|
[self.server get:@"/wda/shutdown" withBlock:^(RouteRequest *request, RouteResponse *response) {
|
|
266
|
+
__strong typeof(weakSelf) strongSelf = weakSelf;
|
|
267
|
+
if (nil == strongSelf) {
|
|
268
|
+
return;
|
|
269
|
+
}
|
|
241
270
|
[response respondWithString:@"Shutting down"];
|
|
242
|
-
[
|
|
271
|
+
[strongSelf.delegate webServerDidRequestShutdown:strongSelf];
|
|
243
272
|
}];
|
|
244
273
|
|
|
245
274
|
[self registerRouteHandlers:@[FBUnknownCommands.class]];
|
|
@@ -27,6 +27,7 @@ const CGFloat FBMaxCompressionQuality = 1.0f;
|
|
|
27
27
|
@property (nonatomic) NSData *nextImage;
|
|
28
28
|
@property (nonatomic, readonly) NSLock *nextImageLock;
|
|
29
29
|
@property (nonatomic, readonly) dispatch_queue_t scalingQueue;
|
|
30
|
+
@property (atomic, assign) BOOL isScalingScheduled;
|
|
30
31
|
|
|
31
32
|
@end
|
|
32
33
|
|
|
@@ -38,6 +39,7 @@ const CGFloat FBMaxCompressionQuality = 1.0f;
|
|
|
38
39
|
if (self) {
|
|
39
40
|
_nextImageLock = [[NSLock alloc] init];
|
|
40
41
|
_scalingQueue = dispatch_queue_create("image.scaling.queue", NULL);
|
|
42
|
+
_isScalingScheduled = NO;
|
|
41
43
|
}
|
|
42
44
|
return self;
|
|
43
45
|
}
|
|
@@ -51,32 +53,45 @@ const CGFloat FBMaxCompressionQuality = 1.0f;
|
|
|
51
53
|
[FBLogger verboseLog:@"Discarding screenshot"];
|
|
52
54
|
}
|
|
53
55
|
self.nextImage = image;
|
|
56
|
+
BOOL shouldSchedule = !self.isScalingScheduled;
|
|
57
|
+
if (shouldSchedule) {
|
|
58
|
+
self.isScalingScheduled = YES;
|
|
59
|
+
}
|
|
54
60
|
[self.nextImageLock unlock];
|
|
61
|
+
if (!shouldSchedule) {
|
|
62
|
+
return;
|
|
63
|
+
}
|
|
55
64
|
|
|
56
65
|
#pragma clang diagnostic push
|
|
57
66
|
#pragma clang diagnostic ignored "-Wcompletion-handler"
|
|
58
67
|
dispatch_async(self.scalingQueue, ^{
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
68
|
+
while (YES) {
|
|
69
|
+
@autoreleasepool {
|
|
70
|
+
[self.nextImageLock lock];
|
|
71
|
+
NSData *nextImageData = self.nextImage;
|
|
72
|
+
self.nextImage = nil;
|
|
73
|
+
if (nextImageData == nil) {
|
|
74
|
+
self.isScalingScheduled = NO;
|
|
75
|
+
[self.nextImageLock unlock];
|
|
76
|
+
return;
|
|
77
|
+
}
|
|
78
|
+
[self.nextImageLock unlock];
|
|
66
79
|
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
+
// We do not want this value to be too high because then we get images larger in size than original ones
|
|
81
|
+
// Although, we also don't want to lose too much of the quality on recompression
|
|
82
|
+
CGFloat recompressionQuality = MAX(0.9,
|
|
83
|
+
MIN(FBMaxCompressionQuality, FBConfiguration.mjpegServerScreenshotQuality / 100.0));
|
|
84
|
+
NSData *thumbnailData = [self.class fixedImageDataWithImageData:nextImageData
|
|
85
|
+
scalingFactor:scalingFactor
|
|
86
|
+
uti:UTTypeJPEG
|
|
87
|
+
compressionQuality:recompressionQuality
|
|
88
|
+
// iOS always returns screenshots in portrait orientation, but puts the real value into the metadata
|
|
89
|
+
// Use it with care. See https://github.com/appium/WebDriverAgent/pull/812
|
|
90
|
+
fixOrientation:FBConfiguration.mjpegShouldFixOrientation
|
|
91
|
+
desiredOrientation:nil];
|
|
92
|
+
completionHandler(thumbnailData ?: nextImageData);
|
|
93
|
+
}
|
|
94
|
+
}
|
|
80
95
|
});
|
|
81
96
|
#pragma clang diagnostic pop
|
|
82
97
|
}
|
|
@@ -27,6 +27,11 @@ static const NSTimeInterval FAILURE_BACKOFF_MAX = 10.0;
|
|
|
27
27
|
static NSString *const SERVER_NAME = @"WDA MJPEG Server";
|
|
28
28
|
static const char *QUEUE_NAME = "JPEG Screenshots Provider Queue";
|
|
29
29
|
|
|
30
|
+
static NSUInteger FBNormalizedMjpegFramerate(NSUInteger framerate)
|
|
31
|
+
{
|
|
32
|
+
return (0 == framerate || framerate > MAX_FPS) ? MAX_FPS : framerate;
|
|
33
|
+
}
|
|
34
|
+
|
|
30
35
|
|
|
31
36
|
@interface FBMjpegServer()
|
|
32
37
|
|
|
@@ -35,6 +40,9 @@ static const char *QUEUE_NAME = "JPEG Screenshots Provider Queue";
|
|
|
35
40
|
@property (nonatomic, readonly) FBImageProcessor *imageProcessor;
|
|
36
41
|
@property (nonatomic, readonly) long long mainScreenID;
|
|
37
42
|
@property (nonatomic, assign) NSUInteger consecutiveScreenshotFailures;
|
|
43
|
+
@property (atomic, assign) BOOL isStreaming;
|
|
44
|
+
@property (nonatomic, assign) NSUInteger sentFramesCount;
|
|
45
|
+
@property (nonatomic, assign) NSUInteger sentBytesCount;
|
|
38
46
|
|
|
39
47
|
@end
|
|
40
48
|
|
|
@@ -45,38 +53,49 @@ static const char *QUEUE_NAME = "JPEG Screenshots Provider Queue";
|
|
|
45
53
|
{
|
|
46
54
|
if ((self = [super init])) {
|
|
47
55
|
_consecutiveScreenshotFailures = 0;
|
|
56
|
+
_isStreaming = YES;
|
|
57
|
+
_sentFramesCount = 0;
|
|
58
|
+
_sentBytesCount = 0;
|
|
48
59
|
_listeningClients = [NSMutableArray array];
|
|
60
|
+
_imageProcessor = [[FBImageProcessor alloc] init];
|
|
61
|
+
_mainScreenID = [XCUIScreen.mainScreen displayID];
|
|
49
62
|
dispatch_queue_attr_t queueAttributes = dispatch_queue_attr_make_with_qos_class(DISPATCH_QUEUE_SERIAL, QOS_CLASS_UTILITY, 0);
|
|
50
63
|
_backgroundQueue = dispatch_queue_create(QUEUE_NAME, queueAttributes);
|
|
64
|
+
__weak typeof(self) weakSelf = self;
|
|
51
65
|
dispatch_async(_backgroundQueue, ^{
|
|
52
|
-
[
|
|
66
|
+
[weakSelf streamScreenshot];
|
|
53
67
|
});
|
|
54
|
-
_imageProcessor = [[FBImageProcessor alloc] init];
|
|
55
|
-
_mainScreenID = [XCUIScreen.mainScreen displayID];
|
|
56
68
|
}
|
|
57
69
|
return self;
|
|
58
70
|
}
|
|
59
71
|
|
|
60
72
|
- (void)scheduleNextScreenshotWithInterval:(uint64_t)timerInterval timeStarted:(uint64_t)timeStarted
|
|
61
73
|
{
|
|
74
|
+
if (!self.isStreaming) {
|
|
75
|
+
return;
|
|
76
|
+
}
|
|
62
77
|
uint64_t timeElapsed = clock_gettime_nsec_np(CLOCK_MONOTONIC_RAW) - timeStarted;
|
|
63
|
-
int64_t nextTickDelta = timerInterval - timeElapsed;
|
|
78
|
+
int64_t nextTickDelta = (int64_t)timerInterval - (int64_t)timeElapsed;
|
|
79
|
+
__weak typeof(self) weakSelf = self;
|
|
64
80
|
if (nextTickDelta > 0) {
|
|
65
81
|
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, nextTickDelta), self.backgroundQueue, ^{
|
|
66
|
-
[
|
|
82
|
+
[weakSelf streamScreenshot];
|
|
67
83
|
});
|
|
68
84
|
} else {
|
|
69
85
|
// Try to do our best to keep the FPS at a decent level
|
|
70
86
|
dispatch_async(self.backgroundQueue, ^{
|
|
71
|
-
[
|
|
87
|
+
[weakSelf streamScreenshot];
|
|
72
88
|
});
|
|
73
89
|
}
|
|
74
90
|
}
|
|
75
91
|
|
|
76
92
|
- (void)streamScreenshot
|
|
77
93
|
{
|
|
78
|
-
|
|
79
|
-
|
|
94
|
+
if (!self.isStreaming) {
|
|
95
|
+
return;
|
|
96
|
+
}
|
|
97
|
+
NSUInteger framerate = FBNormalizedMjpegFramerate(FBConfiguration.mjpegServerFramerate);
|
|
98
|
+
uint64_t timerInterval = (uint64_t)(1.0 / framerate * NSEC_PER_SEC);
|
|
80
99
|
uint64_t timeStarted = clock_gettime_nsec_np(CLOCK_MONOTONIC_RAW);
|
|
81
100
|
@synchronized (self.listeningClients) {
|
|
82
101
|
if (0 == self.listeningClients.count) {
|
|
@@ -106,23 +125,41 @@ static const char *QUEUE_NAME = "JPEG Screenshots Provider Queue";
|
|
|
106
125
|
self.consecutiveScreenshotFailures = 0;
|
|
107
126
|
|
|
108
127
|
CGFloat scalingFactor = FBConfiguration.mjpegScalingFactor / 100.0;
|
|
128
|
+
__weak typeof(self) weakSelf = self;
|
|
109
129
|
[self.imageProcessor submitImageData:screenshotData
|
|
110
130
|
scalingFactor:scalingFactor
|
|
111
131
|
completionHandler:^(NSData * _Nonnull scaled) {
|
|
112
|
-
[
|
|
132
|
+
[weakSelf sendScreenshot:scaled];
|
|
113
133
|
}];
|
|
114
134
|
|
|
115
135
|
[self scheduleNextScreenshotWithInterval:timerInterval timeStarted:timeStarted];
|
|
116
136
|
}
|
|
117
137
|
|
|
118
138
|
- (void)sendScreenshot:(NSData *)screenshotData {
|
|
139
|
+
if (!self.isStreaming) {
|
|
140
|
+
return;
|
|
141
|
+
}
|
|
119
142
|
NSString *chunkHeader = [NSString stringWithFormat:@"--BoundaryString\r\nContent-type: image/jpeg\r\nContent-Length: %@\r\n\r\n", @(screenshotData.length)];
|
|
120
143
|
NSMutableData *chunk = [[chunkHeader dataUsingEncoding:NSUTF8StringEncoding] mutableCopy];
|
|
121
144
|
[chunk appendData:screenshotData];
|
|
122
145
|
[chunk appendData:(id)[@"\r\n\r\n" dataUsingEncoding:NSUTF8StringEncoding]];
|
|
123
146
|
@synchronized (self.listeningClients) {
|
|
147
|
+
if (!self.isStreaming || 0 == self.listeningClients.count) {
|
|
148
|
+
return;
|
|
149
|
+
}
|
|
150
|
+
NSUInteger clientCount = self.listeningClients.count;
|
|
124
151
|
for (GCDAsyncSocket *client in self.listeningClients) {
|
|
125
|
-
|
|
152
|
+
// Slow clients should fail/close instead of buffering indefinitely.
|
|
153
|
+
[client writeData:chunk withTimeout:FRAME_TIMEOUT tag:0];
|
|
154
|
+
}
|
|
155
|
+
self.sentFramesCount++;
|
|
156
|
+
self.sentBytesCount += chunk.length * clientCount;
|
|
157
|
+
NSUInteger framerate = FBNormalizedMjpegFramerate(FBConfiguration.mjpegServerFramerate);
|
|
158
|
+
if (0 == self.sentFramesCount % framerate) {
|
|
159
|
+
[FBLogger verboseLog:[NSString stringWithFormat:@"MJPEG stats: clients=%@ sentFrames=%@ sentBytes=%@",
|
|
160
|
+
@(clientCount),
|
|
161
|
+
@(self.sentFramesCount),
|
|
162
|
+
@(self.sentBytesCount)]];
|
|
126
163
|
}
|
|
127
164
|
}
|
|
128
165
|
}
|
|
@@ -158,4 +195,22 @@ static const char *QUEUE_NAME = "JPEG Screenshots Provider Queue";
|
|
|
158
195
|
[FBLogger log:@"Disconnected a client from screenshots broadcast"];
|
|
159
196
|
}
|
|
160
197
|
|
|
198
|
+
- (void)stopStreaming
|
|
199
|
+
{
|
|
200
|
+
self.isStreaming = NO;
|
|
201
|
+
@synchronized (self.listeningClients) {
|
|
202
|
+
NSArray<GCDAsyncSocket *> *clients = self.listeningClients.copy;
|
|
203
|
+
[self.listeningClients removeAllObjects];
|
|
204
|
+
for (GCDAsyncSocket *client in clients) {
|
|
205
|
+
[client disconnect];
|
|
206
|
+
}
|
|
207
|
+
}
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
- (void)dealloc
|
|
211
|
+
{
|
|
212
|
+
[self stopStreaming];
|
|
213
|
+
[FBLogger verboseLog:@"FBMjpegServer deallocated"];
|
|
214
|
+
}
|
|
215
|
+
|
|
161
216
|
@end
|
package/build/lib/xcodebuild.js
CHANGED
|
@@ -397,7 +397,7 @@ class XcodeBuild {
|
|
|
397
397
|
noSessionProxy.timeout = 1000;
|
|
398
398
|
try {
|
|
399
399
|
currentStatus = (await noSessionProxy.command('/status', 'GET'));
|
|
400
|
-
if (currentStatus
|
|
400
|
+
if (currentStatus?.ios?.ip) {
|
|
401
401
|
this.agentUrl = currentStatus.ios.ip;
|
|
402
402
|
}
|
|
403
403
|
this.log.debug(`WebDriverAgent information:`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"xcodebuild.js","sourceRoot":"","sources":["../../lib/xcodebuild.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"xcodebuild.js","sourceRoot":"","sources":["../../lib/xcodebuild.ts"],"names":[],"mappings":"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"}
|