objective-c - 无法检查 iPhone 上是否存在配置文件

标签 objective-c ios security xcode4.5

我正在尝试检查 iPhone 上是否存在配置文件,我找到了以下有关如何操作的教程: http://alex.tapmania.org/2011/09/check_conf_prof_is_installed_ios.html

对我来说,它转化为以下代码:

NSString * certPath = [[NSBundle mainBundle] pathForResource:@"certificate" ofType:@"mobileconfig"];
    SecTrustRef trust;
    NSData * certData = [NSData dataWithContentsOfFile:certPath];
    SecCertificateRef cert = SecCertificateCreateWithData(NULL, (__bridge CFDataRef) certData);
    SecPolicyRef policy = SecPolicyCreateBasicX509();
    OSStatus err = SecTrustCreateWithCertificates((__bridge CFArrayRef) [NSArray arrayWithObject:(__bridge id)cert],policy, &trust);

    SecTrustResultType  trustResult = -1;
    err = SecTrustEvaluate(trust, &trustResult);


    if (trustResult ==4) {
        label.text=@"Profile installed";
    }
    else{
        label.text=@"Profile not installed";
    }

应用程序在以下行崩溃:

OSStatus err = SecTrustCreateWithCertificates((__bridge CFArrayRef) [NSArray arrayWithObject:(__bridge id)cert],policy, &trust);

我还注意到在这个阶段 cert 没有分配任何内存。

怎么了?这是正确的程序吗?如果没有,是否还有其他更有益的教程?

谢谢!

最佳答案

我不确定您为什么要通过代码执行此操作。已经有一些 Mac OSx 应用程序可以为您执行此操作。如果您打算做的事情不需要涉及代码,您可以从这个 Apple link 下载这个名为 iPhone 配置实用程序 的 Mac 应用程序。 .具有许多功能,包括配置/查看/等安装在 iPhone 上的配置文件。

关于objective-c - 无法检查 iPhone 上是否存在配置文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13291846/

相关文章:

objective-c - copyWithZone 设置实例变量?

objective-c - 在 View Controller 中使用导航 Controller

ios - 将NSString传递给UInt8 []

java - 如何在 Java 中将 key 归零?

javascript - Nashorn/jjs 安全 : executing a user's script on server side

objective-c - 10.5 中的 IOBluetoothHostContoller

ios - 如何获取 UITableView Label 文本字符串 - Custom Cell

iphone - 将NSData转换为字节数组

c# - .NET 程序集在网络驱动器上以部分信任的方式运行,但所有其他程序集以完全信任的方式运行

iphone - TiledMaps 和真实对象