MobileProvision
示例
要运行示例项目,请克隆仓库,然后首先从 Example 目录运行 pod install
。
使用 Xcode 打开 Example/MobileProvision.xcworkspace 文件。在目标 - 通用中修改配置文件。
在您的 iOS 设备上运行目标(MobileProvision_Example)(不要在模拟器上运行)。
或在您的 mac 上运行目标(MobileProvisionCLI)。(在 main.m 中修改路径)
需求
安装
MobileProvision 通过 CocoaPods 提供。要安装它,只需将以下行添加到您的 Podfile 中
pod 'MobileProvision' # for osx and ios
导入头文件
#import <MobileProvision/MobileProvision.h>
使用方法
第一步:创建一个 MPProvision
实例。
// for osx & ios
MPProvision *provision = [MPProvision provisionWithContentsOfFile:@"/path/to/*.mobileprovision"];
// for ios
MPProvision *provision = [MPProvision embeddedProvision]; // embedded.mobileprovision
第二步:读取信息
(NSString *)provision.AppIDName;
(NSArray<NSString *> *)provision.ApplicationIdentifierPrefix;
(NSDate *)provision.CreationDate;
(NSDate *)provision.ExpirationDate;
(NSString *)provision.Name;
(NSArray<NSString *> *)provision.Platform;
(BOOL)provision.ProvisionsAllDevices;
(NSArray<NSString *> *)provision.ProvisionedDevices;
(NSArray<NSString *> *)provision.TeamIdentifier;
(NSString *)provision.TeamName;
(NSUInteger )provision.TimeToLive;
(NSString *)provision.UUID;
(NSUInteger)provision.Version;
第三步:读取权限
MPEntitlements *entitlements = provision.Entitlements;
(NSDictionary *)entitlements.JSON;
最后:读取证书
MPCertificate *certificate = provision.DeveloperCertificates.firstObject;
(NSInteger )certificate.version;
(NSString *)certificate.name;
(NSString *)certificate.serialNumber;
(NSDate *)certificate.validity.notBefore;
(NSDate *)certificate.validity.notAfter;
// Developer
(NSString *)certificate.subject.name;
(NSString *)certificate.subject.unitName;
(NSString *)certificate.subject.commonName;
(NSString *)certificate.subject.countryName;
// Apple Inc
(NSString *)certificate.issuer.name;
(NSString *)certificate.issuer.unitName;
(NSString *)certificate.issuer.commonName;
(NSString *)certificate.issuer.countryName;
(NSData *)certificate.signature;
// Hash
// SHA1 can be used by codesign CLI to sign an App.
// It equals to the id in `$ security find-identity -p codesigning`
(NSString *)certificate.fingerprints.SHA1;
(NSString *)certificate.fingerprints.SHA256;
获取类型
类型 | get-task-allow | beta-reports-active | 设备 | 所有设备 |
---|---|---|---|---|
开发 | 1 | 0 | 数组 | 0 |
adhoc | 0 | 0 | 数组 | 0 |
appstore | 0 | 1 | nil | 0 |
内部 | 0 | 0 | nil | 1 |
(MPProvisionType)provision.type;
预览
作者
许可协议
MobileProvision 可在 MIT 许可协议下使用。更多详情请见 LICENSE 文件。