From 386a97b239b4d8871cc6b62a123df1224754e6de Mon Sep 17 00:00:00 2001 From: Frank Morgner Date: Thu, 17 Sep 2015 01:45:05 +0200 Subject: [PATCH] Adds info pop up --- ACardEmulator/ACardEmulator.iml | 2 +- ACardEmulator/app/app.iml | 10 ++++++---- .../acardemulator/MainActivity.java | 20 +++++++++++++++++++ ACardEmulator/app/src/main/res/menu/main.xml | 5 +++++ .../app/src/main/res/values/strings.xml | 11 ++++++++++ 5 files changed, 43 insertions(+), 5 deletions(-) diff --git a/ACardEmulator/ACardEmulator.iml b/ACardEmulator/ACardEmulator.iml index 91b2788..507b069 100644 --- a/ACardEmulator/ACardEmulator.iml +++ b/ACardEmulator/ACardEmulator.iml @@ -8,7 +8,7 @@ - + diff --git a/ACardEmulator/app/app.iml b/ACardEmulator/app/app.iml index c0b3b33..9f4b76b 100644 --- a/ACardEmulator/app/app.iml +++ b/ACardEmulator/app/app.iml @@ -12,10 +12,12 @@ - + @@ -53,7 +55,6 @@ - @@ -96,5 +97,6 @@ + \ No newline at end of file diff --git a/ACardEmulator/app/src/main/java/com/vsmartcard/acardemulator/MainActivity.java b/ACardEmulator/app/src/main/java/com/vsmartcard/acardemulator/MainActivity.java index fd01d42..309cdb9 100644 --- a/ACardEmulator/app/src/main/java/com/vsmartcard/acardemulator/MainActivity.java +++ b/ACardEmulator/app/src/main/java/com/vsmartcard/acardemulator/MainActivity.java @@ -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(); + } } diff --git a/ACardEmulator/app/src/main/res/menu/main.xml b/ACardEmulator/app/src/main/res/menu/main.xml index d9f2937..5e1be4d 100644 --- a/ACardEmulator/app/src/main/res/menu/main.xml +++ b/ACardEmulator/app/src/main/res/menu/main.xml @@ -13,4 +13,9 @@ android:icon="@drawable/ic_action_delete" app:showAsAction="withText" /> + + diff --git a/ACardEmulator/app/src/main/res/values/strings.xml b/ACardEmulator/app/src/main/res/values/strings.xml index 90e2af5..e5efe47 100644 --- a/ACardEmulator/app/src/main/res/values/strings.xml +++ b/ACardEmulator/app/src/main/res/values/strings.xml @@ -12,6 +12,7 @@ Restart Emulator Copy Log Clear Log + Show Help F276A288BCFBA69D34F31001 Philip Wendland\'s ISO Applet @@ -24,5 +25,15 @@ Yubico\'s OATH Applet A00000000101 MUSCLE Applet + Tap To Emulate! + The following smart card applets are supported:\n + \n + Hello World Applet (AID F000000001)\n + OpenPGP Applet (AID D2760001240102000000000000010000)\n + OATH Applet (AID A000000527210101)\n + ISO Applet (AID F276A288BCFBA69D34F31001)\n + MUSCLE Applet (AID A00000000101)\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.