a basic structure of apps for memorizing words on both PC and Android

The basic structure of such app is mainly comprised of two components. One of them is the GUI part and the other one is about how to transform a script file written by hands into a database file.

It’s better to master a database of words you ever encountered and keep track of them.

Maybe someday you can use the database to compile a vocabulary book.

And you can also lean multiple languages simultaneously just by gathering words in different languages together around a central word, for example in English.

<1> GUI

The main android layout basically consists of 7 pars as the left prototype screenshot.

1 ID number

2 check box to denote whether users are already over the word.

3 spelling of the word itself

4 a speaker symbol which can be pressed to pronounce the word.

5 usage example

6 meanings of the word which can be displayed in a rich HTML format.

7 buttons to navigate to the previous one and the next one.



<2> script format

What should be done first is to make conventions of the script formats, then use a program to transform the script data into database data.

The most convenient approach is to use Python because the web framework which is going to be used is written in Python.

<3> web framework and database system

Django and sqlite

Sqlite can be embedded in both Android and Django, so the db files created by Django can also be used directly by Android as it is in which way you can so exploit sqlite.


Android Tutorial on the GVSU

I have just completed  a video course of ‘Developing Android  Applications’ provided by Grand Valley State University.

The tutorial consists of six modules as follows and every module is a 30-minutes video.

  1. Overview of the Android Platform and it’s Basic Building Blocks.
  2. Writing your first “Hello World” Android application
  3. Android UI basics: Adding buttons, menus, etc
  4. Fetching and displaying data from the network
  5. Revisiting the UI: Jazzing up ListView
  6. Advanced Topics: dealing with network issues, asynchronous content fetching, etc