Porting Learn Na'vi to Android

Started by Seze, May 20, 2010, 12:53:45 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Seze

I have finally decided to begin porting the Learn Na'vi App that I've been building for iPhone over to the Android platform.  I have not used the Android SDK yet, so it may be a little while before I have anything ready to be released.  I most likely won't be able to put much time into it until I get a version of Learn Na'vi into the Apple App Store.  The Android version of Learn Na'vi will be open-source just like the iPhone version.  I will post a link to the repository once I get one setup.


Learn Na'vi Mobile App - Now Available

Muzer

Wow! I was actually planning (literally yesterday) to do something like this but from scratch. Are you psychic or something?

Does your app use the taronyu dictionary?
[21:42:56] <@Muzer> Apple products used to be good, if expensive
[21:42:59] <@Muzer> now they are just expensive

Seze

Quote from: Muzer on May 20, 2010, 01:53:44 AM
Wow! I was actually planning (literally yesterday) to do something like this but from scratch. Are you psychic or something?

Does your app use the taronyu dictionary?

Yeah, my whole App is built on top of Taronyu's dictionary (which is built on Tuiq's system).  Everything the App uses content wise is all stored in an SQLite database.  Both Android and iPhone support SQLite, so I see no reason why both versions of the App can't use the exact same database.  No sense making separate databases.  Also, if you were wanting to get into Android Development, you should get involved with coding the App. I can point you to the repository once I get one built...


Learn Na'vi Mobile App - Now Available

Muzer

Yes, I'd very much like that. I've coded in many languages in the past, but never Java - it can't be that different though, I've heard it's similar to C# which I do know a bit about (unfortunately).

