2017-09-13 91 views
1

发布应用程序的Android错误,我做了一个应用程序中,我使用EPSON Printer SDK 因此,有我有爱普生热敏打印机的一些库文件,我使用他们在我的应用程序在使用ProGuard

所以在这里应用程序正在运行成功,我打印

现在,我做了我的apk的发行版中的数据,并签署

我的应用程序是在不同的包(com.mytest.mapp)和打印机在其他包(com.epson .epos2_printer)和我正在使用库libepos2.so

所以它的崩溃,当我尝试打印的应用程序

我跟很多proguard的形式和我在proguard-rules

-keep class com.epson.epos2** { 
    *; 
} 

添加了这个,但我仍面临着同样的问题,当minifyEnabled true

如果其假它的工作正常发布版本可以任何1建议我什么我缺少的EPSON SDK库

这是我的错误日志

No pending exception expected: java.lang.ClassNotFoundException: Didn't find class "com.epson.epsonio.bluetooth.NetBt" on path: DexPathList[[zip file "/data/app/com.mytest.mapp-1/base.apk"],nativeLibraryDirectories=[/data/app/com.mytest.mapp-1/lib/arm, /vendor/lib, /system/lib]] 
    at java.lang.Class dalvik.system.BaseDexClassLoader.findClass(java.lang.String) (BaseDexClassLoader.java:56) 
    at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String, boolean) (ClassLoader.java:511) 
    at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String) (ClassLoader.java:469) 
    at java.lang.String java.lang.Runtime.nativeLoad(java.lang.String, java.lang.ClassLoader, java.lang.String) (Runtime.java:-2) 
    at java.lang.String java.lang.Runtime.doLoad(java.lang.String, java.lang.ClassLoader) (Runtime.java:428) 
    at void java.lang.Runtime.loadLibrary(java.lang.String, java.lang.ClassLoader) (Runtime.java:369) 
    at void java.lang.System.loadLibrary(java.lang.String) (System.java:989) 
    at void com.epson.epos2.discovery.Discovery.<clinit>() ((null):-1) 
    at void com.mytest.mapp.pdata.PrintMActivity.onCreate(android.os.Bundle) ((null):-1) 
    at void android.app.Activity.performCreate(android.os.Bundle) (Activity.java:6289) 
    at void android.app.Instrumentation.callActivityOnCreate(android.app.Activity, android.os.Bundle) (Instrumentation.java:1119) 
    at android.app.Activity android.app.ActivityThread.performLaunchActivity(android.app.ActivityThread$ActivityClientRecord, android.content.Intent) (ActivityThread.java:2655) 
    at void android.app.ActivityThread.handleLaunchActivity(android.app.ActivityThread$ActivityClientRecord, android.content.Intent) (ActivityThread.java:2767) 
    at void android.app.ActivityThread.access$900(android.app.ActivityThread, android.app.ActivityThread$ActivityClientRecord, android.content.Intent) (ActivityThread.java:177) 
    at void android.app.ActivityThread$H.handleMessage(android.os.Message) (ActivityThread.java:1449) 
    at void android.os.Handler.dispatchMessage(android.os.Message) (Handler.java:102) 
    at void android.os.Looper.loop() (Looper.java:145) 
    at void android.app.ActivityThread.main(java.lang.String[]) (ActivityThread.java:5951) 
    at java.lang.Object java.lang.reflect.Method.invoke!(java.lang.Object, java.lang.Object[], boolean) (Method.java:-2) 
    at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:372) 
    at void com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run() (ZygoteInit.java:1400) 
    at void com.android.internal.os.ZygoteInit.main(java.lang.String[]) (ZygoteInit.java:1195) 
+0

帖子崩溃日志。 –

+0

你有什么错误? –

+0

是否有任何常量或实用程序类,例如您正在使用此库的JavaBeans? – shadygoneinsane

回答

1

我也得到了同样的错误使用蓝牙打印机和Epson打印机..最好使用

-ignorewarnings/-dontwarn class/package name 
-keep class * { 
    public private *; 
} 

点忘记保持我们的类/包名

希望这个作品

+0

谢谢它的工作 – MLN