diff --git a/.gitignore b/.gitignore
index ff0cd5c..4559f36 100644
--- a/.gitignore
+++ b/.gitignore
@@ -5,3 +5,5 @@
 .gradle
 build
 .idea
+dist
+*.tgz
diff --git a/Makefile b/Makefile
index 9ecdece..9972be8 100644
--- a/Makefile
+++ b/Makefile
@@ -1,10 +1,11 @@
 CARGO ?=cargo
 RM ?=rm
-NDK ?= $(ANDROID_NDK)
+TAR ?=tar
+NDK ?=$(ANDROID_NDK)
 ANDROID_ARM64_STRIP ?= $(shell $(NDK)/ndk-which --abi arm64-v8a strip)
 ANDROID_ARM_STRIP ?= $(shell $(NDK)/ndk-which --abi armeabi-v7a strip)
 
-.PHONY: clean
+.PHONY: clean dist
 
 
 build:
@@ -15,8 +16,16 @@
 	$(ANDROID_ARM64_STRIP) target/aarch64-linux-android/release/libdlsmk.so
 	$(CARGO) build --target armv7-linux-androideabi --release
 	$(ANDROID_ARM_STRIP) target/armv7-linux-androideabi/release/libdlsmk.so
+	$(CARGO) build --target i686-linux-android --release
 
-
+dist:
+	mkdir -p dist/src/main/jniLibs/arm64-v8a
+	mkdir -p dist/src/main/jniLibs/armv7
+	cp target/aarch64-linux-android/release/libdlsmk.so dist/src/main/jniLibs/arm64-v8a/
+	cp target/armv7-linux-androideabi/release/libdlsmk.so dist/src/main/jniLibs/armv7/
+	cp -r java/src/main/java dist/src/main/
+	cp -r java/build.gradle java/setting.gradle java/gradle java/gradlew* dist/
+	$(TAR) cfvz dlqrcode-android.tgz dist/*
 
 clean:
-	$(RM) -rf target
+	$(CARGO) clean
diff --git a/dlqrcode/src/lib.rs b/dlqrcode/src/lib.rs
index 12dc747..a82b170 100644
--- a/dlqrcode/src/lib.rs
+++ b/dlqrcode/src/lib.rs
@@ -349,6 +349,7 @@
     Ok(tac)
 }
 
+#[allow(dead_code)]
 fn vec_split_once(data: Vec<u8>, delimiter: u8) -> (Option<Vec<u8>>, Option<Vec<u8>>) {
     let mut pos = 0;
     while pos < data.len() && data[pos] != delimiter {
diff --git a/dlsmk/src/lib.rs b/dlsmk/src/lib.rs
index c8b6cba..9a0c320 100644
--- a/dlsmk/src/lib.rs
+++ b/dlsmk/src/lib.rs
@@ -48,6 +48,8 @@
 
     use dlqrcode::DaliQrCode;
 
+    static QR_PREFIX : &str = "DLSMK_";
+
     fn put_data(env: &JNIEnv, map: &JMap, key: &str, value: &str) {
         map.put(
             *env.new_string(key).unwrap(),
@@ -105,6 +107,18 @@
             }
         };
 
+        if !qrcode.starts_with(QR_PREFIX) {
+            put_data(&env, &qrdata, "error", "qrcode prefix error");
+            return JNI_FALSE;
+        }
+        let qrcode = match qrcode.strip_prefix(QR_PREFIX) {
+            Some(q) => String::from(q),
+            None => {
+                put_data(&env, &qrdata, "error", "qrcode prefix error");
+                return JNI_FALSE;
+            }
+        };
+
         debug!("TOTP step <{}> , skew <{}>", step, skew);
         let decoder = match DaliQrCode::new(key, None, Some(step), Some(skew), None) {
             Ok(d) => d,
diff --git a/java/src/main/java/com/supwisdom/dlsmk/DLSMK.java b/java/src/main/java/com/supwisdom/dlsmk/DLSMK.java
index 916d7b2..d168587 100644
--- a/java/src/main/java/com/supwisdom/dlsmk/DLSMK.java
+++ b/java/src/main/java/com/supwisdom/dlsmk/DLSMK.java
@@ -36,7 +36,7 @@
         String key = "wDp3_3NPEi-R0peokVv010GkDk1mRTp3tUB_lCEVRAAABQo=";
 
         long systimeMillis = 1604469519L * 1000;
-        String qrcode = "Szgp1QkGFy0DJ6mPVg4wMuOE5XuSe7eZrocdPDAs_iq_H7xzb10vQJwRfk6hn6-_fa6SRKRKd00gExbAShJOTgAj2urAPuQm_NxATJs26I4u6khR74iK7oubHjY1Z6qg";
+        String qrcode = "DLSMK_Szgp1QkGFy0DJ6mPVg4wMuOE5XuSe7eZrocdPDAs_iq_H7xzb10vQJwRfk6hn6-_fa6SRKRKd00gExbAShJOTgAj2urAPuQm_NxATJs26I4u6khR74iK7oubHjY1Z6qg";
 
         Map<Object, Object> result = new HashMap();
         long curr = System.currentTimeMillis();
