超过15MB的APK上传BrowserStack失败求助:curl及Dropbox方式均无效
解决BrowserStack上传大APK文件的问题
一、修正curl命令格式错误
你遇到的Warning: Illegally formatted input field!错误,通常是curl命令的换行符、路径格式或引号使用不当导致的。可以按以下方式调整:
- 尝试将命令合并为单行,避免换行反斜杠后出现多余空格:
curl -u "YOUR_USERNAME:YOUR_ACCESS_KEY" -X POST "https://api-cloud.browserstack.com/app-automate/upload" -F "file=@/path/to/app/file/Application-debug.apk" -F "custom_id=CalculatorApp" - 如果APK文件路径包含空格,需给路径添加转义引号:
curl -u "YOUR_USERNAME:YOUR_ACCESS_KEY" -X POST "https://api-cloud.browserstack.com/app-automate/upload" -F "file=@\"/path with spaces/Application-debug.apk\"" -F "custom_id=CalculatorApp"
二、用预签名URL上传大文件
针对大APK文件,BrowserStack提供预签名URL上传方案,避免直接上传的大小限制:
- 先请求获取预签名上传链接:
响应会包含curl -u "YOUR_USERNAME:YOUR_ACCESS_KEY" -X GET "https://api-cloud.browserstack.com/app-automate/upload/presigned?custom_id=CalculatorApp"upload_url(S3上传地址)和app_url(BrowserStack内的应用标识)。 - 将APK上传到预签名URL:
上传完成后,直接使用curl -X PUT -T "/path/to/app/file/Application-debug.apk" "替换为步骤1获取的upload_url"app_url(格式为bs://xxx)即可在自动化测试中调用。
三、修复Dropbox分享链接问题
Dropbox默认分享链接不是直接下载地址,无法被BrowserStack识别,需修改链接参数:
- 将原链接中的
dl=0替换为dl=1,例如:
原链接:https://www.dropbox.com/s/xxxx/app.apk?dl=0
修改后:https://www.dropbox.com/s/xxxx/app.apk?dl=1 - 用修改后的链接执行上传命令:
curl -u "YOUR_USERNAME:YOUR_ACCESS_KEY" -X POST "https://api-cloud.browserstack.com/app-automate/upload" -F "url=https://www.dropbox.com/s/xxxx/app.apk?dl=1" -F "custom_id=CalculatorApp"
四、网页端上传排查
如果网页端上传失败,可尝试以下操作:
- 清除浏览器缓存,使用无痕模式重新上传
- 检查网络稳定性,大文件上传易因网络中断失败
- 校验APK文件完整性,重新打包或重新下载文件后再尝试
内容的提问来源于stack exchange,提问作者maxerson
相关产品推荐
相关产品推荐

