Rename AppRTCDemo on Android and iOS to AppRTCMobile
The purpose is to make it clearer it is a mobile application. BUG=webrtc:6359 NOPRESUBMIT=true Review-Url: https://codereview.webrtc.org/2343403002 Cr-Commit-Position: refs/heads/master@{#14356}
This commit is contained in:
@ -1,38 +0,0 @@
|
||||
/*
|
||||
* Copyright 2014 The WebRTC Project Authors. All rights reserved.
|
||||
*
|
||||
* Use of this source code is governed by a BSD-style license
|
||||
* that can be found in the LICENSE file in the root of the source
|
||||
* tree. An additional intellectual property rights grant can be found
|
||||
* in the file PATENTS. All contributing project authors may
|
||||
* be found in the AUTHORS file in the root of the source tree.
|
||||
*/
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
|
||||
@interface NSDictionary (ARDUtilites)
|
||||
|
||||
// Creates a dictionary with the keys and values in the JSON object.
|
||||
+ (NSDictionary *)dictionaryWithJSONString:(NSString *)jsonString;
|
||||
+ (NSDictionary *)dictionaryWithJSONData:(NSData *)jsonData;
|
||||
|
||||
@end
|
||||
|
||||
@interface NSURLConnection (ARDUtilities)
|
||||
|
||||
// Issues an asynchronous request that calls back on main queue.
|
||||
+ (void)sendAsyncRequest:(NSURLRequest *)request
|
||||
completionHandler:(void (^)(NSURLResponse *response,
|
||||
NSData *data,
|
||||
NSError *error))completionHandler;
|
||||
|
||||
// Posts data to the specified URL.
|
||||
+ (void)sendAsyncPostToURL:(NSURL *)url
|
||||
withData:(NSData *)data
|
||||
completionHandler:(void (^)(BOOL succeeded,
|
||||
NSData *data))completionHandler;
|
||||
|
||||
@end
|
||||
|
||||
NSInteger ARDGetCpuUsagePercentage();
|
||||
|
||||
@ -1,128 +0,0 @@
|
||||
/*
|
||||
* Copyright 2014 The WebRTC Project Authors. All rights reserved.
|
||||
*
|
||||
* Use of this source code is governed by a BSD-style license
|
||||
* that can be found in the LICENSE file in the root of the source
|
||||
* tree. An additional intellectual property rights grant can be found
|
||||
* in the file PATENTS. All contributing project authors may
|
||||
* be found in the AUTHORS file in the root of the source tree.
|
||||
*/
|
||||
|
||||
#import "ARDUtilities.h"
|
||||
|
||||
#import <mach/mach.h>
|
||||
|
||||
#import "WebRTC/RTCLogging.h"
|
||||
|
||||
@implementation NSDictionary (ARDUtilites)
|
||||
|
||||
+ (NSDictionary *)dictionaryWithJSONString:(NSString *)jsonString {
|
||||
NSParameterAssert(jsonString.length > 0);
|
||||
NSData *data = [jsonString dataUsingEncoding:NSUTF8StringEncoding];
|
||||
NSError *error = nil;
|
||||
NSDictionary *dict =
|
||||
[NSJSONSerialization JSONObjectWithData:data options:0 error:&error];
|
||||
if (error) {
|
||||
RTCLogError(@"Error parsing JSON: %@", error.localizedDescription);
|
||||
}
|
||||
return dict;
|
||||
}
|
||||
|
||||
+ (NSDictionary *)dictionaryWithJSONData:(NSData *)jsonData {
|
||||
NSError *error = nil;
|
||||
NSDictionary *dict =
|
||||
[NSJSONSerialization JSONObjectWithData:jsonData options:0 error:&error];
|
||||
if (error) {
|
||||
RTCLogError(@"Error parsing JSON: %@", error.localizedDescription);
|
||||
}
|
||||
return dict;
|
||||
}
|
||||
|
||||
@end
|
||||
|
||||
@implementation NSURLConnection (ARDUtilities)
|
||||
|
||||
+ (void)sendAsyncRequest:(NSURLRequest *)request
|
||||
completionHandler:(void (^)(NSURLResponse *response,
|
||||
NSData *data,
|
||||
NSError *error))completionHandler {
|
||||
// Kick off an async request which will call back on main thread.
|
||||
[NSURLConnection sendAsynchronousRequest:request
|
||||
queue:[NSOperationQueue mainQueue]
|
||||
completionHandler:^(NSURLResponse *response,
|
||||
NSData *data,
|
||||
NSError *error) {
|
||||
if (completionHandler) {
|
||||
completionHandler(response, data, error);
|
||||
}
|
||||
}];
|
||||
}
|
||||
|
||||
// Posts data to the specified URL.
|
||||
+ (void)sendAsyncPostToURL:(NSURL *)url
|
||||
withData:(NSData *)data
|
||||
completionHandler:(void (^)(BOOL succeeded,
|
||||
NSData *data))completionHandler {
|
||||
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url];
|
||||
request.HTTPMethod = @"POST";
|
||||
request.HTTPBody = data;
|
||||
[[self class] sendAsyncRequest:request
|
||||
completionHandler:^(NSURLResponse *response,
|
||||
NSData *data,
|
||||
NSError *error) {
|
||||
if (error) {
|
||||
RTCLogError(@"Error posting data: %@", error.localizedDescription);
|
||||
if (completionHandler) {
|
||||
completionHandler(NO, data);
|
||||
}
|
||||
return;
|
||||
}
|
||||
NSHTTPURLResponse *httpResponse = (NSHTTPURLResponse *)response;
|
||||
if (httpResponse.statusCode != 200) {
|
||||
NSString *serverResponse = data.length > 0 ?
|
||||
[[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding] :
|
||||
nil;
|
||||
RTCLogError(@"Received bad response: %@", serverResponse);
|
||||
if (completionHandler) {
|
||||
completionHandler(NO, data);
|
||||
}
|
||||
return;
|
||||
}
|
||||
if (completionHandler) {
|
||||
completionHandler(YES, data);
|
||||
}
|
||||
}];
|
||||
}
|
||||
|
||||
@end
|
||||
|
||||
NSInteger ARDGetCpuUsagePercentage() {
|
||||
// Create an array of thread ports for the current task.
|
||||
const task_t task = mach_task_self();
|
||||
thread_act_array_t thread_array;
|
||||
mach_msg_type_number_t thread_count;
|
||||
if (task_threads(task, &thread_array, &thread_count) != KERN_SUCCESS) {
|
||||
return -1;
|
||||
}
|
||||
|
||||
// Sum cpu usage from all threads.
|
||||
float cpu_usage_percentage = 0;
|
||||
thread_basic_info_data_t thread_info_data = {};
|
||||
mach_msg_type_number_t thread_info_count;
|
||||
for (size_t i = 0; i < thread_count; ++i) {
|
||||
thread_info_count = THREAD_BASIC_INFO_COUNT;
|
||||
kern_return_t ret = thread_info(thread_array[i],
|
||||
THREAD_BASIC_INFO,
|
||||
(thread_info_t)&thread_info_data,
|
||||
&thread_info_count);
|
||||
if (ret == KERN_SUCCESS) {
|
||||
cpu_usage_percentage +=
|
||||
100.f * (float)thread_info_data.cpu_usage / TH_USAGE_SCALE;
|
||||
}
|
||||
}
|
||||
|
||||
// Dealloc the created array.
|
||||
vm_deallocate(task, (vm_address_t)thread_array,
|
||||
sizeof(thread_act_t) * thread_count);
|
||||
return lroundf(cpu_usage_percentage);
|
||||
}
|
||||
Reference in New Issue
Block a user