diff --git a/.gitmodules b/.gitmodules
index 40f30c6..ec47921 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -14,3 +14,6 @@
[submodule "ACardEmulator/app/src/main/external/jcardsim"]
path = ACardEmulator/app/src/main/external/jcardsim
url = https://github.com/frankmorgner/jcardsim.git
+[submodule "ACardEmulator/app/src/main/external/MuscleApplet"]
+ path = ACardEmulator/app/src/main/external/MuscleApplet
+ url = https://github.com/martinpaljak/MuscleApplet.git
diff --git a/ACardEmulator/app/app.iml b/ACardEmulator/app/app.iml
index d4374c6..c0b3b33 100644
--- a/ACardEmulator/app/app.iml
+++ b/ACardEmulator/app/app.iml
@@ -58,6 +58,7 @@
+
diff --git a/ACardEmulator/app/build.gradle b/ACardEmulator/app/build.gradle
index 7df216c..765dbd4 100644
--- a/ACardEmulator/app/build.gradle
+++ b/ACardEmulator/app/build.gradle
@@ -32,6 +32,7 @@ android {
main.java.srcDirs += 'src/main/external/android-scio/src/main'
main.java.srcDirs += 'src/main/external/ykneo-openpgp/applet/src'
main.java.srcDirs += 'src/main/external/ykneo-oath/applet/src'
+ main.java.srcDirs += 'src/main/external/MuscleApplet/src'
}
}
diff --git a/ACardEmulator/app/src/main/external/MuscleApplet b/ACardEmulator/app/src/main/external/MuscleApplet
new file mode 160000
index 0000000..d005f36
--- /dev/null
+++ b/ACardEmulator/app/src/main/external/MuscleApplet
@@ -0,0 +1 @@
+Subproject commit d005f36209bdd7020bac0d783b228243126fd2f8
diff --git a/ACardEmulator/app/src/main/java/com/vsmartcard/acardemulator/SimulatorService.java b/ACardEmulator/app/src/main/java/com/vsmartcard/acardemulator/SimulatorService.java
index 3c2fc6b..c6da32c 100644
--- a/ACardEmulator/app/src/main/java/com/vsmartcard/acardemulator/SimulatorService.java
+++ b/ACardEmulator/app/src/main/java/com/vsmartcard/acardemulator/SimulatorService.java
@@ -30,6 +30,7 @@ import com.licel.jcardsim.base.Simulator;
import com.licel.jcardsim.base.SimulatorRuntime;
import com.licel.jcardsim.samples.HelloWorldApplet;
import com.licel.jcardsim.utils.AIDUtil;
+import com.musclecard.CardEdge.CardEdge;
import net.pwendland.javacard.pki.isoapplet.IsoApplet;
@@ -114,6 +115,16 @@ public class SimulatorService extends HostApduService {
extra_error += "\n" + "Could not install " + name + " (AID: " + aid + ")";
}
+ name = getResources().getString(R.string.applet_muscle);
+ aid = getResources().getString(R.string.aid_muscle);
+ try {
+ simulator.installApplet(AIDUtil.create(aid), CardEdge.class);
+ extra_install += "\n" + name + " (AID: " + aid + ")";
+ } catch (Exception e) {
+ e.printStackTrace();
+ extra_error += "\n" + "Could not install " + name + " (AID: " + aid + ")";
+ }
+
Intent i = new Intent(TAG);
if (!extra_error.isEmpty())
i.putExtra(EXTRA_ERROR, extra_error);
diff --git a/ACardEmulator/app/src/main/res/values/strings.xml b/ACardEmulator/app/src/main/res/values/strings.xml
index 4fafe63..4d70007 100644
--- a/ACardEmulator/app/src/main/res/values/strings.xml
+++ b/ACardEmulator/app/src/main/res/values/strings.xml
@@ -21,5 +21,7 @@
Yubico\'s OpenPGP Applet
A000000527210101
Yubico\'s OATH Applet
+ A00000000101
+ MUSCLE Applet
diff --git a/ACardEmulator/app/src/main/res/xml/aid_list.xml b/ACardEmulator/app/src/main/res/xml/aid_list.xml
index 2c0c373..0b9a99e 100644
--- a/ACardEmulator/app/src/main/res/xml/aid_list.xml
+++ b/ACardEmulator/app/src/main/res/xml/aid_list.xml
@@ -20,4 +20,8 @@
+
+
+
+