[英]How to find SQLite db on iPhone 6s Simulator in Macbook?
我正在模擬器中搜索我的SQLLite數據庫。
基於ActivityMonitor,我可以獲取我的應用程序的文件夾路徑。
/用戶/ MyMacBook / Library / Developer / CoreSimulator / Devices / A4170C16-A10B-4B48-9C7B-2A310F68B35F / data / Containers / Bundle / Application / F6C6772C-021A-4B27-874D-071B402DDBCC /
雖然我找不到SQLite數據庫。 我從事VS 2015 Xamarin項目。
我應該如何在模擬器上找到SQLite數據庫?
通過使用您的appDelegate
中的代碼在`didFinishLaunchingWithOptions'中找到sqlite文件的位置
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
print(FileManager.default.urls(for: .documentDirectory, in: .userDomainMask))
}
每次運行該應用程序時,您都可以在Xcode控制台中找到打印的位置。
我正在使用應用程序simMagnifier查看SQLite文件
默認情況下 ,大多數SQLite
庫/框架會將Sqlite文件放在.app
的根目錄中。
如果要為SQLite文件提供路徑和文件名,則在建立SQLite連接時,請遵循該路徑。
sqlite-net
示例: var db = new SQLiteConnection("StackOverflow.sqlite");
cd Library/Developer/CoreSimulator/Devices
find $PWD -name "StackOverflow.sqlite" -print
/Users/sushi/Library/Developer/CoreSimulator/Devices/1EB2B821-E86B-4E9A-9814-1BBEF8FF1AA1/data/Containers/Bundle/Application/11BE399A-F802-4410-8163-32F5A90EB2FF/SQLiteLocation.app/StackOverflow.sqlite
Path.GetTempPath
示例: var db = new SQLiteConnection(Path.Combine(Path.GetTempPath(), "StackOverflow.sqlite"));
cd Library/Developer/CoreSimulator/Devices
find $PWD -name "StackOverflow.sqlite" -print
/Users/sushi/Library/Developer/CoreSimulator/Devices/1EB2B821-E86B-4E9A-9814-1BBEF8FF1AA1/data/Containers/Data/Application/EED6E9CE-7437-48DD-904D-5F9D5E8AC78F/tmp/StackOverflow.sqlite
我過去常常使用SimPholders(但已付費)。 我找到了這個名為Open Sim的免費開源替代方案。 它可以讓您瀏覽模擬器上應用程序的目錄。 這使得在Xamarin應用程序中查找sqlite db非常容易,然后您只需要一個sqlite查看器即可打開實際數據庫。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.