import android.os.Bundle;
import android.util.Log;
import androidx.appcompat.app.AppCompatActivity;
import com.volcengine.tos.TOSV2;
import com.volcengine.tos.TOSV2ClientBuilder;
import com.volcengine.tos.TosException;
import com.volcengine.tos.model.object.CopyObjectV2Input;
import com.volcengine.tos.model.object.CopyObjectV2Output;
public class CopyObjectExample extends AppCompatActivity {
protected void onCreate(Bundle savedInstanceState) {
String endpoint = "your endpoint";
String region = "your region";
String accessKey = "your access key";
String secretKey = "your secret key";
String srcBucketName = "your src bucket name";
String srcObjectKey = "your src object key";
String bucketName = "your bucket name";
String objectKey = "your object key";
String securityToken = "your security token";
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_display_message);
TOSV2 tos = new TOSV2ClientBuilder().build(region, endpoint, accessKey, secretKey, securityToken);
Thread tosThread = new Thread(new Runnable() {
CopyObjectV2Input input = new CopyObjectV2Input().setBucket(bucketName).setKey(objectKey)
.setSrcBucket(srcBucketName).setSrcKey(srcObjectKey);
CopyObjectV2Output output = tos.copyObject(input);
Log.i("copyObject", "copyObject succeed, object's etag is " + output.getEtag());
Log.i("copyObject", "copyObject succeed, object's crc64 is " + output.getHashCrc64ecma());
} catch (TosException e) {
Log.e("TosException", "copyObject failed");