Ich habe iOS 11 und dieser Code wird mein installiert benutzerdefiniertes Zertifikat nicht erkennen:Detect installierte Zertifikat auf iOS 11 Gerät
- (BOOL)IsMobileConfigInstalled {
NSString *certPath = [[NSBundle mainBundle] pathForResource:@"cert" ofType:@"der"];
NSData *certData = [NSData dataWithContentsOfFile:certPath];
SecCertificateRef cert = NULL;
if ([certData length]) {
cert = SecCertificateCreateWithData(NULL, (__bridge CFDataRef) certData);
if (cert != NULL) {
CFStringRef certSummary = SecCertificateCopySubjectSummary(cert);
NSString *summaryString = [[NSString alloc] initWithString:(__bridge NSString *) certSummary];
CFRelease(certSummary);
}
}
SecPolicyRef policy = SecPolicyCreateBasicX509();
SecTrustRef trust;
OSStatus err = SecTrustCreateWithCertificates((__bridge CFArrayRef) @[
(__bridge id) cert
], policy, &trust);
SecTrustResultType trustResult = (SecTrustResultType) -1;
err = SecTrustEvaluate(trust, &trustResult);
CFRelease(trust);
CFRelease(policy);
CFRelease(cert);
return kSecTrustResultUnspecified == trustResult;
}
Was ist das Problem?
Das Problem ist, dass Sie nicht erklären, was es soll mach und was es stattdessen tut. Das andere Problem ist, dass Sie dies zuerst auf iOS 10 versuchen sollten. – deadbeef
@deadbeef natürlich in ios 10 es funktioniert. Und schon diese App veröffentlicht ... – MeGaPk