Java JNI在Brother SDK上的应用程序中检测到错误

Java JNI在Brother SDK上的应用程序中检测到错误,java,android,printing,android-ndk,brother-bpac,Java,Android,Printing,Android Ndk,Brother Bpac,我正在尝试在我的应用程序中的Brother SDK中打印图像 这是我的代码: `myPrinterInfo = myPrinter.getPrinterInfo(); myPrinterInfo.printerModel = PrinterInfo.Model.QL_810W; myPrinterInfo.port = PrinterInfo.Port.NET; myPrinterInfo.printMode = PrinterInf

我正在尝试在我的应用程序中的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接收到空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.writebyteinfle(int[],int,java.lang.String,boolean) 08-10 17:33:18.882 31333-31584/br.com.squarebits.brothertest E/art:“异步任务#1”优先级=5 tid=10可运行 08-10 17:33:18.882 31333-31584/br.com.squarebits.brothertest E/art:| group=“main”scont=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_非交互式sched=0/0 handle=0xe0b65930 2008-10 17:33:18.882 31333-31584/br.com.squarebits.brothertest E/art:| state=R schedstat=(80462688 29252686 258)utm=5 stm=3芯=2赫兹=100 08-10 17:33:18.882 31333-31584/br.com.squarebits.brothertest E/art:|堆栈=0xe0a63000-0xe0a65000堆栈大小=1038KB 08-10 17:33:18.882 31333-31584/br.com.squarebits.brothertest E/art:|保持互斥体=“mutator lock”(共享保持) 08-10 17:33:18.882 31333-31584/br.com.squarebits.brothertest E/art:native:#00 pc 0035adcf/system/lib/libart.so(_ZN3art15DumpNativeStackERNSt3___113; u ostreamIcNS0_11char_traitsceeeipkcpns_9ArtMethodEPv+126) 08-10 17:33:18.882 31333-31584/br.com.squarebits.brothertest E/art:native:#01 pc 0033bdeb/system/lib/libart.so(_ZNK3art6Thread4DumpERNSt3_113; u基本_ostreamIcNS1_11; char traitsieceee+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_18 scopedobjectaccessebpkcpns_12jnivaluetype.constprop.95+2676) 08-10 17:33:18.883 31333-31584/br.com.squarebits.brothertest E/art:native:#06 pc 00108cd5/system/lib/libart.so(_ZN3art8CheckJNI17GetStringUTFCharsEP7_JNIEnvP8_jstringPh+376)


如果有人知道如何修复它,请帮助我:(

我今天遇到了一个类似的问题,结果是没有授予android.permission.WRITE_EXTERNAL_存储权限。如果您在和android 6或更高版本上运行,请检查您是否写入外部存储。在清单中声明权限是不够的。brother文档在结束时对此进行了提示

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


伟大的发现,为兄弟如此糟糕的处理方式感到羞耻-没有有用的信息或任何东西。