Object Storage Service (OSS) SDK for Androidは、特定のオブジェクトがバケットに存在するかどうかを確認するための便利な同期APIを提供します。
使用上の注意
オブジェクトが存在するかどうかを判断するには、
oss:GetObject
権限が必要です。 詳細については、「RAMユーザーへのカスタムポリシーのアタッチ」をご参照ください。このトピックのサンプルコードを実行する前に、カスタムドメイン名やSecurity Token Service (STS) などの方法を使用してOSSClientインスタンスを作成する必要があります。 詳細については、「初期化」をご参照ください。
例
次のサンプルコードは、exampleobject.txtという名前のオブジェクトがexamplebucketという名前のバケットに存在するかどうかを判断する方法の例を示しています。
try {
// Specify the name of the bucket and the full path of the object. In this example, the bucket name is examplebucket and the full path of the object is exampledir/exampleobject.txt. Do not include the bucket name in the full path.
if (oss.doesObjectExist("examplebucket", "exampledir/exampleobject.txt")) {
Log.d("doesObjectExist", "object exist.");
} else {
Log.d("doesObjectExist", "object does not exist.");
}
} catch (ClientException e) {
// Handle client exceptions, such as network exceptions.
e.printStackTrace();
} catch (ServiceException e) {
// Handle service exceptions.
Log.e("ErrorCode", e.getErrorCode());
Log.e("RequestId", e.getRequestId());
Log.e("HostId", e.getHostId());
Log.e("RawMessage", e.getRawMessage());
}
参考資料
OSSClientインスタンスを初期化する方法の詳細については、「初期化」をご参照ください。
ユーザーの権限を管理するためにRAMポリシーを構成する方法の詳細については、「RAMユーザーにカスタムポリシーをアタッチする」をご参照ください。