zoukankan      html  css  js  c++  java
  • 文件“选择其它应用打开”及文件共享功能

    一:选择其它应用打开

    如图:可以将QQ或微信的zip文件拷贝到第三方App的沙盒中,Document文件夹下,方便用户操作使用

    1:具体操作将下面Code添加到info.plish文件里面

    <key>CFBundleDocumentTypes</key>
    
        <array>
    
            <dict>
    
                <key>CFBundleTypeIconFiles</key>
    
                <array>
    
                    <string>icon-hex</string>
    
                    <string>icon-hex@2x</string>
    
                </array>
    
                <key>CFBundleTypeName</key>
    
                <string>Distribution Packet (ZIP)</string>
    
                <key>CFBundleTypeRole</key>
    
                <string>Viewer</string>
    
                <key>LSHandlerRank</key>
    
                <string>Default</string>
    
                <key>LSItemContentTypes</key>
    
                <array>
    
                    <string>com.pkware.zip-archive</string>
    
                </array>
    
            </dict>
    
            <dict>
    
            <key>CFBundleTypeIconFiles</key>
    
           <array>
    
           <string>icon_22x29</string>
    
           <string>icon_44x58</string>
    
           <string>icon_64x64</string>
    
           <string>icon_320x320</string>
    
           </array>
    
           <key>CFBundleTypeName</key>
    
           <string>allFiles</string>
    
           <key>LSHandlerRank</key>
    
           <string>Owner</string>
    
           <key>LSItemContentTypes</key>
    
           <array>
    
           <string>public.data</string>
    
           </array>
    
           </dict>
    
        </array>

    具体原理可以参考:(转发SeraZheng)https://www.jianshu.com/p/88a08d66894f 

    二:文件分享

          PS:将本地文件分享到QQ或微信中,一般文件格式需要压缩包

          

      //分享文件
    NSURL *url = [NSURL fileURLWithPath:myFilePath];//需要打开的文件url //在这里呢 如果想分享图片 就把图片添加进去 文字什么的通上 NSArray *activityItems = @[url]; UIActivityViewController *activityVC = [[UIActivityViewController alloc]initWithActivityItems:activityItems applicationActivities:nil]; //不出现在活动项目 activityVC.excludedActivityTypes = @[UIActivityTypePrint, UIActivityTypeCopyToPasteboard,UIActivityTypeAssignToContact,UIActivityTypeSaveToCameraRoll,UIActivityTypeMail]; [self presentViewController:activityVC animated:YES completion:nil]; // 分享之后的回调 activityVC.completionWithItemsHandler = ^(UIActivityType _Nullable activityType, BOOL completed, NSArray * _Nullable returnedItems, NSError * _Nullable activityError) { if (completed){ //分享 成功 NSLog(@"completed"); }else{ //分享 取消 NSLog(@"cancled"); } };

       

  • 相关阅读:
    Mac开发——设置关闭窗口之后点击Dock中的图标可以再次打开窗口
    添加学院的 Exchange邮箱到手持设备中
    黑苹果 装SVN工具 cornerstone无法打开解决办法——网卡内建
    解决cocos2dx在Xcode中运行时报:convert: iCCP: known incorrect sRGB profile 的问题
    Lua中的正则表达式的使用
    C++11 标准新特性:Defaulted 和 Deleted 函数
    HTML5基础
    第一本书考试错题
    字符串
    带参数的方法
  • 原文地址:https://www.cnblogs.com/nelsen-chen/p/8384224.html
Copyright © 2011-2022 走看看