2016-10-15 68 views
1

我目前在Xamarin.Forms項目中有以下內容。OnRequestPermissionsResult():找不到合適的方法來覆蓋

public class CameraPageRenderer : PageRenderer, ActivityCompat.IOnRequestPermissionsResultCallback { 
    ... 
    public override void OnRequestPermissionsResult(int requestCode, string[] permissions, Permission[] grantResults) { 
     Console.WriteLine("testing callback"); 
    } 
    ... 
} 

另外,我有以下要求相機的權限。

var perms = new string[] {Manifest.Permission.Camera}; 
ActivityCompat.RequestPermissions((Context as Activity), perms, 0); 

如果我從OnRequestPermissionsResult中刪除「覆蓋」,我沒有收到任何消息。留下來,我得到編譯錯誤「找不到合適的方法覆蓋」。

回答

2

你將要實現在ActivityActivityCompat.IOnRequestPermissionsResultCallback接口。否則,您需要爲ActivityCompat.RequestPermissions()方法提供應用程序Context/Activity

你可以閱讀更多在這裏:

https://developer.android.com/reference/android/support/v4/app/ActivityCompat.html#requestPermissions(android.app.Activity, java.lang.String[], int)

如果您的應用程序沒有請求權限的用戶將與UI呈現接受他們。在用戶接受或拒絕了所請求的權限後,您將收到一個回調報告,該權限是否被授予。您的活動必須執行ActivityCompat.OnRequestPermissionsResultCallback,並將權限請求的結果傳送到其onRequestPermissionsResult(int, String[], int[])方法。

+0

他正在將一個上下文傳遞給'ActivityCompat.RequestPermissions()'。這裏同樣的問題 –

相關問題