【问题标题】:How to get App Groups name programmatically?如何以编程方式获取应用组名称?
【发布时间】:2017-03-17 08:55:16
【问题描述】:

我在我的应用程序中使用扩展程序。用于使用应用组在应用和扩展程序之间共享数据。如何以编程方式读取应用组名称,因此无需创建额外的配置文件来存储应用组名称。

【问题讨论】:

    标签: ios objective-c swift watchkit


    【解决方案1】:

    您只能在开发(调试模式)中使用它,entitlements 被写入应用程序包中的embedded.mobileprovision 文件中。

    当您归档.ipa 文件或将您的应用程序交付给AppStore 时,不会包含embedded.mobileprovision。

    在Debug 你可以试试这个:

    /* Swift 3 */
    
    if let path = Bundle.main.path(forResource: "YourProjectName", ofType: "entitlements") {
        let dict = NSDictionary(contentsOfFile: path)
        let appGroups: NSArray = dict?.object(forKey: "com.apple.security.application-groups") as! NSArray
    }
    

    【讨论】:

    • 所以必须对应用组名称进行硬编码才能用于生产?
    • 如果你解压你的ipa文件,你会得到一个名为'embedded.mobileprovision'的文件;命令security cms -Di embedded.mobileprovision 会告诉你应用组名。
    【解决方案2】:

    所以,正确的答案是:它不起作用。 为您的应用组名称使用静态类或常量。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-03-07
      • 2023-04-04
      • 1970-01-01
      • 2018-09-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多