2016-12-30 81 views
0

IM建設我的第一個應用程序,它包括一個小數據庫使用sqlite3的FTS。我可以在我的手機中推送我的應用程序,它可以工作,但是當我在數據庫上執行FTS查詢時,它會崩潰。我得到這個:Kivy的Android SQLITE3 FTS應用程序崩潰

12-30 15:37:02.861 28307 28337 I python : Error no such module: fts3: 

(完整日誌這裏) http://paste.ofcode.org/zJjtqzQZgCe2PVg9xKssw3

的應用效果很好的編譯過,所以FTS被編譯我猜時忘記了嗎?

任何想法如何解決這個問題?基維實際上是否支持FTS?

IM幾乎沒有!謝謝你的幫助!

回答

0

好吧,我得到這個用的@KeeWeeUsr

1的幫助下,我使用的buildozer正確的命令wasnt工作。 android而不是android_new,這創建了正確的文件夾與正確的sqlite3配方,默認啓用FTS4。

2 - 即使sqlite3的添加了buildozer.spec,我需要從所有blacklist.txt文件在我的項目(第一個構建之後創建)

FTS4現在工作完全除去sqlite3的。

0

如果FTS不是純Python(C擴展或東西),那麼它需要一個recipe,否則,你只需要提到它在requirements當你建立你的應用程序。

此外,建議使用sdl2(android new)bootstrap,因爲PyGame正在進入背景,並且自從切換到android上的sdl2以來並沒有真正維護。

+0

嗨,我說的sqlite3的要求,但我怎麼可以添加FTS特別? fts或fts3不起作用。謝謝! – Atoms

+0

@Atoms您需要添加與pip install相同的名稱。如果它不起作用,它很可能是一個不純的Python包,因此你需要編寫一個配方。 – KeyWeeUsr

+0

@KeeWeeUsr好吧,我解決了我的recipe.sh問題。這是我沒有使用android_new,但只是android。現在即時通訊使用android_new,我可以看到,sqlite的配方默認啓用fts4。但是,它給了我一個「屬性錯誤:上下文objct沒有屬性hostpython」,我可以通過在我的需求(buildozer.spec)中添加python2來解決這個問題。該應用程序編譯成功,但當我在我的android手機上啓動應用程序時,「沒有模塊sqlite3」。我試圖移動需求周圍,但它沒有效果。有任何想法嗎?我知道即將解決這個問題。謝謝! – Atoms