3

レビュープロセスで立ち往生しています。

Apple のレビュアーは、アプリケーションで必要なファイルに「バックアップしない」フラグを設定していないと述べています。

確かに、そのフラグでファイルをマークすることを忘れたのは初めてです。しかし、2回目はここで説明されている方法を使用しましたhttp://developer.apple.com/library/ios/#qa/qa1719/_index.html

しかし、それは機能せず、アプリは再び拒否されました。

iOS 5.1 で使用する必要があると Apple が言っている方法を使用して、デバッグと再試行を繰り返すと、ファイルは「バックアップしない」とマークされません。

- (BOOL)addSkipBackupAttributeToItemAtURL:(NSURL *)URL

{

    assert([[NSFileManager defaultManager] fileExistsAtPath: [URL path]]);



    NSError *error = nil;

    BOOL success = [URL setResourceValue: [NSNumber numberWithBool: YES]

                                  forKey: NSURLIsExcludedFromBackupKey error: &error];

    if(!success){

        NSLog(@"Error excluding %@ from backup %@", [URL lastPathComponent], error);

    }

    return success;

}

しかし、iOS 5.0.1 で使用する必要があると彼らが言う方法を使用すると、ファイルは適切にマークされ、iCloud にバックアップされません。

#import <sys/xattr.h>

- (BOOL)addSkipBackupAttributeToItemAtURL:(NSURL *)URL

{

    assert([[NSFileManager defaultManager] fileExistsAtPath: [URL path]]);



    const char* filePath = [[URL path] fileSystemRepresentation];



    const char* attrName = "com.apple.MobileBackup";

    u_int8_t attrValue = 1;



    int result = setxattr(filePath, attrName, &attrValue, sizeof(attrValue), 0, 0);

    return result == 0;

}

しかし、問題は、Apple のドキュメント ページが、このメソッドは非推奨であると述べていることです。そのため、機能する方法 (iOS 5.0.1 用の方法) を使用してアプリを再度アップロードし、同じ問題でアプリケーションを再度拒否する可能性があることを残念に思います。

したがって、ドキュメントには1つのことが書かれていますが、このことは適切に機能していません。

誰かがこの問題を解決しましたか? Apple のレビュアーは、この問題とその解決方法について何も語っていません。

4

0 に答える 0