我有课
public class Expense{
public String date;
public String item;
public int price;
public Expense(){}
public Expense(String date,String item,int price){
this.date = date;
this.item = item;
this.price = price;
}
public void setDate(String date) {
this.date = date;
}
public void setItem(String item){
this.item = item;
}
public void setPrice(int price) {
this.price = price;
}
public int getPrice() {
return price;
}
public String getDate() {
return date;
}
public String getItem() {
return item;
}
}
和一个函数
public void createByDB(String[] data,int[] price ,int size,int[] pick){
//String []data looks like ={"apple","banana","candy"....}
//int []price looks like ={18,20,25,....}
//size = the size of int[] pick
//int[]pick looks like = {0,1,4,...} ,the numbers in this array is randomly pick,and the number won't excess the size of data and price
FirebaseDatabase database = FirebaseDatabase.getInstance();
DatabaseReference myRef = database.getReference("details");
Calendar c = Calendar.getInstance();
String date = c.get(Calendar.YEAR)+"/"+c.get(Calendar.MONTH)+"/"+c.get(Calendar.DAY_OF_MONTH);
for(int i=0;i<size;i++) {
Expense expense = new Expense(date,data[pick[i]],price[pick[i]]);
myRef.push().setValue(expense);
}
}
我不知道为什么我调用createbydb()会使程序崩溃
我查看了日志,发现了错误信息
2018年10月14日12:21:13.832
2236-27737/com.google.android.googlequicksearchbox:搜索
e/audiorecord jni:创建audiorecord实例时出错:初始化
检查失败,状态为-12。2018年10月14日12:21:13.832
2236-27737/com.google.android.googlequicksearchbox:搜索
e/android.media.audiorecord:初始化本机时出现错误代码-20
音频记录对象。
我在网上搜索了一下,帖子说我必须在androidmanifest.xml中添加录制音频权限。
所以我把这行添加到我的清单中
this line
更新
这是我的androidmanifest.xml
AndroidManifest.xml
但是当我调用createdByDB()时,我的程序仍然崩溃
我不知道我哪里做错了。有人能给我一些建议吗?谢谢您!
更新:
如果我编辑
for(int i=0;i<size;i++) {
Expense expense = new Expense(date,data[pick[i]],price[pick[i]]);
myRef.push().setValue(expense);
}
对此
Expense expense = new Expense(date,data[1],price[1]);
myRef.push().setValue(expense);
它起作用了,我试过了
for(int i=0;i<size;i++)System.out.println("pick:"+pick[i]);
检查我是否超出了数据和价格的大小,但答案是否定的。
那么,我如何修改我的程序来做我想做的?