My eventual goal was to build a more "natural" Na'vi to English translator, since Na'vi seems to me like it would be an easy language to parse automatically (as opposed to English to Na'vi which would be very difficult).
[21:42:56] <@Muzer> Apple products used to be good, if expensive
[21:42:59] <@Muzer> now they are just expensive

omängum fra'uti

It would be easier than English, but that's not saying much.  I don't think it will be trivial, as I've thought about what it would take just to verify grammar, without even trying to derive meaning.
Ftxey lu nga tokx ftxey lu nga tirea? Lu oe tìkeftxo.
Listen to my Na'vi Lessons podcast!

omängum fra'uti

Have any efforts to do non-iPhone ports started yet?
Ftxey lu nga tokx ftxey lu nga tirea? Lu oe tìkeftxo.
Listen to my Na'vi Lessons podcast!

Seze

Quote from: omängum fra'uti on May 22, 2010, 06:45:31 PM
Have any efforts to do non-iPhone ports started yet?

I've setup the repository to handle the other ports, but I haven't seen anything yet.  I put some Screenshots and all the PSD files from the iPhone OS version in the trunk for each port to help get things started.


Learn Na'vi Mobile App - Now Available

omängum fra'uti

#7
Lookie!



So far, all it does is go to the resources screen when you hit the "Resources" button.  And nothing on that screen does anything yet.  And I'm pretty sure devices with larger screens will not show it correctly.  (Loading up an emulator now to check how bad it is.)  It actually displays correctly even on high resolution devices!
Ftxey lu nga tokx ftxey lu nga tirea? Lu oe tìkeftxo.
Listen to my Na'vi Lessons podcast!

Seze

Awesome start.  I am super excited to actually have someone else working on the project at the code level.  Just curious, what happened to the text shadow in the title?


Learn Na'vi Mobile App - Now Available

omängum fra'uti

I honestly don't know.  I hadn't gotten to looking into that.  The buttons look off too.  I hadn't checked out the whole repository, and just loaded the PSD files into gimp and saved PNGs.  So something was probably lost there.  I should probably check out the rest just for reference.
Ftxey lu nga tokx ftxey lu nga tirea? Lu oe tìkeftxo.
Listen to my Na'vi Lessons podcast!

Seze

Quote from: omängum fra'uti on May 23, 2010, 01:06:38 AM
I honestly don't know.  I hadn't gotten to looking into that.  The buttons look off too.  I hadn't checked out the whole repository, and just loaded the PSD files into gimp and saved PNGs.  So something was probably lost there.  I should probably check out the rest just for reference.

Worst case, just commit everything to the repository and I can re-export the PSDs to PNGs for you from Photoshop.  There should be a ton of PNGs in the iPhone OS trunk you may be able to use without doing any editing as well.


Learn Na'vi Mobile App - Now Available

omängum fra'uti

Yeah I ended up grabbing the iPhone ones, and adding in highlights while I was at it.  (First, I had to learn HOW to, heh.)  I had to rename them though, as Android doesn't seem to like them having upper case letters in the name.

There was a time I could even have just copied them internal to subversion so it could track them in the revision graph, but it's been so long since I've done much with svn, I didn't want to risk breaking something.

Actually my biggest stumbling block, aside from trying to figure out how Android UI layout works, was trying to figure out how the Subversion integration with eclipse works.
Ftxey lu nga tokx ftxey lu nga tirea? Lu oe tìkeftxo.
Listen to my Na'vi Lessons podcast!

Muzer

Quote from: omängum fra'uti on May 23, 2010, 01:56:57 AM
I had to rename them though, as Android doesn't seem to like them having upper case letters in the name.

That'll be because it's based on Linux, whose filesystems are case-sensitive.
[21:42:56] <@Muzer> Apple products used to be good, if expensive
[21:42:59] <@Muzer> now they are just expensive

omängum fra'uti

Quote from: Muzer on May 23, 2010, 02:56:55 AM
Quote from: omängum fra'uti on May 23, 2010, 01:56:57 AM
I had to rename them though, as Android doesn't seem to like them having upper case letters in the name.

That'll be because it's based on Linux, whose filesystems are case-sensitive.
That has nothing to do with why it doesn't like upper case characters in the names though.  It isn't that the file name didn't match, it was that it said it specifically only allowed lower case characters.  Tons of Linux applications get by perfectly fine without such a limitation.
Ftxey lu nga tokx ftxey lu nga tirea? Lu oe tìkeftxo.
Listen to my Na'vi Lessons podcast!

Muzer

Quote from: omängum fra'uti on May 23, 2010, 03:54:04 AM
Quote from: Muzer on May 23, 2010, 02:56:55 AM
Quote from: omängum fra'uti on May 23, 2010, 01:56:57 AM
I had to rename them though, as Android doesn't seem to like them having upper case letters in the name.

That'll be because it's based on Linux, whose filesystems are case-sensitive.
That has nothing to do with why it doesn't like upper case characters in the names though.  It isn't that the file name didn't match, it was that it said it specifically only allowed lower case characters.  Tons of Linux applications get by perfectly fine without such a limitation.

Oh, sorry, I thought you just renamed the file without changing the function in the program to also look for the upper-case file. That's quite odd then - maybe it's to do with the fact that a Java file is a ZIP archive? I don't know...
[21:42:56] <@Muzer> Apple products used to be good, if expensive
[21:42:59] <@Muzer> now they are just expensive

omängum fra'uti

I honestly don't know either.  All I know is the build environment gave me an error that only a-z0-9_ were valid characters for the name.

Anyway, basic functionality is there.  Both buttons on the main screen work, the button to open learnnavi.org and return to the main screen work from the resources page, and the dictionary list is very bare bones right now.  (Just a Na'vi -> English word list, no search, no entry details, no leader headers, and sorting is slightly broken, in that a and ä as well as i and ì compare the same, so get mixed in.)

Everything I've done so far is in the SVN repository if anyone feels like grabbing it and trying it themselves.  It is still VERY much early development on Android.
Ftxey lu nga tokx ftxey lu nga tirea? Lu oe tìkeftxo.
Listen to my Na'vi Lessons podcast!

Seze

Quote from: omängum fra'uti on May 23, 2010, 04:53:03 AM
...and sorting is slightly broken, in that a and ä as well as i and ì compare the same, so get mixed in.)

Yeah I was having lots of trouble with the ä and ì chars.  I got around the problem by not using those chars at all in the database.  I swapped them out for the chars b and j.  I stopped updating the database in svn once I got my database update script working, so you may be using an old version of the database.  To check, there is a table called version that should have the version number in it.  My guess is that you are using 1.4.  The current version is 15.  You can pull the most recent version of the database from here.  And to check what version the database is, I have a version text file you can access here.  The version file is just a numeric counter that gets incremented anytime I update the database.


Learn Na'vi Mobile App - Now Available

omängum fra'uti

The problem with ì and ä I was facing was actually a little different.  Android can sort unicode properly in sqlite, with the UNICODE collator that it includes...  But it sorts a and ä together rather than a followed by ä.

Anyway, this is about the entirety of what it can do at the moment...

Ftxey lu nga tokx ftxey lu nga tirea? Lu oe tìkeftxo.
Listen to my Na'vi Lessons podcast!

Seze

Awesome work so far.  I'm impressed...


Learn Na'vi Mobile App - Now Available

omängum fra'uti

A couple more...  At this point, the only missing functionality from the base set (Which, I believe, should get it in line with the iPhone app?) is filtering and searching the dictionary data.

Unlike the last few, these were actually screenshots off my phone - hence why they look a little different.

Ftxey lu nga tokx ftxey lu nga tirea? Lu oe tìkeftxo.
Listen to my Na'vi Lessons podcast!