gpt4 book ai didi

ios - UIDocumentInteractionController 禁止在某些应用程序中打开

转载 作者:可可西里 更新时间:2023-11-01 06:10:31 24 4
gpt4 key购买 nike

我目前正在使用 UIDocumentInteractionController 来实现打开功能。当它打开时,它会显示设备上可以处理该文件类型的所有应用程序的列表。

有没有办法禁止我的应用程序向特定应用程序发送文档,即使它们支持该文件类型?例如 - 如果我在我的应用程序中打开了一个 PDF 文件并且 iBooks 在 iPad 上,如果我点击 UIDocumentInteractionController 中的 iBooks 图标,我不希望它将它发送到应用程序。

理想情况下 - 我认为这是建立黑名单(或白名单)。例如,这样做会很棒:

   - (void) documentInteractionController: (UIDocumentInteractionController *) controller willBeginSendingToApplication: (NSString *) application {


// if app is blacklisted
if ([application isEqualToString:@"com.schimera.WebDAVNavigator"]) {
[self.interactionController dismissMenuAnimated:YES];
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"FAIL" message:@"NO" delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil];
[alert show];

return
}
}

然而,有了这个,文档仍然会被发送到应用程序,即使它是“黑名单”。

这种方法是否可行?

干杯!

最佳答案

如果应用被列入黑名单,请将 UIDocumentInteractionController 的 URL 更改为无效值。在方法 -[UIDocumentInteractionControllerDelegate documentInteractionController: willBeginSendingToApplication:] 中。

-(void)documentInteractionController:(UIDocumentInteractionController *)controller willBeginSendingToApplication:(NSString *)application
{
if([application isEqualToString:@"com.evilcorp.badapp"){
controller.URL = nil;
}
}

关于ios - UIDocumentInteractionController 禁止在某些应用程序中打开,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16283595/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com