91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Android拍照流程

發布時間:2020-08-04 14:34:33 來源:網絡 閱讀:414 作者:Spi08Breaker 欄目:移動開發

        Android應用中拍照和錄制視頻都需要Surface,所以需要創建在Activiy中存在SurfaceView或者VideoView,可以在xml中配置,在代碼中加載。同時主Activity中需要implements SurfaceHolder.Callback,實現其中的surfaceCreate, surfaceChanged, surfaceDestoryed三個方法。具體流程如下

       First:

            SurfaceView mSurfaceView = (SurfaceView)findViewById(R.id.surfaceview);

            SurfaceHolder mHolder = mSurfaceView.getHolder();

            mHolder.addCallback(this);

       當調用addCallback的時候,就會觸發SurfaceHolder.Callback回調,執行surfaceCreate方法,可以在surfaceCreate中做一些初始化。

       Second:

            打開攝像頭,進行初始化。如: 

            Camera mCamera = Camera.open();

            mCamera.setPreviewDisplay(mHolder);

       當surfaceview被覆蓋或者應用結束退出時,surface會destory,執行surfaceDestoryed回調,可以在該回調中釋放Camera,如:

             mCamera.stopPrevew();

             mCamera.release();

             mCamera = null;

         Thrid:

            進行拍照時,調用takePicture接口,傳入callback參數,并在最后一個callback中獲取byte[] data,并將數據以jpg文件格式保存,如下所示:

             mCamera.takePicture(new ShutterCallback(){}, new PictureCallback(){},new PictureCallback(){}, new PictureCallback(){public void onPictureTaken(byte[] data, Camera camera) {save(data)} });

            在save方法中通過流輸出到指定路徑:

             File mediaStoragePath = new File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES), "PicFiles");

             String fileName = mediaStoragePath.getPath() + File.sperator + "PIC_" + System.currentTimeMills() + ".jpg";

             File pictureFile = new File(fileName);

             FileOutputStream fos = new FileOutputStream(picture);

             fos.write(data);

             fos.close();

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

图们市| 双鸭山市| 常山县| 宝兴县| 通山县| 永泰县| 苏尼特右旗| 观塘区| 平邑县| 邢台县| 长沙县| 乌什县| 绥芬河市| 都匀市| 奉化市| 凭祥市| 新巴尔虎右旗| 开远市| 延边| 芮城县| 克什克腾旗| 白玉县| 申扎县| 丹凤县| 阿克苏市| 祁连县| 米易县| 西峡县| 九江市| 南投县| 工布江达县| 昭觉县| 建湖县| 南涧| 巴东县| 重庆市| 东乡县| 深水埗区| 紫金县| 孟连| 建瓯市|