Func不会停止运行

时间:2017-07-14 09:21:28

标签: ios swift

我有以下代码,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)

2 个答案:

答案 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。