我正在使用Google的EasyPermissions庫。在我的應用程序中,我有兩個按鈕,一個用於錄製視頻,另一個用於捕獲圖像。由於兩者都需要相機權限,因此都使用@AfterPermissionGranted
進行註釋。這兩種方法在授予權限後運行
所以我的方法來記錄視頻看起來是這樣的:
@Override
@AfterPermissionGranted(RC_CAMERA_PERM)
public void openCameraToRecordVideo() {
if (EasyPermissions.hasPermissions(this, Manifest.permission.CAMERA, Manifest.permission.WRITE_EXTERNAL_STORAGE)) {
// Code here
}
同樣地,對於拍照:
@Override
@AfterPermissionGranted(RC_CAMERA_PERM)
public void openCameraToCaptureImage() {
if (EasyPermissions.hasPermissions(this, Manifest.permission.CAMERA, Manifest.permission.WRITE_EXTERNAL_STORAGE)) {
// Code here
}
他們都標註有權限,因爲我不知道是哪一個用戶會先點擊一下。
當用戶點擊一個按鈕並接受權限然後兩個方法一個接一個運行時會發生什麼。這顯然不是我想要的行爲。
我真的很感謝有關如何處理這種情況的任何幫助。 謝謝。
這幾乎是我最終做的。我添加了兩個布爾字段:'recordVideo'和'captureImage',並基於哪個按鈕被點擊,我將適當的字段設置爲true。然後,當'openCamera()'運行時,我檢查哪個字段是真實的,並啓動相應的openCameraXXX函數。感謝您的回答。 – Mes