我正在使用Android In App Billing开展项目。这是我想要实现的流程:
然而,我面临的问题是,使用异步任务消耗购买需要几秒钟,所以真正的流程是:
用户购买 - >以编程方式使用 - >尝试再次购买该商品,但因为异步消费仍在运行,我收到一个"商品已经拥有错误"
这是我用来消耗的东西,需要几秒钟。
private List<MasterMenu> getDataMasterMenu3() {
var dtMasterMenuParent = new DataTable();
var dtMasterMenuChild = new DataTable();
var result = (from p in dtMasterMenuParent.AsEnumerable()
join c in dtMasterMenuChild.AsEnumerable() on p.Field<string>("ID") equals c.Field<string>("PARENT_ID") into cj
select new MasterMenu {
MasterMenuParent = new MasterMenuParent { Id = p.Field<string>("ID"), Name = p.Field<string>("NAME") },
MasterMenuChildOfParent = cj.Select(c => new MasterMenuChildOfParent {
Id = c.Field<string>("ID"),
Name = c.Field<string>("NAME"),
ParentId = c.Field<string>("PARENT_ID")
}).ToList()
}).ToList();
return result;
}
我的问题:有没有办法向用户显示&#34;请等待&#34;对话框或显示下次购买的提示正在加载?我所拥有的只是一个消费完成的听众,这似乎不够。
由于
答案 0 :(得分:0)
您可以使用ProgressDialog显示“请稍候”对话框,如下所示:
//use it when you want to display the Dialog
ProgressDialog progressDialog = new ProgressDialog(this);
progressDialog.setTitle("please wait");
progressDialog.setCancelable(false);
progressDialog.show();
// use it to dismiss the dialog
progressDialog.dismiss();