Android — Скачать APK файл, используя переполнение стека

Я пытаюсь загрузить Android-файл APK с помощью php в браузере ПК с помощью Chrome.

Мое приложение находится на определенном пути на сервере. Если я вручную FTP файл с сервера и перенести на мой мобильный Android, он установился идеально. Но при загрузке с использованием PHP и переноса загруженного файла на мобильный и при установке он выдает «возникла проблема при разборе пакета».

Вот мой PHP-код, который я использую для загрузки

header('Content-Type: application/vnd.android.package-archive');
header('Content-Disposition: attachment; filename="' . $file_name . '"');
readfile($file_path);
return true;

FYI …

$file_name is the apk file file 'myfile.apk'
$file_path is the full absolute path of the file in server ('d:\abcd\xyz\xampp\htdocs\apkstore\myfile.apk')

Я обнаружил одно наблюдение при попытке открыть файл APK с помощью 7-zip.

Когда я открываю файл с помощью 7-zip, он выдает ошибку «Не удается открыть файл ххх как архив»

После того, как я добавил ниже код PHP

header("Content-length: " . filesize($file_path));

Теперь, когда я открываю файл с помощью 7-zip, он открывает файл, но размер загруженного файла больше, чем оригинальный файл. И когда я открываю этот файл в мобильном телефоне та же ошибка «возникла проблема при разборе пакета»

Короче говоря, я пытаюсь загрузить APK-файл с сервера на локальный хост, используя PHP, и я могу заставить его работать.

-1

Решение

Мне удалось заставить его работать, добавив ob_end_flush ()

header('Content-Type: application/vnd.android.package-archive');
header("Content-length: " . filesize($file_path));
header('Content-Disposition: attachment; filename="' . $file_name . '"');
ob_end_flush();
readfile($file_path);
return true;
0

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

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

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector