{"id":2175,"date":"2017-07-01T20:58:01","date_gmt":"2017-07-01T12:58:01","guid":{"rendered":"http:\/\/learn-house.idv.tw\/?p=2175"},"modified":"2017-07-01T21:04:42","modified_gmt":"2017-07-01T13:04:42","slug":"android6-0%e4%bd%bf%e7%94%a8camera%e5%87%ba%e7%8f%befail-to-connect-to-camera-service","status":"publish","type":"post","link":"https:\/\/learn-house.idv.tw\/?p=2175","title":{"rendered":"[Android]6.0\u4f7f\u7528camera\u51fa\u73feFail to connect to camera service"},"content":{"rendered":"<p>MANIFEST PERMISSIONS WON&#8217;T WORK on Android 6.0<br \/>\n[java]<br \/>\nFailed to open camera<br \/>\njava.lang.RuntimeException: Fail to connect to camera service<br \/>\nat android.hardware.Camera.open(Camera.java:499)<br \/>\nat com.google.zxing.client.android.camera.open.OpenCameraInterface.open(OpenCameraInterface.java:83)<br \/>\nat com.journeyapps.barcodescanner.camera.CameraManager.open(CameraManager.java:121)<br \/>\nat com.journeyapps.barcodescanner.camera.CameraInstance$3.run(CameraInstance.java:158)<br \/>\nat android.os.Handler.handleCallback(Handler.java:739)<br \/>\nat android.os.Handler.dispatchMessage(Handler.java:95)<br \/>\nat android.os.Looper.loop(Looper.java:168)<br \/>\nat android.os.HandlerThread.run(HandlerThread.java:61)<br \/>\n[\/java]<br \/>\n<!--more--><br \/>\n\u89e3\u6c7a\u65b9\u6cd5\u53ea\u8981\u52a0\u5165\u4ee5\u4e0b\u7a0b\u5f0f\u78bc\u5373\u53ef<br \/>\n[java]<br \/>\n@Override<br \/>\nprotected void onStart() {<br \/>\n    super.onStart();<\/p>\n<p>    if (Build.VERSION.SDK_INT &gt;= Build.VERSION_CODES.M) {<br \/>\n        int hasCameraPermission = checkSelfPermission(Manifest.permission.CAMERA);<br \/>\n        List&lt;String&gt; permissions = new ArrayList&lt;String&gt;();<\/p>\n<p>        if (hasCameraPermission != PackageManager.PERMISSION_GRANTED) {<br \/>\n            permissions.add(Manifest.permission.CAMERA);<br \/>\n        }<br \/>\n        if (!permissions.isEmpty()) {<br \/>\n            requestPermissions(permissions.toArray(new String[permissions.size()]), 111);<br \/>\n        }<br \/>\n    }<br \/>\n}<br \/>\n[\/java]<br \/>\n[java]<br \/>\n@Override<br \/>\npublic void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) {<\/p>\n<p>    switch (requestCode) {<br \/>\n        case 111: {<br \/>\n            for (int i = 0; i &lt; permissions.length; i++) {<br \/>\n                if (grantResults[i] == PackageManager.PERMISSION_GRANTED) {<\/p>\n<p>                } else if (grantResults[i] == PackageManager.PERMISSION_DENIED) {<\/p>\n<p>                }<br \/>\n            }<br \/>\n        }<br \/>\n        break;<br \/>\n        default: {<br \/>\n            super.onRequestPermissionsResult(requestCode, permissions, grantResults);<br \/>\n        }<br \/>\n    }<br \/>\n}<br \/>\n[\/java]<\/p>\n","protected":false},"excerpt":{"rendered":"<p>MANIFEST PERMISSIONS WON&#8217;T WORK on Android 6.0 [j<span class=\"post-excerpt-end\">&hellip;<\/span><\/p>\n<p class=\"more-link\"><a href=\"https:\/\/learn-house.idv.tw\/?p=2175\" class=\"themebutton\">Read More<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[5],"tags":[],"class_list":["post-2175","post","type-post","status-publish","format-standard","hentry","category-5"],"_links":{"self":[{"href":"https:\/\/learn-house.idv.tw\/index.php?rest_route=\/wp\/v2\/posts\/2175","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/learn-house.idv.tw\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/learn-house.idv.tw\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/learn-house.idv.tw\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/learn-house.idv.tw\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2175"}],"version-history":[{"count":0,"href":"https:\/\/learn-house.idv.tw\/index.php?rest_route=\/wp\/v2\/posts\/2175\/revisions"}],"wp:attachment":[{"href":"https:\/\/learn-house.idv.tw\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2175"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/learn-house.idv.tw\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2175"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/learn-house.idv.tw\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2175"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}