私はAWS JAVA SDKを使用してデバイスファームへの呼び出しを自動化しています。私は正常にプロジェクトを作成し、アップロードを作成し、S3の事前に署名されたURLを生成しましたが、今はこの事前に署名されたURLを使用してIPAファイルを送信する必要があります。S3の事前に署名されたURLを使用してアプリケーションをアップロードできません
私のコードは、私が間違っていることを教えてください。私は、サーバーに正しい方法でファイルを送信していないと思います。事前に署名されたURLを使用してファイルを送信するコードのサンプルを共有してください。私はすでに、デバイスファームにファイルを送信するさまざまな方法を試しました。
ご協力いただければ幸いです。
AWSCredentials awsCredentials=new BasicAWSCredentials("sampleJRMSWANJS5KQ","sampleUSNnuC/fVSgvR9DSVr");
AWSDeviceFarm deviceFarmObj = new AWSDeviceFarmClient(awsCredentials);
CreateProjectRequest projReqObj = new CreateProjectRequest();
projReqObj.setName("JAVAHTTPAWSAPIPROJECT");
Project projObj = deviceFarmObj.createProject(projReqObj).getProject();
String projArn=projObj.getArn();
byte[] array = Files.readAllBytes(new File("/Users/abc/Documents/Card/Blue.ipa").toPath());
String data = new String(array,"UTF-8");
char[] charFile= data.toCharArray();
URL urlPreSigned = new URL(url);
HttpURLConnection connection=(HttpURLConnection)urlPreSigned.openConnection();
connection.setDoOutput(true);
connection.setRequestMethod("PUT");
OutputStreamWriter out = new OutputStreamWriter(
connection.getOutputStream());
out.write(charFile);
out.close();
int responseCode = connection.getResponseCode();
System.out.println("Service returned response code " + responseCode);