android拍照demo
『壹』 做了一個Android的demo實現頭像裁剪上傳,但是拍照完成後出現如下圖問題,圖庫也一樣大神們幫忙看看
實現思維路徑:
以進入相機拍照的思維路線為例子:
1.進入app
2.判斷之前是否保存頭像,如果有就顯示歷史圖像 (下面代碼中在getOldAvatar();方法中執行這個邏輯)
3.點擊更換圖像的Button或者布局,啟動對話框(下面代碼中在dialogueBox();方法執行這個邏輯)
4.系統版本判斷授權方式(靜態還是動態授權),判斷之前是否已經授權 (setPermissions(Permissions_CAMERA_KEY);這個方法執行授權邏輯)
5.如果是首次授權,就執行首次授權完成後馬上運行的回調方法 onRequestPermissionsResult
5.判斷完成不管是否是首次授權還是之前就是授權過了都要執行enterCamera();方法啟動相機並且發送攜帶數據的請求
6.啟動相機完成後,並且拍照完成退出相機,都要運行Intent返回數據請求回調方法onActivityResult。將傳入的數據傳入到cropPhoto(data.getData());方法里去執行圖片剪裁。
7.在cropPhoto方法里將攜帶數據跳轉到裁剪界面中裁剪圖片,裁剪完成後又要回到onActivityResult回調方法里,執行裁剪完的數據回調工作。
8.在onActivityResult回調方法里,裁剪完的圖片將運行setPicToView 方法保存圖片。保存的圖片將在下次啟動activity時作為歷史頭像調用。
package com.example.lenovo.mydemoapp;
import android.app.Activity;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.drawable.BitmapDrawable;
import android.graphics.drawable.Drawable;
import android.net.Uri;
import android.os.Build;
import android.os.Environment;
import android.os.StrictMode;
import android.provider.MediaStore;
import android.support.annotation.NonNull;
import android.support.v4.app.ActivityCompat;
import android.support.v4.content.ContextCompat;
import android.support.v7.app.AlertDialog;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.TextView;
import android.widget.Toast;
『貳』 Android app製作,有一個demo,是分享照片到微信的,可以分享照片也可以拍照分享,可是一拍照就崩潰
飛機不怕遭雷劈
最近西雅圖兩架飛機被閃電擊中,但飛機和乘客都安然無恙,有人說飛機都有防雷裝置,所以不怕遭雷劈,果真如此?
真假求真相
『叄』 android 怎麼從相機上傳照片demo
DEMO的時候. 在控制台輸入: record空格X(X代表你DEMO的名稱)回車.錄像開始. stop停止錄像. playdemo空格X(播放你所有的DEMO.X代表DEMO的名稱) 停止後在你CS/反恐精英/目錄下搜索DEMO的名子.
『肆』 android 怎麼實現同時支持拍照和錄像的功能啊
可以拿到每幀的數據自己做編解碼和存儲,錄像還好,拍照的話只能存儲preview的一幀畫面,而不能用系統拍照函數得到高解析度圖片數據。想在錄像的時候同時可以拍高質量圖片做不到,因為系統拍照的功能會停止preview,而停止preview後就不能錄像了。
『伍』 【Android】使用CameraX實現拍照和錄制視頻
AndroidX是Jetpack包下的組件,谷歌幫你考慮好了很多細節,用就完事了。這些細節想自己設置的話也可以,不設置使用默認值照樣很舒服。
在 Manifest 的 manifest 節點下中加入以下內容:
在 manifest 標簽裡面加入一條屬性:
畫黃線不理,如果不加這句,在Android Q上會無法往相冊存儲文件。
這里參考官方Demo的寫法,最底部圖層是一個 PreviewView 用來預覽,上層放兩個按鈕,一個用來拍照,一個用來錄像。
在 onCreate 里開始主要邏輯。如果已有許可權,開啟相機預覽。
在請求許可權返回的時候,判斷是否已有許可權,如果有了就可以開啟預覽了
開啟預覽,把預覽內容放進 PreviewView 里。
監聽,寫在Activity外面
再在Activity裡面寫一個內部類
界面銷毀時關閉線程
Github CameraX-Demo
Google CameraX 開發文檔
掘金-JetPack之使用CameraX完成拍照和拍視頻