Adds info pop up

This commit is contained in:
Frank Morgner
2015-09-17 01:45:05 +02:00
parent 644d74ef40
commit 386a97b239
5 changed files with 43 additions and 5 deletions

View File

@@ -8,7 +8,7 @@
</configuration>
</facet>
</component>
<component name="NewModuleRootManager" inherit-compiler-output="true">
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_7" inherit-compiler-output="true">
<exclude-output />
<content url="file://$MODULE_DIR$">
<excludeFolder url="file://$MODULE_DIR$/.gradle" />

View File

@@ -12,10 +12,12 @@
<option name="SELECTED_TEST_ARTIFACT" value="_android_test_" />
<option name="ASSEMBLE_TASK_NAME" value="assembleDebug" />
<option name="COMPILE_JAVA_TASK_NAME" value="compileDebugSources" />
<option name="SOURCE_GEN_TASK_NAME" value="generateDebugSources" />
<option name="ASSEMBLE_TEST_TASK_NAME" value="assembleDebugAndroidTest" />
<option name="COMPILE_JAVA_TEST_TASK_NAME" value="compileDebugAndroidTestSources" />
<option name="TEST_SOURCE_GEN_TASK_NAME" value="generateDebugAndroidTestSources" />
<afterSyncTasks>
<task>generateDebugAndroidTestSources</task>
<task>generateDebugSources</task>
</afterSyncTasks>
<option name="ALLOW_USER_CONFIGURATION" value="false" />
<option name="MANIFEST_FILE_RELATIVE_PATH" value="/src/main/AndroidManifest.xml" />
<option name="RES_FOLDER_RELATIVE_PATH" value="/src/main/res" />
@@ -24,7 +26,7 @@
</configuration>
</facet>
</component>
<component name="NewModuleRootManager" inherit-compiler-output="false">
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_7" inherit-compiler-output="false">
<output url="file://$MODULE_DIR$/build/intermediates/classes/debug" />
<output-test url="file://$MODULE_DIR$/build/intermediates/classes/androidTest/debug" />
<exclude-output />
@@ -53,7 +55,6 @@
<sourceFolder url="file://$MODULE_DIR$/src/main/assets" type="java-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/main/aidl" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/src/main/external/jcardsim/src/main/java" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/src/main/external/IsoApplet/src" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/src/main/external/android-scio/src/main" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/src/main/external/ykneo-openpgp/applet/src" isTestSource="false" />
@@ -96,5 +97,6 @@
<orderEntry type="library" exported="" name="support-annotations-21.0.3" level="project" />
<orderEntry type="library" exported="" name="support-v4-21.0.3" level="project" />
<orderEntry type="library" exported="" name="core-1.51.0.0" level="project" />
<orderEntry type="library" exported="" name="jcardsim-3.0.4-SNAPSHOT-android" level="project" />
</component>
</module>

View File

@@ -19,15 +19,18 @@
package com.vsmartcard.acardemulator;
import android.app.AlertDialog;
import android.content.BroadcastReceiver;
import android.content.ClipData;
import android.content.ClipboardManager;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.content.IntentFilter;
import android.support.v4.content.LocalBroadcastManager;
import android.support.v7.app.ActionBarActivity;
import android.os.Bundle;
import android.text.Html;
import android.text.Layout;
import android.text.method.ScrollingMovementMethod;
import android.view.Menu;
@@ -83,6 +86,8 @@ public class MainActivity extends ActionBarActivity {
IntentFilter intentFilter = new IntentFilter();
intentFilter.addAction(SimulatorService.TAG);
bManager.registerReceiver(bReceiver, intentFilter);
showStartupMessage();
}
@Override
@@ -107,6 +112,9 @@ public class MainActivity extends ActionBarActivity {
case R.id.action_delete:
textViewVPCDStatus.setText("");
return true;
case R.id.action_help:
showStartupMessage();
return true;
default:
return super.onOptionsItemSelected(item);
}
@@ -125,4 +133,16 @@ public class MainActivity extends ActionBarActivity {
savedInstanceState.putCharSequence(saved_status_key, textViewVPCDStatus.getText());
super.onSaveInstanceState(savedInstanceState);
}
private void showStartupMessage() {
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setMessage(R.string.startup_message)
.setTitle(R.string.startup_title)
.setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
}
});;
AlertDialog dialog = builder.create();
dialog.show();
}
}

View File

@@ -13,4 +13,9 @@
android:icon="@drawable/ic_action_delete"
app:showAsAction="withText" />
<item android:id="@+id/action_help"
android:title="@string/action_help"
android:icon="@android:drawable/ic_menu_help"
app:showAsAction="withText" />
</menu>

View File

@@ -12,6 +12,7 @@
<string name="action_restart">Restart Emulator</string>
<string name="action_copy">Copy Log</string>
<string name="action_delete">Clear Log</string>
<string name="action_help">Show Help</string>
<string name="aid_isoapplet">F276A288BCFBA69D34F31001</string>
<string name="applet_isoapplet">Philip Wendland\'s ISO Applet</string>
@@ -24,5 +25,15 @@
<string name="applet_oath">Yubico\'s OATH Applet</string>
<string name="aid_muscle">A00000000101</string>
<string name="applet_muscle">MUSCLE Applet</string>
<string name="startup_title">Tap To Emulate!</string>
<string name="startup_message">The following smart card applets are supported:\n
\n
<b>Hello World Applet</b> <small>(AID F000000001)</small>\n
<b>OpenPGP Applet</b> <small>(AID D2760001240102000000000000010000)</small>\n
<b>OATH Applet</b> <small>(AID A000000527210101)</small>\n
<b>ISO Applet</b> <small>(AID F276A288BCFBA69D34F31001)</small>\n
<b>MUSCLE Applet</b> <small>(AID A00000000101)</small>\n
\n
Place your device on a contact-less reader. When the reader issues a SELECT command for one of the application identifiers above, the emulator creates the appropriate applet. The emulated applet will then handle all subsequent APDUs.</string>
</resources>