Как разместить строку Base64 на моем сервере с помощью Retrofit

Я делаю простое приложение, которое использует камеру, чтобы сделать снимок, а затем преобразует изображение в base64 строка и отправляет его на мой сервер вместе с именем изображения. Я не уверен, как отправить изображение с помощью Retrofit, концепция немного неясна для меня и не имеет смысла, так как Я новичок в разработке приложений для Java / Android.

Это то, что я до сих пор. Я посмотрел несколько уроков, но я действительно не уверен, где добавить код Retrofit и как заставить его работать. Я также включил PHP код на моем сервере. Спасибо

MainActivity.java

    public class MainActivity extends AppCompatActivity {

private ImageButton ImageButton;
private String encoded_string, image_name;
private File file;
private Uri file_uri;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

ImageButton = (ImageButton) findViewById(R.id.camera);
ImageButton.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View view){
Intent i = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
i.putExtra(MediaStore.EXTRA_OUTPUT,file_uri);
startActivityForResult(i,10);
}
});
}

private void getFileUri() {
image_name = "testing1234.jpeg";
file = new File(Environment.getExternalStorageDirectory().getAbsoluteFile(), image_name);
file_uri = Uri.fromFile(file);
}

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {

if(requestCode == 10 && resultCode == RESULT_OK) {
}
}
}

PHP

<?php
header('Content-type : bitmap; charset=utf-8');

if(isset($_POST["encoded_string"])){
$encoded_string = $_POST["encoded_string"];
$device_name = $_POST["device_name"];

/*$image_name = $device_name.'.jpg';*/
$decoded_string = base64_decode($encoded_string);

$path = 'images/'.$image_name;
$file = fopen($path, 'wb');
$is_written = fwrite($file, $decoded_string);
fclose($file);

$extracted = shell_exec("python test.py $image_name");
echo $extracted;

}

else {
echo "Failed :(";
}

?>

1

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]