Skip to content
glenviewjeff edited this page Sep 14, 2010 · 38 revisions

Introduction

AnyMemo is a spaced repetition flashcard learning software. It implements a slightly modified Mnemosyne algorithm to maximize the learning efficient. The key features are as follows:

  • Well tested and highly efficient Mnemosyne algorithm for fast learning
  • Text-to-Speech feature to aid language learning. Support multiple languages
  • PC tool is provided to convert Mnemosyne XML, CSV, tab TXT file to the database
  • A collection of database is provided in Market to try out.
  • Text format can be changed to fit different database and screen size.
  • Each flashcard can be edited or deleted on the device.
  • Simple, easy-to-use and power saving interface.

Configure your PC for Development

For non-IDE users:

$ git clone git://github.com/helloworld1/AnyMemo.git
$ cd AnyMemo
$ android update project —name AnyMemo —target 1 —path ./
$ ant debug

Congratulations! You can find compiled APK in bin directory.

Configuring for Eclipse environment: (Under construction)

Install Eclipse, Android SDK, Eclipse GIT plugin

  • Install Eclipse (3.5 Galileo, not 3.6 Helios) NOTE: Eclipse was running out of memory so I added “-vmargs -Xmx512M -XX:PermSize=64M -XX:MaxPermSize=128M” to my Eclipse command-line options.
  • Follow the Android SDK installation instructions including the Eclipse plugin installation and JDK, etc.
  • Make sure you go to the Android SDK folder and install Android platform 2.2 or later. (If you have trouble, make sure you tell it not to use https.)
  • Make sure you configure the Android SDK location in the Android Eclipse plugin. Go to Window, Preferences, Android, and browse to the Android SDK directory. Then click apply, and ok.
  • Install Eclipse GIT eclipse plugin.

Import AnyMemo Git Repository

  • From Eclipse, go to the git repository exploring perspective.
  • Right click in the git repositories pane, and pick “import git repository.”
  • For URI, enter git://github.com/helloworld1/AnyMemo.git and click next.
  • Use all default values and click next twice until you get to the local destination configuration.
  • Eclipse doesn’t seem to like the repository living in the default workspace directory, so add a subdirectory above AnyMemo named git. For example, if your default workspace directory is c:\workspaces, use C:\workspaces\git\AnyMemo

Create the AnyMemo Project

  • Click file, new, Android project.
  • Leave the project name alone, it will populate automatically.
  • Click create from existing source, and browse to the AnyMemo directory in the location you stored the git repository.
  • Click finish.

Re-enable Git

  • Right click the top-level AnyMemo project folder in the Eclipse package explorer and select “share project”
  • Select Git, next.
  • Select the repository and click finish.

Add the jar to the project.

  • Right click on the AnyMemo project, properties, Java Build Path, libraries tab.
  • Click add Jars, AnyMemo project, libs/TTS_library_stub_2.0_market.jar, OK.
  • Errors should disappear and you’ll have a bunch of warnings.

Build and Execute AnyMemo on Simulator

  • Right click on the AnyMemo project, and click run as Android application.
  • Answer yes if you haven’t installed an Android virtual device.
  • Click new, give it a name you like (My Android)
  • SD Card Size 512MB or whatever size you want. AnyMemo needs an SD card.
  • Click Create AVD.
  • Click Start.
  • Click Launch.
  • Choose the running Android device and hit OK.
  • Wait for the Android simulator to start up. (This takes a while! ~5 minutes on my PC.)
  • You’ll get a bunch of timeouts in the Eclipse console while the simulator boots “android.util.AndroidException: Can’t connect to activity manager; is the system running?”. Ignore them and be patient.
  • Eclipse will likely give up if you didn’t pre-start the simulator, so right click the project and run as Android application. This time it should successfully start the AnyMemo application.

How to access the repository using command-line git:

Use “git” to maintain the source code.

To pull the source code, you need:
$ git pull git://github.com/helloworld1/AnyMemo.git

Then make your own branch
$ git branch my-branch

Then you can checkout to it:
$ git checkout my-branch

Then commit as normal
$ git commit -a -m ‘my commit’

If you want to submit patches, please use:
$ git format-patch origin

You can submit the patches through anymemo’s bugzilla:
http://anymemo.org/bugzilla

Edits will be reviewed and pushed o the main tree. Your contributions will be credited.