Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Android support #29

Closed
GoogleCodeExporter opened this issue Mar 25, 2015 · 13 comments
Closed

Android support #29

GoogleCodeExporter opened this issue Mar 25, 2015 · 13 comments

Comments

@GoogleCodeExporter
Copy link

i was trying to use sqlite4java in android project. i don't know anything about 
gant so i ended up with this solution how to get both jar and needed native 
libraries

i create normaln android project and in its jni subdirectory i have content of 
attached archive

then i just run get.sh, it gets last sqlite4java sources from svn, builds it 
and then calls ndk-build to compile native version of sqlite4java.so library 
and place it where its needed

this works well, but it would be nicer if you would be able to integrate it 
somehow directly to gant scripts. please consider adding it there. (and if you 
don't like the idea then its ok for me too)


Original issue reported on code.google.com by selmi....@gmail.com on 27 Jun 2011 at 11:37

Attachments:

@GoogleCodeExporter
Copy link
Author

Thanks for your contribution - we will consider integrating it into the common 
build.

Could you please tell, what was the reason to use sqlite4java on Android? I 
thought Android had a pretty good sqlite wrapper among the system libraries.

Igor

Original comment by ser...@gmail.com on 27 Jun 2011 at 1:29

  • Added labels: Type-Other
  • Removed labels: Type-Defect

@GoogleCodeExporter
Copy link
Author

[deleted comment]

@GoogleCodeExporter
Copy link
Author

One reason might be a need for multi-plaftorm code.

Original comment by Thotep on 1 Aug 2011 at 6:27

  • Added labels: ****
  • Removed labels: ****

@GoogleCodeExporter
Copy link
Author

Thanks - good point.

Original comment by ser...@gmail.com on 1 Aug 2011 at 9:57

  • Added labels: ****
  • Removed labels: ****

@GoogleCodeExporter
Copy link
Author

Ok, working on this now. I'm not familiar with Android development, so a little 
help would be appreciated. 

The main question is, how would you like Android version of sqlite4java 
delivered? Do you always need to build it, or is it enough to download .SO file 
and place it in the project directory? 

I managed to build .SO with NDK, but not sure about what else do you need as 
deliverables.

Thanks!
Igor

Original comment by ser...@gmail.com on 23 Feb 2012 at 10:46

  • Changed state: Accepted
  • Added labels: ****
  • Removed labels: ****

@GoogleCodeExporter
Copy link
Author

generally its ok if .so file would be available, but sometimes they have to 
recompile sqlite with different options (to enable full text search etc.) so it 
would be good if in development tree would also contain Android.mk and there 
would be some android building information somewhere (should be only little 
enhancment of http://code.google.com/p/sqlite4java/wiki/BuildingFromSource for 
android specific stuff)

btw I was removed from android development several months ago but if you would 
have more questions i will forward them to the team

Original comment by michal.s...@visicom.com on 24 Feb 2012 at 12:05

  • Added labels: ****
  • Removed labels: ****

@GoogleCodeExporter
Copy link
Author

Original comment by ser...@gmail.com on 1 Mar 2012 at 4:34

  • Changed state: Delivered
  • Added labels: FixVersion-282
  • Removed labels: ****

@GoogleCodeExporter
Copy link
Author

Thanks for this great support Igor, really appreciated. Just a minor issue, 
when running the jar on Android, it does not report the sqlite4java version as 
it does when running it on other platforms (e.g. Ubuntu).

java -jar sqlite4java output on Linux PC:
     [java] sqlite4java 282
     [java] SQLite 3.7.10
     [java] Compile-time options: ENABLE_COLUMN_METADATA ENABLE_FTS3 ENABLE_FTS3_PARENTHESIS ENABLE_MEMORY_MANAGEMENT ENABLE_RTREE OMIT_DEPRECATED TEMP_STORE=1 THREADSAFE=1

And here's the output on Android:
     [exec] sqlite4java (UNKNOWN VERSION)
     [exec] SQLite 3.7.10
     [exec] Compile-time options: ENABLE_COLUMN_METADATA ENABLE_FTS3 ENABLE_FTS3_PARENTHESIS ENABLE_MEMORY_MANAGEMENT ENABLE_RTREE OMIT_DEPRECATED TEMP_STORE=1 THREADSAFE=1

Original comment by robert.c...@gmail.com on 2 Mar 2012 at 3:55

  • Added labels: ****
  • Removed labels: ****

@GoogleCodeExporter
Copy link
Author

Thanks Robert. The code extracts sqlite4java version from the JAR manifest, but 
on the Android's ClassLoader.getResource() does not work for some reason.

Original comment by ser...@gmail.com on 2 Mar 2012 at 4:33

  • Added labels: ****
  • Removed labels: ****

@GoogleCodeExporter
Copy link
Author

[deleted comment]

@GoogleCodeExporter
Copy link
Author

Any chance to support non-ARM Android platforms, such as GoogleTV? Here's the 
error I'm getting when deploying my test app on GoogleTV:

com.almworks.sqlite4java.SQLiteException: [-91] cannot load library: 
java.lang.UnsatisfiedLinkError: Couldn't load sqlite4java-android-i686: 
findLibrary returned null
  at com.almworks.sqlite4java.SQLite.loadLibrary(SQLite.java:97)
  at com.almworks.sqlite4java.SQLiteConnection.open0(SQLiteConnection.java:1314)
  at com.almworks.sqlite4java.SQLiteConnection.open(SQLiteConnection.java:258)
  at com.robert.Test.<init>(Test.java:110)
Caused by: java.lang.UnsatisfiedLinkError: Couldn't load 
sqlite4java-android-i686: findLibrary returned null
  at java.lang.Runtime.loadLibrary(Runtime.java:425)
  at java.lang.System.loadLibrary(System.java:554)
  at com.almworks.sqlite4java.Internal.tryLoadFromSystemPath(Internal.java:349)
  at com.almworks.sqlite4java.Internal.loadLibraryX(Internal.java:124)
  at com.almworks.sqlite4java.SQLite.loadLibrary(SQLite.java:95)
  ... 8 more

Original comment by robert.c...@gmail.com on 26 Mar 2012 at 9:40

  • Added labels: ****
  • Removed labels: ****

@GoogleCodeExporter
Copy link
Author

Robert - thanks for your comment. I've posted 
http://code.google.com/p/sqlite4java/issues/detail?id=42 as a separate issue. 
Please star it.

Igor

Original comment by ser...@gmail.com on 29 Mar 2012 at 6:14

  • Added labels: ****
  • Removed labels: ****

@GoogleCodeExporter
Copy link
Author

Thanks Igor, just did!

Original comment by robert.c...@gmail.com on 29 Mar 2012 at 6:39

  • Added labels: ****
  • Removed labels: ****

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant