我试图通过安卓设备的摄像头获取图像,使用actionList,我总是得到以下错误。我哪里错了?
这里我的代码:
procedure TMain.BtnTakePhotoClick(Sender: TObject);
var
Service: IFMXCameraService;
Params : TParamsPhotoQuery;
begin
if TPlatformServices.Current.SupportsPlatformService(IFMXCameraService,Service) then
begin
Params.Editable := True;
// Specifies whether to save a picture to device Photo Library
Params.NeedSaveToAlbum := True;
Params.RequiredResolution := TSize.Create(640, 640);
Params.OnDidFinishTaking := TakePhotoFromCameraAction1DidFinishTaking;
Service.TakePhoto(BtnTakePhoto, Params);
end
else
ShowMessage('This device does not support the camera service');
end;
OnformCreate Permission:
procedure TMain.FormCreate(Sender: TObject);
var
VCam, VRead, VWrite: string;
begin
// Request permissions
VCam := JStringToString(TJManifest_permission.JavaClass.CAMERA);
VRead := JStringToString(TJManifest_permission.JavaClass.READ_EXTERNAL_STORAGE);
VWrite := JStringToString(TJManifest_permission.JavaClass.WRITE_EXTERNAL_STORAGE);
PermissionsService.RequestPermissions([VCam, VRead, VWrite], PermissionRequestResult, DisplayRationale);
end;
I always receive: There is no overloaded version of 'RequestPermission'.
Waht i'm doing wrong?
Thank you.
发布于 2022-02-19 10:52:40
您可能使用了旧的声明,就像这样很好:
PROCEDURE PermissionRequestResult( Sender : TObject;
const APermissions : TClassicStringDynArray;
const AGrantResults : TClassicPermissionStatusDynArray);
PROCEDURE DisplayRationale( Sender : TObject;
const APermissions : TClassicStringDynArray;
const APostRationaleProc : TProc);
https://stackoverflow.com/questions/71176863
复制相似问题