FMX.AddressBook.TCustomAddressBook.RequestPermission
Delphi
procedure RequestPermission;
C++
void __fastcall RequestPermission(void);
プロパティ
種類 | 可視性 | ソース | ユニット | 親 |
---|---|---|---|---|
procedure function |
public | FMX.AddressBook.pas FMX.AddressBook.hpp |
FMX.AddressBook | TCustomAddressBook |
説明
デバイスのアドレス帳にアクセスするための要求を送信します。
このメソッドを使用すると、デバイスのアドレス帳にアクセスするための要求を送信できます。システムの応答を処理するには、OnPermissionRequest イベント ハンドラを使用します。
重要: RequestPermission メソッドは、デバイスのアドレス帳のあらゆる機能にアクセスする前に呼び出さなければなりません。そうしないと、アプリケーションはデバイスのアドレス帳を扱うことができず、機能しなくなるおそれがあります。たとえば、TForm.onShow イベントのハンドラで RequestPermission メソッドを呼び出すことができます。
メモ: iOS デバイスでは、RequestPermission は非同期メソッドです。
例
具体的に説明するために、以下の例を考えてみましょう。これらのサンプル コードでは、デバイスのアドレス帳にアクセスする権限を要求するように OnShow イベントと OnPermissionRequest イベントのハンドラを実装する方法を示しています。
Delphi の場合:
procedure TForm1.FormShow(Sender: TObject);
begin
AddressBook1.RequestPermission;
end;
procedure TForm1.AddressBook1PermissionRequest(ASender: TObject;
const AMessage: string; const AAccessGranted: Boolean);
begin
if AAccessGranted then
begin
// Do something with Address Book
end
else
ShowMessage('You cannot access Address Book. Reason: ' + sLineBreak + AMessage);
end;
C++Builder の場合:
void __fastcall TForm1::FormShow(TObject *Sender) {
AddressBook1->RequestPermission();
}
void __fastcall TForm1::AddressBook1PermissionRequest(TObject *ASender,
const UnicodeString AMessage, const bool AAccessGranted) {
if (AAccessGranted) {
// Do something with Address Book
}
else {
ShowMessage("You cannot access Address Book. Reason: " + sLineBreak + AMessage);
}
}
詳細とサンプルについては、「モバイル チュートリアル:アドレス帳コンポーネントを使用する(iOS および Android)」を参照してください。