├── settings.gradle ├── app ├── src │ └── main │ │ ├── jni │ │ ├── Android.mk │ │ ├── prebuild │ │ │ ├── wlttobmp.a │ │ │ └── Android.mk │ │ ├── Application.mk │ │ ├── decode │ │ │ ├── Android.mk │ │ │ ├── Wlt2BmpUtils.h │ │ │ └── Wlt2BmpUtils.cpp │ │ ├── decodetools │ │ │ ├── Android.mk │ │ │ ├── DecodePhoto.h │ │ │ └── DecodePhoto.cpp │ │ └── common │ │ │ ├── Android_Log.h │ │ │ └── BitmapFile.h │ │ ├── libs │ │ ├── armeabi │ │ │ └── libWlt2Bmp.so │ │ └── armeabi-v7a │ │ │ └── libWlt2Bmp.so │ │ ├── res │ │ ├── drawable-hdpi │ │ │ └── ic_launcher.png │ │ ├── drawable-mdpi │ │ │ └── ic_launcher.png │ │ ├── drawable-xhdpi │ │ │ └── ic_launcher.png │ │ ├── drawable-xxhdpi │ │ │ └── ic_launcher.png │ │ ├── values │ │ │ ├── dimens.xml │ │ │ ├── strings.xml │ │ │ └── styles.xml │ │ ├── values-v11 │ │ │ └── styles.xml │ │ ├── menu │ │ │ └── main.xml │ │ ├── values-w820dp │ │ │ └── dimens.xml │ │ ├── values-v14 │ │ │ └── styles.xml │ │ └── layout │ │ │ └── activity_main.xml │ │ ├── java │ │ └── com │ │ │ └── sabirjan │ │ │ ├── reader │ │ │ └── tools │ │ │ │ ├── WltDecodeUtil.java │ │ │ │ ├── Tool.java │ │ │ │ └── HexUtil.java │ │ │ └── wlt2bmpdemo │ │ │ ├── MainActivity.java │ │ │ └── TempGlobal.java │ │ └── AndroidManifest.xml └── build.gradle ├── gradle └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── README.md ├── .gitignore ├── LICENSE ├── import-summary.txt ├── gradlew.bat └── gradlew /settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | -------------------------------------------------------------------------------- /app/src/main/jni/Android.mk: -------------------------------------------------------------------------------- 1 | include $(call all-subdir-makefiles) -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BadDeveloper2022/WLT2Bmp_Android/HEAD/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /app/src/main/jni/prebuild/wlttobmp.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BadDeveloper2022/WLT2Bmp_Android/HEAD/app/src/main/jni/prebuild/wlttobmp.a -------------------------------------------------------------------------------- /app/src/main/libs/armeabi/libWlt2Bmp.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BadDeveloper2022/WLT2Bmp_Android/HEAD/app/src/main/libs/armeabi/libWlt2Bmp.so -------------------------------------------------------------------------------- /app/src/main/libs/armeabi-v7a/libWlt2Bmp.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BadDeveloper2022/WLT2Bmp_Android/HEAD/app/src/main/libs/armeabi-v7a/libWlt2Bmp.so -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # WLT2Bmp_Android 2 | ### WLT2Bmp,WLT图片解码,身份证照相解码,身份证图片解码 3 | ### 暂不支持64位手机,我看了市场上比较流行的卡尔和其他阅读器,都暂不支持64位手机解码 4 | ### 继续研究中.... 5 | ### 《Star》 一下吧! 6 | -------------------------------------------------------------------------------- /app/src/main/res/drawable-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BadDeveloper2022/WLT2Bmp_Android/HEAD/app/src/main/res/drawable-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BadDeveloper2022/WLT2Bmp_Android/HEAD/app/src/main/res/drawable-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BadDeveloper2022/WLT2Bmp_Android/HEAD/app/src/main/res/drawable-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BadDeveloper2022/WLT2Bmp_Android/HEAD/app/src/main/res/drawable-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/values/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 16dp 5 | 16dp 6 | 7 | 8 | -------------------------------------------------------------------------------- /app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | WLT解码 5 | Hello world! 6 | Settings 7 | 8 | 9 | -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Mon Nov 06 16:31:07 CST 2017 2 | distributionBase=GRADLE_USER_HOME 3 | distributionPath=wrapper/dists 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip 7 | -------------------------------------------------------------------------------- /app/src/main/jni/Application.mk: -------------------------------------------------------------------------------- 1 | APP_CFLAGS += -Wno-error=format-security 2 | # 'x86', 'x86_64', 'arm64-v8a' 3 | #APP_ABI := armeabi-v7a armeabi 4 | #APP_ABI := armeabi,armeabi-v7a 5 | ##all #x86_64 arm64-v8a 6 | #armeabi-v7a armeabi arm64-v8a 7 | #x86 #x86_64 arm64-v8a 8 | APP_ABI := armeabi armeabi-v7a -------------------------------------------------------------------------------- /app/src/main/java/com/sabirjan/reader/tools/WltDecodeUtil.java: -------------------------------------------------------------------------------- 1 | package com.sabirjan.reader.tools; 2 | /** 3 | * Created by Sabirjan on 2017/11/6. 4 | * WltDecodeUtil. 5 | * 新疆精灵通电子科技有限公司 6 | */ 7 | public class WltDecodeUtil { 8 | 9 | public native int Wlt2Bmp(byte[] wlt,byte[] bmp); 10 | static{ 11 | System.loadLibrary("Wlt2Bmp"); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /app/src/main/res/values-v11/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 7 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /app/src/main/jni/decode/Android.mk: -------------------------------------------------------------------------------- 1 | LOCAL_PATH := $(call my-dir) 2 | 3 | include $(CLEAR_VARS) 4 | # define so output folder 5 | #NDK_APP_DST_DIR := libs/$(TARGET_ARCH_ABI)/usb 6 | 7 | LOCAL_MODULE := Wlt2Bmp 8 | LOCAL_SRC_FILES += \ 9 | ./Wlt2BmpUtils.cpp \ 10 | 11 | LOCAL_LDLIBS += -llog 12 | 13 | LOCAL_STATIC_LIBRARIES := \ 14 | usbidcard \ 15 | 16 | include $(BUILD_SHARED_LIBRARY) 17 | 18 | 19 | -------------------------------------------------------------------------------- /app/src/main/res/menu/main.xml: -------------------------------------------------------------------------------- 1 | 4 | 5 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /app/src/main/jni/decodetools/Android.mk: -------------------------------------------------------------------------------- 1 | LOCAL_PATH := $(call my-dir) 2 | 3 | include $(CLEAR_VARS) 4 | # define so output folder 5 | #NDK_APP_DST_DIR := libs/$(TARGET_ARCH_ABI)/usb 6 | 7 | LOCAL_MODULE := usbidcard 8 | LOCAL_SRC_FILES += \ 9 | DecodePhoto.cpp \ 10 | 11 | 12 | LOCAL_LDLIBS += -L$(SYSROOT)/usr/lib -llog 13 | 14 | LOCAL_STATIC_LIBRARIES := \ 15 | wlttobmp \ 16 | 17 | include $(BUILD_STATIC_LIBRARY) 18 | 19 | 20 | -------------------------------------------------------------------------------- /app/src/main/res/values-w820dp/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 8 | 64dp 9 | 10 | 11 | -------------------------------------------------------------------------------- /app/src/main/res/values-v14/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 8 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /app/src/main/jni/decodetools/DecodePhoto.h: -------------------------------------------------------------------------------- 1 | /* 2 | * DecodePhoto.h 3 | * 4 | * Created on: 2017-11-05 5 | * Author: Sabirjan 6 | */ 7 | 8 | #ifndef DECODEPHOTO_H_ 9 | #define DECODEPHOTO_H_ 10 | #include 11 | #include 12 | #include 13 | typedef int * HMODULE; 14 | typedef int (*Unpack)(const char*, const char*, int); 15 | int Loaddl(); 16 | int CallWlt2Bmp(char* wltPath, char* bmpPath); 17 | int CallWlt2BmpBytes(char *wlt, char *bmp); 18 | #endif 19 | -------------------------------------------------------------------------------- /app/src/main/jni/decode/Wlt2BmpUtils.h: -------------------------------------------------------------------------------- 1 | /* DO NOT EDIT THIS FILE - it is machine generated */ 2 | #include 3 | /* Header for class com_sabirjan_reader_tools_WltDecodeUtil_Wlt2Bmp */ 4 | 5 | #ifndef _Included_com_sabirjan_reader_tools_WltDecodeUtil_Wlt2Bmp 6 | #define _Included_com_sabirjan_reader_tools_WltDecodeUtil_Wlt2Bmp 7 | #ifdef __cplusplus 8 | extern "C" { 9 | #endif 10 | 11 | JNIEXPORT jint JNICALL Java_com_sabirjan_reader_tools_WltDecodeUtil_Wlt2Bmp 12 | (JNIEnv *, jobject,jbyteArray,jbyteArray); 13 | 14 | #ifdef __cplusplus 15 | } 16 | #endif 17 | #endif 18 | -------------------------------------------------------------------------------- /app/src/main/jni/decodetools/DecodePhoto.cpp: -------------------------------------------------------------------------------- 1 | /* 2 | * DecodePhoto.cpp 3 | * 4 | * Created on: 2017-11-05 5 | * Author: Sabirjan 6 | */ 7 | #include "DecodePhoto.h" 8 | #include "../common/Android_Log.h" 9 | #include 10 | #include 11 | #include 12 | #include 13 | 14 | HMODULE hModuleWltRS = NULL; 15 | Unpack unpackWltRS = 0; 16 | int unpack(char *src,char *dst,int bmpSave); 17 | 18 | int CallWlt2BmpBytes(char *wlt, char *bmp) { 19 | 20 | jint result; 21 | LOGE(">> ------CallWlt2BmpBytes"); 22 | result = unpack(wlt, bmp, 0); 23 | LOGE("CallWlt2BmpBytes(),unpack complete!unpack result = %d", result); 24 | return result; 25 | 26 | } -------------------------------------------------------------------------------- /app/src/main/jni/common/Android_Log.h: -------------------------------------------------------------------------------- 1 | 2 | #ifndef ANDROID_LOG_H_ 3 | #define ANDROID_LOG_H_ 4 | 5 | #include "android/log.h" 6 | #include 7 | #include 8 | #include 9 | 10 | static const char * TAG="Wlt2Bmp_native"; 11 | #define LOGI(fmt, args...) __android_log_print(ANDROID_LOG_INFO, TAG, fmt, ##args) 12 | #define LOGW(fmt, args...) __android_log_print(ANDROID_LOG_WARN, TAG, fmt, ##args) 13 | #define LOGD(fmt, args...) __android_log_print(ANDROID_LOG_DEBUG, TAG, fmt, ##args) 14 | #define LOGE(fmt, args...) __android_log_print(ANDROID_LOG_ERROR, TAG, fmt, ##args) 15 | 16 | void Logfile(const char* fmt,...); 17 | 18 | bool Read2WriteConfig(bool isRead,char *tag,char *result); 19 | 20 | 21 | #endif 22 | 23 | -------------------------------------------------------------------------------- /app/src/main/res/layout/activity_main.xml: -------------------------------------------------------------------------------- 1 | 7 | 8 | 9 |