Files

187 lines
4.1 KiB
C
Raw Normal View History

2023-12-11 19:04:30 -08:00
//
// DDUtility.h
// DingDangApp
//
// Created by 触海 on 2023/12/11.
//
#import <Foundation/Foundation.h>
@class CTCarrier;
NS_ASSUME_NONNULL_BEGIN
@interface DDUtility : NSObject
@end
2023-12-12 14:50:44 -08:00
/*==============================*/
/* App Utilities */
/*==============================*/
@interface DDUtility (App)
/**
* YYMobile-Info.plist中读取字段
* @param key
* @return
*/
+ (id)DD_ValueInPlistForKey:(NSString *)key;
/*** 获取App版本号, 从plist从读取CFBundleShortVersion */
+ (NSString *)DD_AppVersion;
/*** 获取AppBuild号, 从plist中读取CFBundleVersion */
+ (NSString *)DD_AppBuild;
/*** 当前构建出的版本在svn中的版本号 */
+ (NSString *)DD_SvnVersion;
/**
appName
@return app的名称
*/
+ (NSString *)DD_AppName;
/**
* bundle id
* @return bundle id
*/
+ (NSString *)DD_AppBundleId;
/*** 获取YYMobileFrameworkRes.bundle的URL */
+ (NSURL *)DD_URLForMobileFrameworkResourceBundle;
/*** 获取YYMobileFrameworkRes.bundle的路径 */
+ (NSString *)DD_PathForMobileFrameworkResourceBundle;
+ (BOOL)DD_AddSkipBackupAttributeToItemAtURL:(NSURL *)fileURL;
/**
* (DEBUG/RELEASE)
* @return
*/
+ (NSString *)DD_BuildType;
/*** 获取平台渠道 */
+ (NSString *)DD_GetAppSource;
/*** 是否来自appstore */
+ (BOOL)DD_IsFromAppStore;
@end
/*==============================*/
/* Carrier Utilities */
/*==============================*/
@interface DDUtility (Carrier)
/**
@return
*/
+ (NSString *)DD_DeviceUniqueIdentification;
/*** 获取运营商 */
+ (CTCarrier *)DD_Carrier;
/*** 获取运营商类型 */
+ (NSInteger)DD_CarrierIdentifier;
/*** 获取运营商名称 */
+ (NSString *)DD_CarrierName;
/**
* CTCarrier对象获取网络类型
* @param carrier - CTCarrier对象
* @return CarrierType
*/
+ (NSInteger)DD_IdentifierOfCarrier:(CTCarrier *)carrier;
@end
/*==============================*/
/* Device Utilities */
/*==============================*/
@interface DDUtility (Device)
/*** 获取modelName, 如iPhone5,2 */
+ (NSString *)DD_ModelName;
/**
@return
*/
+ (NSString*)DD_ModelType;
/*** 获取系统版本 */
+ (NSString *)DD_SystemVersion;
/*** 获取当前设备的 IDFVIDFV 在某些情况下会变,不建议将其作为设备标识 */
+ (NSString *)DD_IdentifierForVendor NS_AVAILABLE_IOS(6_0);
/**
* 使 SDK OpenUDID
* @return SDK OpenUDID
*/
+ (NSString *)DD_DeviceID;
/*** 获取当前网络状态 */
+ (NSInteger)DD_NetworkStatus;
/*** 获取当前IP地址 */
+ (NSString *)DD_IPAddress;
/**
* IP地址
* @param preferIPv4 IPv4的地址
*/
+ (NSString *)DD_IPAddress:(BOOL)preferIPv4;
/**
* Camera是否可用, available; app对相机
* 访, denied; , restriction
* @param available
* @param denied
* @param restriction
*/
+ (void)DD_CheckCameraAvailable:(void (^)(void))available denied:(void(^)(void))denied restriction:(void(^)(void))restriction;
/**
* , available; app对相册
* 访, denied; , restriction
* @param available
* @param denied
* @param restriction
*/
+ (void)DD_CheckAssetsLibrayAvailable:(void (^)(void))available denied:(void(^)(void))denied restriction:(void(^)(void))restriction;
/**
@param resultBlock block
*/
+ (void)DD_CheckMicPrivacy:(void(^)(BOOL succeed))resultBlock;
+ (NSString *)DD_MACAddresss;
+ (NSString *)DD_IDFA;
/**
* sdkimsdk所用到的appName
* @return app name
*/
+ (NSString *)DD_AppName;
/**
, iPhone6
@return , iPhone6
*/
+ (BOOL)DD_ISIphone6AndLow;
@end
2023-12-11 19:04:30 -08:00
NS_ASSUME_NONNULL_END