Приложение отклонено из-за временного разрешения, которое мне нужно для NSSavePanel

Это уже второй раз, когда мое приложение Mac было отклонено MAS. Я использую временные права, чтобы пользователь мог сохранить свой файл резервной копии приложения, созданного на его устройстве. Это ответ, который я получаю от MAS на мой отказ:

We've determined that one or more temporary entitlement exceptions requested for 
this app are not appropriate and will not be granted:

com.apple.security.temporary-exception.files.home-relative-path.read-write  / 

Очень расплывчато, и во второй раз они не говорят мне, что не так с тем, что я делаю.

Для этого я использую следующие права:

<key>com.apple.security.app-sandbox</key>
<true/>
<key>com.apple.security.files.user-selected.read-write</key>
<string>True</string>
<key>com.apple.security.temporary-exception.files.home-relative-path.read-write</key>
<array>
    <string>/</string>
</array>

И вот как я использую право:

NSSavePanel* saveSelection = [NSSavePanel savePanel];

[saveSelection setPrompt:@"Export"];
[saveSelection setMessage:NSLocalizedString(@"Save your encrypted backup file to:",@"")];
[saveSelection setNameFieldStringValue:date];

[saveSelection beginSheetModalForWindow:kDelegate.window completionHandler:^(NSInteger result) {
if (result==NSFileHandlingPanelOKButton)
    {....
    }
}

Я действительно надеюсь, что кто-то может помочь, и большое спасибо заранее!

1 ответ

Наконец-то я заработал, добавив это в NSSavePanel:

[saveSelection setAllowedFileTypes:[NSArray arrayWithObject:@"whatever"]];
[saveSelection setAllowsOtherFileTypes:NO];

Я не знаю, почему это заставило это работать, но это работает... по крайней мере, в моем приложении.

Другие вопросы по тегам