为了账号安全,请及时绑定邮箱和手机立即绑定

在网络服务器上分发 APK

在网络服务器上分发 APK

PHP
万千封印 2023-10-01 17:13:15
我创建了一个应用程序,希望用户能够在他们的设备(手机)上从我的网站下载并安装该应用程序。我使用 Android Studio 并生成了签名的 APK。现在我有2个文件(app-release.apk和output.json)我尝试了一些代码,但大多数都收到“HTTP ERROR 500”,然后我尝试了这个简单的代码(PHP):$file_name  = "app-release.apk";$file_ext   = "apk";$file_path  = 'my/app/folder/' . $file_name;header("Cache-Control: public");header("Content-description: File Transfer");$contenttype = "application/com.android.package-install";header("Content-Type: " . $contenttype);header("Content-Disposition: attachment; filename=\"".$file_path."\""); header("Content-Tranfer-Encoding: binary");readfile($file_path);这样我就可以在设备上下载 APK。但...我无法安装该应用程序。它只是说“无法打开”。设备下载文件夹中的 APK 名称更改为 --> my_app_folder_app-release.apk 我不希望用户看到网站结构/文件夹。好吧,我的问题是。如何让用户正确从网络服务器/网站下载并安装 APK。如何防止 APK 名称更改?对于第一个问题...“我无法安装该应用程序”...我无法从浏览器下载安装该应用程序。我必须从文件管理器安装该应用程序。这是因为我更改了安全性,以便可以从文件管理器安装未知的应用程序。所以这就解决了
查看完整描述

1 回答

?
白衣染霜花

TA贡献1796条经验 获得超10个赞

filenameafterContent-Disposition: attachment;需要的是您希望在保存文件时命名的文件的名称,而不是现有文件的路径。

header('Content-Disposition: attachment; filename="$file_name"');

另外,如果您想通过链接直接从服务器提供 APK,我怀疑您需要将此行添加到您的.htaccessapache 上,因为 APK 不是默认的 mime。之后,您可以直接链接到该文件并允许他们下载该文件,无需额外编程。

AddType application/vnd.android.package-archive apk


查看完整回答
反对 回复 2023-10-01
  • 1 回答
  • 0 关注
  • 61 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信