手に入れることができたすべてのiOSデバイスと、XCodeに接続されたエミュレーターで問題なくアプリをテストしました。今、私はAppleから、iOS6.0.1を実行しているiPad3rdGenでクラッシュしたためにアプリが拒否されたという連絡を受けました。
クラッシュログから私は読むことができます:
0 libsystem_c.dylib 0x39421d74 strlen + 28
1 Appname 0x0000da16 +[Utilities sha256:] (Utilities.m:28)
2 Appname 0x0000dc1c +[Utilities complete256Hash:] (Utilities.m:46)
3 Appname 0x0000ea66 -[SettingController TestSettingsTapped] (SettingController.m:83)
問題は次の機能に起因しているようです。誰かが私に何が間違っているのかを指摘できますか?Appleが受けているクラッシュを再現できないため、デンマーク語用にセットアップされているすべてのテスト済みデバイスと関係がある可能性があります。
+(NSString*) sha256:(NSString *)clear{
const char *s=[clear cStringUsingEncoding:NSUTF8StringEncoding];
NSData *keyData=[NSData dataWithBytes:s length:strlen(s)];
uint8_t digest[CC_SHA256_DIGEST_LENGTH]={0};
CC_SHA256(keyData.bytes, keyData.length, digest);
NSData *out=[NSData dataWithBytes:digest length:CC_SHA256_DIGEST_LENGTH];
NSString *hash=[out description];
hash = [hash stringByReplacingOccurrencesOfString:@" " withString:@""];
hash = [hash stringByReplacingOccurrencesOfString:@"<" withString:@""];
hash = [hash stringByReplacingOccurrencesOfString:@">" withString:@""];
return hash;
}
ありがとう。