Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Reading modes #386

Open
wants to merge 8 commits into
base: development
Choose a base branch
from
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 12 additions & 12 deletions README.md
Original file line number Diff line number Diff line change
@@ -3,7 +3,7 @@

# **RoboTutor**

Welcome to RoboTutor:
Welcome to RoboTutor:


## **Setup and Configuration:**
@@ -12,7 +12,7 @@ Welcome to RoboTutor:

[Install GitHub Desktop](https://desktop.github.com/)<br>

RoboTutor uses a large volume of external assets at runtime. To successfully run RoboTutor you must first install these assets on your target device. The [RTAsset_Publisher](https://github.com/synaptek/RTAsset_Publisher) is the tool you can use to push the Rt assets to your device. Once you have cloned and run the associated tools to push the data assets to your device you can proceed with building RoboTutor.
RoboTutor uses a large volume of external assets at runtime. To successfully run RoboTutor you must first install these assets on your target device. The [RTAsset_Publisher](https://github.com/RoboTutorLLC/RTAsset_Publisher) is the tool you can use to push the Rt assets to your device. Once you have cloned and run the associated tools to push the data assets to your device you can proceed with building RoboTutor.


## **Building RoboTutor:**
@@ -21,12 +21,12 @@ RoboTutor uses a large volume of external assets at runtime. To successfully ru

2. **Import** the RoboTutor project into Android Studio.

3. You may need to install different versions of the build tools and android SDKs.

4. There are a number of build variants you can select to generate versions that support static language selections and also vesions that permit dynamic language selection at runtime. In order to generate any flavor that depends on the key signature, you must generate your own keystore (see next steps). Note that the version used in the XPrize code drop 1 submission usees flavor *release_sw*, which depends on a signed APK.


5. If you do not already have one, follow the steps [here](https://stackoverflow.com/questions/3997748/how-can-i-create-a-keystore) to generate a keystore.
3. You may need to install different versions of the build tools and android SDKs.
4. There are a number of build variants you can select to generate versions that support static language selections and also vesions that permit dynamic language selection at runtime. In order to generate any flavor that depends on the key signature, you must generate your own keystore (see next steps). Note that the version used in the XPrize code drop 1 submission usees flavor *release_sw*, which depends on a signed APK.
5. If you do not already have one, follow the steps [here](https://stackoverflow.com/questions/3997748/how-can-i-create-a-keystore) to generate a keystore.

6. Add a file named "keystore.properties" to your root project directory, and give it the following contents. The values should be based on the values you used to generate the keystore.
```
@@ -35,7 +35,7 @@ keyPassword=<your_key_password>
keyAlias=<your_key_alias>
storeFile=<path_to_location_of_keystore>
```

7. Use Android Studio or gradlew to generate a signed APK with the flavor *release_sw*. This will generate the file *robotutor.release_sw.1.8.8.1.apk*. This APK should be transferred to the apk in your local SystemBuild directory.


@@ -45,12 +45,12 @@ storeFile=<path_to_location_of_keystore>
## **XPrize Submission:**

The following repositories are part of the Team-RoboTutor entry:
* XPRIZE/GLEXP-Team-RoboTutor-RoboTutor
* XPRIZE/GLEXP-Team-RoboTutor-RoboTutor
* XPRIZE/GLEXP-Team-RoboTutor-SystemBuild
* XPRIZE/GLEXP-Team-RoboTutor-RTAsset_Publisher
* XPRIZE/GLEXP-Team-RoboTutor-CodeDrop1-Assets
* XPRIZE/GLEXP-Team-RoboTutor-RoboLauncher
* XPRIZE/GLEXP-Team-RoboTutor-RoboTransfer
* XPRIZE/GLEXP-Team-RoboTutor-RoboLauncher
* XPRIZE/GLEXP-Team-RoboTutor-RoboTransfer



2 changes: 1 addition & 1 deletion app/src/README.md
Original file line number Diff line number Diff line change
@@ -74,7 +74,7 @@

"tutorVariants" supporting [encfolder] encodings
----------------------------------------------------------
"story.echo", "story.hear", "story.read"
"story.echo", "story.hear", "story.read", "story.parrot", "story.hide", "story.reveal"


Tutors with large numbers of datasources use the [encfolder] encoding scheme. With this encoding the tutor descriptor is combined with the datasource descriptor in the following manner.
5 changes: 5 additions & 0 deletions app/src/main/assets/tutors/engine_descriptor.json
Original file line number Diff line number Diff line change
@@ -259,6 +259,11 @@
"tutorName": "story_reading",
"features": "FTR_USER_PARROT"
},
"story.prompt": {
"type": "TUTORVAR_MAP",
"tutorName": "story_reading",
"features": "FTR_USER_PROMPT"
},
"story.gen.hide": {
"type": "TUTORVAR_MAP",
"tutorName": "story_questions",
200 changes: 102 additions & 98 deletions app/src/main/assets/tutors/story_reading/animator_graph.json

Large diffs are not rendered by default.

11 changes: 4 additions & 7 deletions app/src/main/java/cmu/xprize/robotutor/RoboTutor.java
Original file line number Diff line number Diff line change
@@ -173,7 +173,7 @@ public class RoboTutor extends Activity implements IReadyListener, IRoboTutor {

private Thread audioLogThread;
// TODO move to config file
private boolean RECORD_AUDIO = false;
private boolean RECORD_AUDIO = true;

@Override
protected void onCreate(Bundle savedInstanceState) {
@@ -429,8 +429,7 @@ protected Boolean doInBackground(Void... unused) {
try {
// TODO: Don't do this in production
// At the moment we always reinstall the tutor spec data - for



if(CacheSource.equals(TCONST.EXTERN)) {
tutorAssetManager.installAssets(TCONST.TUTORROOT);
logManager.postEvent_V(TAG, "INFO:Tutor Assets installed");
@@ -482,7 +481,7 @@ protected Boolean doInBackground(Void... unused) {
return result;
}

@Override
@Override
protected void onPostExecute(Boolean result) {
isReady = result;

@@ -836,9 +835,9 @@ protected void onDestroy() {
// after logging, transfer logs to READY folder
logManager.transferHotLogs(hotLogPath, readyLogPath);
logManager.transferHotLogs(hotLogPathPerf, readyLogPathPerf);

}


private int getNextLogSequenceId() {
SharedPreferences prefs = getPreferences(MODE_PRIVATE);

@@ -896,9 +895,7 @@ public static String getPromotionMode(String matrix) {
placement = false;
}


return placement ? "PLACEMENT" : "PROMOTION";

}
}

Loading