2017-08-10 35 views
1

我试图在我的应用程序中在Brother SDK中打印图像。JNI在Brother SDK上应用程序中检测到错误

这是我的代码:

 `myPrinterInfo = myPrinter.getPrinterInfo(); 
     myPrinterInfo.printerModel = PrinterInfo.Model.QL_810W; 
     myPrinterInfo.port = PrinterInfo.Port.NET; 
     myPrinterInfo.printMode = PrinterInfo.PrintMode.FIT_TO_PAGE; 
     myPrinterInfo.paperSize = PrinterInfo.PaperSize.CUSTOM; 
     myPrinterInfo.labelNameIndex = 5; 
     myPrinterInfo.isAutoCut = false; 
     myPrinterInfo.isCutAtEnd = false; 
     myPrinterInfo.orientation = PrinterInfo.Orientation.PORTRAIT; 
     myPrinterInfo.valign = PrinterInfo.VAlign.TOP; 
     myPrinterInfo.align = PrinterInfo.Align.LEFT; 
     myPrinterInfo.halftone = PrinterInfo.Halftone.THRESHOLD; 
     myPrinterInfo.ipAddress = "192.168.1.146"; 
     myPrinterInfo.thresholdingValue = 127; 
     myPrinterInfo.pjCarbon = false; 
     myPrinterInfo.pjDensity = 5; 
     myPrinterInfo.pjFeedMode = PrinterInfo.PjFeedMode.PJ_FEED_MODE_FIXEDPAGE; 
     myPrinterInfo.pjPaperKind = PJ_CUT_PAPER; 
     myPrinterInfo.rollPrinterCase = PrinterInfo.PjRollCase.PJ_ROLLCASE_OFF; 
     myPrinterInfo.paperPosition = PrinterInfo.Align.CENTER; 
     myPrinterInfo.numberOfCopies = 1; 

进出口使用的62mmx100mm纸卷和我得到这个错误信息:

JNI检测到的错误应用:GetStringUTFChars收到NULL的jstring 08-10 17 :33:18.882 31333-31584/br.com.squarebits.brothertest E/art:调用GetStringUTFChars 08-10 17:33:18.882 31333-31584/br.com.squarebits.brothertest E/art:from boolean com .brother.ptouch.sdk.JNIWrapper.writeByteInFile(int [],int,java.lang.String ,布尔值) 08-10 17:33:18.882 31333-31584/br.com.squarebits.brothertest E/art:“AsyncTask#1”prio = 5 tid = 10 Runnable 08-10 17:33:18.882 31333- 31584/br.com.squarebits.brothertest E/art:| group =“main”sCount = 0 dsCount = 0 obj = 0x12c99460 self = 0xe9594500 08-10 17:33:18.882 31333-31584/br.com.squarebits.brothertest E/art: sysTid = 31584 nice = 10 cgrp = bg_non_interactive sched = 0/0 handle = 0xe0b65930 08-10 17:33:18.882 31333-31584/br.com.squarebits.brothertest E/art: state = R schedstat =(80462688 29252686 258)utm = 5 stm = 3 core = 2 HZ = 100 08-10 17:33:18.882 31333-31584/br.com.squarebits.brothertest E/art: stack = 0xe0a63000-0xe0a65000 stackSize = 1038KB 08-10 17:33:18.882 31333-31584/br.com.squarebits.brothertest E/art:| (共享举行) 08-10 17:33:18.882 31333-31584/br.com.squarebits.brothertest E/art:native:#00 pc 0035adcf /system/lib/libart.so( _ZN3art15DumpNativeStackERNSt3__113basic_ostreamIcNS0_11char_traitsIcEEEEiPKcPNS_9ArtMethodEPv + 126) 08-10 17:33:18.882 31333-31584/br.com.squarebits.brothertest E /艺术:天然:#01 PC 0033bdeb /system/lib/libart.so(_ZNK3art6Thread4DumpERNSt3__113basic_ostreamIcNS1_11char_traitsIcEEEE + 138) 08- 10 17:33:18.882 31333-31584/br.com.squarebits.brothertest E/art:native:#02 pc 0024ef71 /system/lib/libart.so(ZN3art9JavaVMExt8JniAbortEPKcS2 +900) 08-10 17:33: 18.882 31333-31584/br.com.squarebits.brothertest E/art:native:#03 pc 0024f607 /system/lib/libart.so(_ZN3art9JavaVMExt9JniAbortVEPKcS2_St9__va_list + 54) 08-10 17:33:18 .882 31333-31584/br.com.squarebits.brothertest E/art:native:#04 pc 000fbe5d /system/lib/libart.so(_ZN3art11ScopedCheck6AbortFEPKcz + 28) 08-10 17:33:18.882 31333-31584/br .com.squarebits.brothertest E/art:native:#05 pc 001003b9 /system/lib/libart.so(_ZN3art11ScopedCheck5CheckERNS_18ScopedObjectAccessEbPKcPNS_12JniValueTypeE.constprop.95 + 2676) 08-10 17:33:18.883 31333-31584/br.com。 squarebits.brothertest E /艺术:本机:#06件00108cd5 /system/lib/libart.so(_ZN3art8CheckJNI17GetStringUTFCharsEP7_JNIEnvP8_jstringPh + 376)

如果有人知道如何解决它,请帮我:(

回答

0

我今天有类似的问题,结果是androi未授予d.permission.WRITE_EXTERNAL_STORAGE权限。如果您正在运行Android 6或更高版本,请检查您的run time permissions以写入外部存储器。在清单中声明权限是不够的。兄弟文件暗示在manual的末尾。

8.3。 Android 6兼容性自Android 6.0以来,用户可以在安装后更改应用程序的权限。必须授予Android外部存储使用此 应用程序的权限才能访问 。

相关问题