擔心的是保證與編譯到iPhone應用程序的Sqlite頭文件的兼容性。如果在編譯時使用的頭文件來自更新的版本,那麼安裝在iPhone上的動態庫會怎樣?這可能是由於應用程序運行在較舊或較新的iPhone操作系統版本上,因此該應用程序是使用該操作系統構建的。在iPhone上使用Sqlite動態庫是否安全?或者我們應該總是靜態鏈接。順便說一句:寧可不使用核心數據。是否與iPhone上的Sqlite庫安全地動態鏈接?
1
A
回答
0
SQLite對於api兼容性非常小心。我認爲有一些非常老的apis被標記爲不推薦使用,但是AFAIK仍然可以被調用。這就是說,爲什麼不包括合併?
0
sqlite文檔似乎建議檢查頭文件版本是否與庫版本相同:http://www.sqlite.org/c3ref/libversion.html。擔心,因爲它似乎並沒有提供一個合同/保證事情將繼續在各個版本上工作。除了棄用之外,還可能存在其他類型的不兼容性,關於可能導致崩潰的行爲或對象大小。至於合併,將增加680K左右的應用程序。對於移動應用程序來說非常大
0
首先,iPhone環境由Apple嚴格控制,因此您不必擔心設備上安裝的各種SQLite庫。其次,當你使用Xcode鏈接到一個庫時,你可以選擇鏈接到sqlite,sqlite3,sqlite3.6等。這樣,如果你使用的是一個功能,並且不能使用3.6以前的任何東西,你可以在您的應用程序中指定。第三,SQLite是一個穩定的項目,你可以相信作者不會在沒有警告的情況下對API做出根本性的改變。如果你連接到sqlite3,你應該是安全的,除非你做了一些非常奇怪的事情。第四,如果你正在做一些非常奇怪的事情,那依賴於特定版本的SQLite的怪癖,那麼你應該靜態地鏈接到庫或者停止做那真正奇怪的事情。
總之,是的,它是完全安全的,並建議動態鏈接到iPhone上的sqlite庫,除非你做的事情真的很奇怪。
相關問題
- 1. XCode靜態庫是否需要與動態庫鏈接?
- 2. iPhone SDK鏈接錯誤與靜態庫
- 3. 在iPhone SDK中,將stringByAppendingString鏈接起來是否安全?
- 4. 動態鏈接不太安全?
- 5. iPhone和SQLite數據庫安全
- 6. iPhone上奇怪的動態鏈接
- 7. 鏈接到iPhone上的庫
- 8. 我是否安全地刪除鏈接列表?
- 9. 當鏈接到非線程靜態庫時,IPP線程是否安全?
- 10. 將gcc excutable鏈接到Visual C++庫是否安全?
- 11. 什麼是靜態庫,靜態鏈接動態庫和動態鏈接動態庫的.lib文件?
- 12. 動態鏈接庫
- 13. linux上的動態鏈接庫
- 14. Haskell鏈接到Ubuntu上的動態庫
- 15. 動態庫是否爲您鏈接其他庫?
- 16. CakePHP完全動態鏈接
- 17. 如何安全地檢查動態對象是否有字段
- 18. 鏈接靜態庫而不是動態鏈接
- 19. 如何鏈接一個本身與動態庫鏈接的靜態庫?
- 20. Tensorflow:與共享庫動態鏈接
- 21. 問題與動態鏈接庫
- 22. 默認的Qt創建者是靜態還是動態地鏈接它的庫?
- 23. 是否有可能將靜態庫鏈接到Visual Studio中的動態庫?
- 24. 靜態鏈接庫和動態鏈接庫之間的區別是什麼
- 25. 與MSVC中的靜態庫和動態庫鏈接
- 26. 問題在動態上TCL庫鏈接
- 27. 鏈接靜態庫與靜態庫
- 28. 查找exe是否動態鏈接(windows)
- 29. 將動態庫鏈接到一個靜態庫(又名預鏈接動態庫)
- 30. API - 連接是否安全?