jiti-meet/ios/sdk/src/AppInfo.m

106 lines
2.9 KiB
Mathematica
Raw Normal View History

/*
* Copyright @ 2017-present 8x8, Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#import <AVFoundation/AVFoundation.h>
#import <React/RCTBridgeModule.h>
#import <React/RCTLog.h>
#import "InfoPlistUtil.h"
@interface AppInfo : NSObject<RCTBridgeModule>
@end
@implementation AppInfo
RCT_EXPORT_MODULE();
+ (BOOL)requiresMainQueueSetup {
return NO;
}
- (NSDictionary *)constantsToExport {
2017-09-27 16:01:27 +00:00
NSDictionary<NSString *, id> *infoDictionary
= [[NSBundle mainBundle] infoDictionary];
// calendarEnabled
2022-08-01 15:15:59 +00:00
BOOL calendarEnabled = NO;
#if !defined(JITSI_MEET_SDK_LITE)
calendarEnabled = infoDictionary[@"NSCalendarsUsageDescription"] != nil;
#endif
// name
2017-09-27 16:01:27 +00:00
NSString *name = infoDictionary[@"CFBundleDisplayName"];
if (name == nil) {
name = infoDictionary[@"CFBundleName"];
if (name == nil) {
name = @"";
}
}
// sdkBundlePath
NSString *sdkBundlePath = [[NSBundle bundleForClass:self.class] bundlePath];
// version
NSString *version = infoDictionary[@"CFBundleShortVersionString"];
if (version == nil) {
2017-09-27 16:01:27 +00:00
version = infoDictionary[@"CFBundleVersion"];
if (version == nil) {
version = @"";
}
}
2022-08-01 15:15:59 +00:00
// SDK version
NSDictionary<NSString *, id> *sdkInfoDictionary
= [[NSBundle bundleForClass:self.class] infoDictionary];
NSString *sdkVersion = sdkInfoDictionary[@"CFBundleShortVersionString"];
if (sdkVersion == nil) {
sdkVersion = sdkInfoDictionary[@"CFBundleVersion"];
if (sdkVersion == nil) {
sdkVersion = @"";
}
}
// build number
NSString *buildNumber = infoDictionary[@"CFBundleVersion"];
if (buildNumber == nil) {
buildNumber = @"";
}
2022-08-01 15:15:59 +00:00
// google services (sign in)
BOOL isGoogleServiceEnabled = [InfoPlistUtil containsRealServiceInfoPlistInBundle:[NSBundle mainBundle]];
2022-08-01 15:15:59 +00:00
// lite SDK
BOOL isLiteSDK = NO;
#if defined(JITSI_MEET_SDK_LITE)
isLiteSDK = YES;
#endif
2017-09-27 16:01:27 +00:00
return @{
@"calendarEnabled": [NSNumber numberWithBool:calendarEnabled],
@"buildNumber": buildNumber,
2022-08-01 15:15:59 +00:00
@"isLiteSDK": [NSNumber numberWithBool:isLiteSDK],
2017-09-27 16:01:27 +00:00
@"name": name,
@"sdkBundlePath": sdkBundlePath,
2022-08-01 15:15:59 +00:00
@"sdkVersion": sdkVersion,
@"version": version,
@"GOOGLE_SERVICES_ENABLED": [NSNumber numberWithBool:isGoogleServiceEnabled]
2017-09-27 16:01:27 +00:00
};
};
@end