iOS-为自己App添加文件支持类型

用自己的App打开其他App不支持的文件如下效果图:

Paste_Image.png

上图用到的界面用到的类是 UIDocumentInteractionController

iOS添加支持打开的文件类型步骤两种方式为1、2如下图

Paste_Image.png

Paste_Image.png

在自己App中获取文件

如下代码:

- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation
{
    NSLog(@"url = %@",url);
    if (url != nil) {
        NSString *path = [url absoluteString];
        path = [self URLDecodedString:path];
        NSMutableString *string = [[NSMutableString alloc] initWithString:path];
        if ([path hasPrefix:@"file://"]) {
            [string replaceOccurrencesOfString:@"file://" withString:[@""](https://my.oschina.net/u/2433434) options:NSCaseInsensitiveSearch  range:NSMakeRange(0, path.length)];
        }
        
        //获取在存储在本地的文件路径就可以在自己需要显示的页面加载文件显示了
    }
    
    return YES;
}
//当文件名为中文是,解决url编码问题
-(NSString *)URLDecodedString:(NSString *)str
{
    NSString *decodedString=(__bridge_transfer NSString *)CFURLCreateStringByReplacingPercentEscapesUsingEncoding(NULL, (__bridge CFStringRef)str, CFSTR(""), CFStringConvertNSStringEncodingToEncoding(NSUTF8StringEncoding));
    NSLog(@"decodedString = %@",decodedString);
    return decodedString;
}
官方文档地地址及部分截图

https://developer.apple.com/library/content/documentation/Miscellaneous/Reference/UTIRef/Articles/System-DeclaredUniformTypeIdentifiers.html#//apple_ref/doc/uid/TP40009259-SW1

Paste_Image.png

转载于:https://my.oschina.net/hehuiqi/blog/1590311

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值