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:@"" options:NSCaseInsensitiveSearch  range:NSMakeRange(0, path.length)];
        }
        
        //獲取在存儲(chǔ)在本地的文件路徑就可以在自己需要顯示的頁面加載文件顯示了
    }
    
    return YES;
}
//當(dāng)文件名為中文是,解決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
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容

  • 最近公司有這樣需求:當(dāng)用戶用微信,qq或者其他app接Word,Ecxel,PDF文件時(shí),選擇打開方式時(shí),自己的a...
    YannChee閱讀 3,442評(píng)論 0 5
  • 到這個(gè)月,參加工作正好一年,期間忙于各種需求,雖說業(yè)務(wù)熟悉了,但是技術(shù)方面還是有待提高,尤其對(duì)證書那一塊不太熟悉,...
    等開會(huì)閱讀 1,903評(píng)論 0 12
  • 《滿江紅·酒醉天涯》 剎那芳華,滴血淚,蒼蒼朽木。忍嘆息,是非成敗,孰能辨分。三十年縱橫誰抗?八萬夜雪月風(fēng)光。更無...
    慶州山人閱讀 311評(píng)論 3 1
  • 每次說道安全感這個(gè)詞,腦子里總會(huì)飛出彈幕“還用說嗎?是錢呀!” 是呀,有了錢就不會(huì)因?yàn)檠鬯苜F,忍著不敢流淚了;有...
    胭脂飛飛閱讀 444評(píng)論 2 1
  • 小城忽下千層雪,一夜飛花都凍絕。惱人還是晚來風(fēng),入夢依然檐上鐵。 紅樓推出窗前月,十二欄桿都拍徹。為誰題得數(shù)行詩,...
    倚劍白云天閱讀 380評(píng)論 0 1