• 烦人的Facebook分享授权


    开发端授权app权限

    facebook要求提交应用到他们平台, 并且还限制100mb, 坑爹死了, 果断使用google drive分享给他们, 最開始不确定分享给他们什么样的程序包, 结果审核没通过
    这里给大家一个官方公布包的參考, 特喵的不在提交的地方着重给个链接, 挠死你
    https://developers.facebook.com/docs/ios/getting-started/advanced

    须要相应app开启 publish_actions 权限才干够分享出去:
    这里写图片描写叙述
    同一时候须要注意, 申请的话是比較麻烦, 然后设置此权限的具体信息
    这里写图片描写叙述
    然后提交应用程序, 以下就是通过模拟器打包的方式打包, 一定要依照步骤来, 普通打包对方无法測试

    模拟器中的測试:

    要注意以下几点:

    info.plist必须包括的内容, 改动info.plist用source view模式直接编辑xml文档

    • CFBundleURLTypes中必须有CFBundleURLSchemes, fb{Your Facebook App Id}须要自己手动去改, 这个地方sharesdk也告诉你加入了
        <key>CFBundleURLTypes</key>
        <array>
            <dict>
                <key>CFBundleTypeRole</key>
                <string>Editor</string>
                <key>CFBundleURLSchemes</key>
                <array>
                    <string>fb{YourFacebookAppId}</string>
                </array>
            </dict>
        </array>
    • facebook官方要求加入的信息, 和CFBundleURLTypes并列
        <key>FacebookAppID</key>
        <string>{YourFacebookAppId}</string>
        <key>FacebookDisplayName</key>
        <string>{YourFacebookAppName}</string>
    • 改动ShareSDK针对facebook授权方式改为Web方式, 给facebook发完再改回来, 模拟器上facebook是没有预装, 可是给真机是SSO推荐:
    [appInfo SSDKSetupFacebookByAppKey:@"{YourFacebookAppId}"
                                                   appSecret:@"{YourFacebookAppSecret}"
                                                    authType:SSDKAuthTypeWeb];
    • HTTP訪问权限, 相同和CFBundleURLTypes并列
      不开启在模拟器中会出现 NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9802)的错误
        <key>NSAppTransportSecurity</key>
        <dict>
            <key>NSAllowsArbitraryLoads</key>
            <true/>
        </dict>

    模拟环境程序打包:

    原理就是你用模拟器生成, 缓存的文件打包给对方, 命令行这种
    尽管非常长 可是须要改的仅仅有{}的部分

    ditto -ck --sequesterRsrc --keepParent `ls -1 -d -t {你模拟器缓存文件路径}/{你游戏名称}.app | head -n 1` ~/Desktop/{打包到桌面的程序名}.zip

    模拟器路径查找, 找这个位置:

    /Users/{username}/Library/Developer/Xcode/DerivedData/

    关闭xcode, 并全选,清空里面全部缓存项目
    打开xcode, 通过模拟器编译生成出来一个和项目有关联的文件夹

    /Users/{username}/Library/Developer/Xcode/DerivedData/{project名+随机字母}/Build/Products/Debug-iphonesimulator/{project名}.app

    找到之后回到上面代码编译一下提交就好了, 坑爹的facebook审核

    測试自己的打包app:

    • 下载nodejs环境 for mac
    • 安装环境(node-v4.1.1.pkg)到你的系统
    • 下载測试程序 ios-sim
    • 解压缩
    • 用终端找到这个文件夹
    • 运行 xcrun simctl list devices 列出xcodeproject下创建模拟器列表
    • 运行 sudo npm install ios-sim -g
    • ios-sim 能够直接当系统命令使用了
    • 运行 sudo ios-sim showdevicetypes 从中选择设备名称

    iPhone-4s, 9.0
    iPhone-5, 9.0
    iPhone-5s, 9.0
    iPhone-6, 9.0
    iPhone-6-Plus, 9.0
    iPhone-6s, 9.0
    iPhone-6s-Plus, 9.0
    iPad-2, 9.0
    iPad-Retina, 9.0
    iPad-Air, 9.0
    iPad-Air-2, 9.0
    Apple-Watch-38mm, watchOS 2.0
    Apple-Watch-42mm, watchOS 2.0

    • 运行 sudo ios-sim --devicetypeid iPhone-6 launch {yourapp}.app
    • 默认不选择设备会直接默认iWatch模拟器运行, 会无法运行

    打包測试后没问题, 就能够发给facebook了

  • 相关阅读:
    bzoj 2882: 工艺 后缀自动机
    bzoj 2002: 弹飞绵羊 Link-Cut-Tree
    bzoj 3881: [Coci2015]Divljak AC自动机
    bzoj 2553: [BeiJing2011]禁忌 AC自动机+矩阵乘法
    bzoj 3172: [Tjoi2013]单词 fail树
    bzoj 2434: 阿狸的打字机 fail树+离线树状数组
    bzoj 1030: 文本生成器 AC自动机+dp
    SAS FORMAT 逻辑库存储 【输出格式 没有找到或无法加载】解决方法
    PROC UNIVARIATE 简单示例
    SAS ODS GRAPHICS SGPLOT 画图 指存放定路径、名称、指定格式
  • 原文地址:https://www.cnblogs.com/blfbuaa/p/7040769.html
Copyright © 2020-2023  润新知