У меня есть база данных MariaDB, куда я вставляю данные через файл php, отправляя запрос по почте. Теперь я хочу получить весь контент базы данных через PHP в виде CSV.
Я нашел PHP файл, который загружает содержимое базы данных как csv, и он работает.
Это код, который у меня был сначала:
String url = allConstants.BASE_URL + "exportData.php";
Intent i = new Intent(Intent.ACTION_VIEW);
i.setData(Uri.parse(url));
startActivity(i);
Приведенный выше код работает, но на мгновение открывается браузер, а затем файл загружается. Я не хочу, чтобы это случилось. Я хочу, чтобы файл загружался в фоновом режиме, ничего не открывая.
Я также попытался использовать задачу Asyn c и сделать запрос на публикацию.
@Override
protected String doInBackground(String... params)
{
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url(allConstants.BASE_URL + "exportData.php")
.method("GET", null)
.addHeader("Content-Type", "application/x-www-form-urlencoded")
.build();
try
{
response = client.newCall(request).execute();
} catch (IOException e)
{
e.printStackTrace();
}
Log.i(TAG, "reresponse: " + response);
return null;
}
Кажется, код выше выполнить файл PHP, но файл csv не загружается на устройство.
Какие изменения необходимы для работы вышеуказанного кода, чтобы он работал? Нужно ли сначала сохранять содержимое базы данных в переменную, а затем сохранять ее на устройстве пользователя? Если это так, я не понимаю почему, поскольку файл PHP делает именно это.