Android:当互联网不可用时,如何使用sqlite数据库存储用户数据,然后在设备连接到互联网时自动将存储的数据与服务器同步(我希望场景如何工作)我的数据也将包含字符串作为图像,但我会在sqlite数据库中存储图像路径而不是图像.
如果有人可以用简单的示例代码解释我,那么我只会感激初学者.
我试图将图像发布到服务器.这是我在脚本服务器提供给我的服务器端的php变量名:
$value1 = $_POST["value1"]; // string value
$value2 = $_POST["value2"]; // string value
$img_1 = $_FILES["fileToUpload1"]["name"]; // image file
$img_2 = $_FILES["fileToUpload2"]["name"]; // image file
Run Code Online (Sandbox Code Playgroud)
这是我发布值的代码 -
RequestBody fileBody = RequestBody.create(MediaType.parse("image/png"), path.toString());
RequestBody fileBody1 = RequestBody.create(MediaType.parse("image/png"), path.toString());
Call<uploadResponseModel> call = adapter.uploadValues("test1","test2",fileBody1,fileBody);
call.enqueue(new Callback<uploadResponseModel>() {
@Override
public void onResponse(Response<uploadResponseModel> response, Retrofit retrofit) {
Log.i("TAG", "retro onResponse :" + response.body().getResponse().getStatus());
}
@Override
public void onFailure(Throwable t) {
Log.i("TAG", "retro onFailure :" + t.getCause());
}
});
Run Code Online (Sandbox Code Playgroud)
适配器类:
public interface RetrofitAdapter {
@Multipart
@POST("/TestApp/img_upload.php") …Run Code Online (Sandbox Code Playgroud) 用于过滤列表RxJava2.不知何故让它发挥作用.但问题是,它在回调中仅返回List中的一个项目Consumer(大小始终为1)
这是代码:
Observable.fromIterable(arraylist)
.filter(new Predicate<BasicListModel>() {
@Override
public boolean test(BasicListModel model) throws Exception {
return true; //returning true for all items in filter
}
})
.toList()
.observeOn(Schedulers.computation())
.subscribe(new Consumer<List<BasicListModel>>() {
@Override
public void accept(List<BasicListModel> models) throws Exception {
Log.i("TAG"," size:"+models.size());
}
});
Run Code Online (Sandbox Code Playgroud)
我是RxJAva1或RxJava2的新手.