我在使用 Rails 的服务器上提供 APK 时遇到问题。如果下载链接放在 /public 中,我可以提供 APK。但是,我想用密码保护它。如果我将文件移动到需要 HTTP 身份验证的 URL 后面,那么它将在股票浏览器上Download Unsuccessful
立即失败。
如果我安装并运行 firefox,firefox 能够下载 APK 并正确安装。
任何人都知道如何使用 Android 的股票浏览器进行这项工作?
我已将其添加MIME Type
到服务器:
Mime::Type.register "application/vnd.android.package-archive", :apk
我正在尝试在 HTTP 身份验证后发送文件:
send_file "android.apk", :type => 'application/vnd.android.package-archive'
来自 /public 的成功 HTTP 标头:
~ curl -s -D- android.apk -o/dev/null
HTTP/1.1 200 OK
Server: nginx/1.4.1
Date: Thu, 11 Jul 2013 20:06:43 GMT
Content-Type: application/octet-stream
Content-Length: 38673086
Last-Modified: Thu, 11 Jul 2013 20:05:12 GMT
Connection: keep-alive
ETag: "51df0ff8-24e1abe"
Accept-Ranges: bytes
HTTP 身份验证后面的 HTTP 标头不成功:
~ curl -s -D- private/android.apk -o/dev/null
HTTP/1.1 200 OK
Server: nginx/1.4.1
Date: Thu, 11 Jul 2013 20:11:53 GMT
Content-Type: application/octet-stream
Transfer-Encoding: chunked
Connection: keep-alive
Status: 200 OK
X-Frame-Options: SAMEORIGIN
X-XSS-Protection: 1; mode=block
X-Content-Type-Options: nosniff
X-UA-Compatible: chrome=1
Content-Disposition: attachment; filename="SironaVideoSurvey.apk"
Content-Transfer-Encoding: binary
Cache-Control: private
Set-Cookie: request_method=GET; path=/
X-Request-Id: 6b99f5e5-87f8-4f8c-816c-0034265b3991
X-Runtime: 0.016140