Ankidroid (beta)
You can now use Anki on Android, directly accessible from the Android Market. Don't hesitate to post your questions and comments on the forum :-D
An alternative is to run AnkiMini on your device. Since this currently has full syncing support & SRS support which the native client does not, this may be a better option. See the bottom of this page for more info.
Features
- Basic Spaced Repetition. 2 possible answers: "Remembered" and "Not Remembered".
- Use your Anki decks, moving them first to an SD card (better to use copies...)
- Sample deck for countries/capitals.
- Reads cards that are either plain text or HTML-based.
- Directly opens last time's deck.
- Timer from the start of a card to the time you answer.
- "Whiteboard" toggle that allows you to draw on top of the card.
- Preferences dialog, including the option to hide the whiteboard and timer.
Screenshots
Installation and usage
Copy your .anki deck(s) to the SD card.
In the Android Market, search for "anki". In the results, click on "Ankidroid", then on "Install".
Anki should be in your list of installed applications. Click it, a directory listing appears and shows the decks you copied to the SD card. Click a deck to view random cards from it. Click the Whiteboard button for an overlay to write on.
Here is a video showing the whole procedure.
How to download a pre-existing .anki deck
You can download pre-existing decks from the Anki users' collection:
Download the desktop Anki application here.
Run it and use "File > Download > Shared deck" to download the .anki file you want.
- On Windows, the .anki deck will be downloaded to "My Documents"
Note: Backup decks do not work.
How to report a bug
If you notice a bug, please let us know about it here, thank you!
Contributing
This project needs developers! Here is how to get started with development:
Source code
First, register at Github.com, open Nicolas Raoul's repository page and follow the forking instructions.
src/com/ichi2/anki contains the main source code. Anki.java is the opening screen, FlashCard.java is the flash card window, and AnkiDb.java is a poor database layer implementation
- assets/flashcard_css contains the CSS file included with each flash card
- values/strings.xml contains app strings, whiteboard colors, and a basic HTML template for flashcards.
- assets/layout contains the layouts for each screen.
Development
Android development environment
If it is your first time developing on Android, please follow these instructions.
If you don't have an Android device, you can download the emulator to try it out. The SDK has a tools direcory with a ready-to-run emulator and tools. In Linux/OSX, you can cd to the tools directory and use these commands to set up the environment:
- First, create an sdcard with:
- [Linux]
- mkdir -p ~/.android/SDK-1.0/
- ./mksdcard 128M ~/.android/SDK-1.0/sdcard.img
mkdir C:\Documents and Settings\<user>\Local Settings\Application Data\Android\SDK-1.0 mksdcard 128M C:\Documents and Settings\<user>\Local Settings\Application Data\Android\SDK-1.0\sdcard.img
- [Linux]
- Run the emulator (note that the setup takes a while the first time):
- [Linux]
- ./emulator
- emulator
- ./emulator -sdcard ~/myproject/mysdcard.img
- [Linux]
- Wait for the emulator to finish loading so adb can communicate with it. Download the apk file linked above and install with:
- ./adb install -r ~/path/to/anki.apk
- Copy one of your decks to the sdcard:
- ./adb push ~/path/to/your-deck.anki /sdcard
- In the emulator window, click the grey menu bar at the bottom of the screen. You should see 'Anki' listed as an installed app.
Other development tools
A tool like "SQLite Database Browser" is very useful to understand how a ".anki" file is made, and to test SQL queries. To install it on Ubuntu: sudo apt-get install sqlitebrowser
Submit improvements
Once you have improved the code, commit it and send a push request to Nicolas Raoul, who will integrate it and publish the enhanced application on the Android Market.
Contact
Issues tracker (bugs and enhancement requests, please star the issues you want to see resolved first)
- IRC: irc.freenode.net #anki
Branches
Andrew, original Java-based application.
Ramblurr, arabic enhancements.
Nicolas Raoul, basic spaced repetition, minor dialog enhancements, version pushed to Market.
Similar Android applications
StudyDroid Closed source.
Chinese flashcards Apparently plans to make it 1.99$, but free right now.
Tea.ch Cards Light Closed source.
Brainy Baby Flashcards Demo, full version for 1.49$
Using AnkiMini
AnkiMini offers syncing and full SRS support, which is not currently available in the native client.
Some Android devices have a problem where the local server is not accessible unless internet access is available. It won't cost you anything since data is served locally, but if you lose access on a plane/in a tunnel/etc you will not be able to continue reviewing until you gain net access again. This issue seems to be limited to certain devices, so you will need to see for yourself if you are affected or not.
For instructions, see http://groups.google.com/group/anki-android/msg/54b15e202386c143
See also:
