我正在使用ACRA发送我的申请的崩溃报告。我想使用Cloudant的免费托管服务。
我创建了一个关于云端名称“mobile”&的数据库。使用写入权限 using it为其生成密钥。
我在我的应用程序&中添加了acra-4.5 jar文件建立路径。
formUriBasicAuthLogin有密钥,formUriBasicAuthLogin有密码。
在我的应用程序类中使用代码 -
@ReportsCrashes(formKey = "",
formUri = "https://mshuiet.cloudant.com/mobile/",
reportType = org.acra.sender.HttpSender.Type.JSON,
httpMethod = org.acra.sender.HttpSender.Method.PUT,
formUriBasicAuthLogin="Berndiverewyetheewrillyi",
formUriBasicAuthPassword="vWqRNHUoc26SodsvtmNTWDcw",
mode = ReportingInteractionMode.TOAST,
resToastText = R.string.app_name
)
public class Mobile extends Application{
@Override
public void onCreate() {
// TODO Auto-generated method stub
super.onCreate();
ACRA.init(this);
}
}
我得到例外: -
无法发送1375431176000-approved.stacktrace的崩溃报告
答案 0 :(得分:0)
在Cloudant中,文档是通过POST创建的。对这样的URL进行PUT尝试创建名为“mobile”的新数据库,而POST尝试在该数据库中创建文档。有关详细信息,请查看我们关于database和document方法的文档。
因此,具体来说,请尝试更改此行......
httpMethod = org.acra.sender.HttpSender.Method.PUT,
......对此:
httpMethod = org.acra.sender.HttpSender.Method.POST,
答案 1 :(得分:0)
此外,CloudAnt数据库名称前面需要有' acra' 在你的情况下,它将是' acra-mobile'根据这里的文件
https://github.com/ACRA/acralyzer/wiki/setup
此外,您的网址路径应如下所示(删除空格)
https:// [my-user-id]。 cloudant。 com / [my-database] / _design / acra-storage / _update / report
和Http方法应该是这样的
httpMethod = org.acra.sender.HttpSender.Method.POST