我有以下代码,captureOutput
函数不会停止运行。因此,prepare(for segue)
函数也未执行。
这是我的控制台输出:
2017-07-14 13:15:50.142147 [9101:1993811] [MC]从公共有效用户设置中读取。 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 致命错误:索引超出范围(lldb)
答案 0 :(得分:0)
您似乎正在捕获某些媒体,因此它会不断捕获数据给您。
未捕获元数据后,metadataObjects[0]
会导致崩溃。
在使用metadataObjects.count
之前检查metadataObjects[0]
!
答案 1 :(得分:0)
您需要手动停止运行先前建立的capturesession。示例代码如下所示 -
public class cut {
public static void main(String[] args) {
String myString = "/DT_Gateway/gateway/ACC/input/..";
String newString = myString.substring(myString.lastIndexOf("/")+1, myString.indexOf("/.."));
System.out.println(newString);
}
}
在任何if语句中获得条形码扫描结果并确定扫描完成后,您将不得不停止捕获会话。我假设你的metadatobj有一个非零字符串值,然后在示例中停止了capturesession。