【问题标题】:iOS storing SQLite databaseiOS 存储 SQLite 数据库
【发布时间】:2021-09-30 12:55:03
【问题描述】:

我正在开发一个使用 SQLite 数据库的 iPad 应用程序。我在开发中已经走了很远,现在我正在尝试解决如何配置应用程序的问题,以便可以在文件应用程序中看到它在 iPad 上的数据库。我有一个名为“Accounts2”的应用程序,在 iPad 上的文件中,我可以在自己的文件夹中看到它的数据库。

到目前为止,我已将 “应用程序支持 iTunes 文件共享” 添加到我的 info.plist 中,我可以在 iTunes 中看到该文件并将该文件拖到我的本地磁盘上。现在我想了解需要进行哪些更改才能在“文件”应用中看到数据库文件。

另外,在应用程序中,我将数据库的位置定义为:

let databaseFolder = (NSSearchPathForDirectoriesInDomains(.documentDirectory, .userDomainMask, true)[0] as NSString) as String

使用在 iPad 上运行应用程序的断点我看到上面的路径已转换为以下路径

/var/mobile/Containers/Data/Application/C3079EB8-2190-4161-A5E4-ABFFB3374393/Documents

这就是我的数据库所在的位置。

我想知道是否需要更改该位置以及可能的位置... 在文件中,我看到如下文件夹,我想在其中看到我的应用程序..

【问题讨论】:

  • 您是否也添加了Supports opening documents in place / YES 键?
  • 感谢您的提示...我已将其添加到我的 plist 中,但该文件尚未出现在“文件”中。我认为这可能与我在代码中指向的位置有关
  • 用一个新项目试试... 为您的视图控制器使用此代码:pastebin.com/nBGTDAcR ... 运行应用程序,看看它是否显示在文件应用程序中/
  • 您好,抱歉,我只在我的应用程序中使用 SwiftUI,我对 UIKit 的体验非常有限。不过我会尝试解决这个问题...
  • 我通过创建一个我调用的 func 将代码放入我的应用程序,并在断点处给了我一个 file:///var/mobile/Containers/Data/Application/638A2E53-36F7 的文件 URL -4C72-868D-262BA2334645/Documents/message.txt 并在 iPad 上执行后,我没有在“文件”应用程序中看到 messsages.txt。在我的 info.plist 我有 UIFileSharingEnabledLSSupportsOpeningDocumentsInPlaceUISupportsDocumentBrowser

标签: ios swift sqlite


【解决方案1】:

感谢 DonMag 的上述建议,我最终将他建议的密钥添加到我的 info.plist 中,该文件现在出现在“Files.app”中。我加在一起的键是:

<key>UIFileSharingEnabled</key>
<true/>
<key>LSSupportsOpeningDocumentsInPlace</key>
<true/>
<key>UISupportsDocumentBrowser</key>
<true/>

请参阅下面的ManagingYourMoney 图标:

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-10-10
    • 1970-01-01
    • 2023-03-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多