GithubHelp home page GithubHelp logo

mike011 / anymemo Goto Github PK

View Code? Open in Web Editor NEW

This project forked from helloworld1/anymemo

0.0 1.0 0.0 48.54 MB

Advanced Spaced Repetition flashcard learning software for Android.

Home Page: http://www.anymemo.org

License: GNU General Public License v2.0

Java 99.56% Shell 0.38% Haskell 0.06%

anymemo's Introduction

AnyMemo Readme

What is AnyMemo

AnyMemo is a free open-sourced spaced repetition flashcard learning software similar to SuperMemo for Android mobile phones. It implements an advanced adaptive scheduling algorithm based on modified Mnemosyne algorithm (Enhanced SuperMemo SM2 algorithm) to maximize the learning efficient.

AnyMemo will help you learn various languages like Arabic, Chinese, English, German, Spanish, French, Japanese, Italian, Korean, Esperanto. Also you can learn histories, computer related topics, religion, life styles using AnyMemo too!

See detailed info at http://anymemo.org

Directory structure

  • src: The standard gradle folder structure
  • libs: Jar libraries
  • res: Android resources
  • assets: The Android assets
  • gradle: The gradle wrapper
  • eclipse-deps: The dependencies needed by eclipse if you are using eclipse.
  • scripts: The scripts that automate some tasks

How to compile

AnyMemo is built using gradle. You need to make sure the following are installed in order to build:

In Android SDK tools' "Android SDK Manager", you need the following items:

  • Android 4.1.x SDK platform
  • Android SDK tools
  • Andoird SDK Build-tools version 19
  • Android support repository
  • Android support library

Once the dependency is satisfied, you need to set the ANDROID_HOME environment variable to the Android SDK installation location. E. g.

$ export ANDROID_HOME=~/android-sdk-linux/

cd to the AnyMemo directory and Use gradle to compile the project

Move AMSecrets.java.template in src/org/liberty/android/fantastischmemo to AMSecrets. Provide the values to the fields in AMSecrets.java.

Them compile using gradle: $ cd anymemo $ ./gradlew assembleFreeDebug To build pro version, use $ ./gradlew assembleProDebug

The build artifacts are in build/apk/

Instrumentation tests

There are hundreds of intrumentation tests that ensure the basic funciton of AnyMemo. To run these tests against free version, you need to run: $ ./gradlew installFreeDebugTest $ ./gradlew connectedInstrumentTestFreeDebug

To run against pro version: $ ./gradlew installProDebugTest $ ./gradlew connectedInstrumentTestProDebug

Eclipse users

For the eclipse user, the gradle is not supported to build. However you can still use eclipse to edit the project with auto completion fully working.

  • Build the project using gradle
  • mv eclipse-deps/classpath-template .classpath
  • mv eclipse-deps/project-template .project
  • Import project in eclipse as "Java Project". Do not import as Android project. ADT is not needed at all!

Known issue: The aspectj will not work correctly.

Android studio user

It is easy! Install all the dependencies listed in the "How to compile" section and you can import directly into Android studio.

anymemo's People

Contributors

helloworld1 avatar monga avatar xin041619 avatar shixiaoyu avatar twckr avatar f8l avatar ilari-t avatar

Watchers

Michael Charland avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.