一、Afinal简介。
1.Afinal是一个开源的android的orm和ioc应用开发框架,其特点是小巧灵活,代码入侵量少。Xutils基于Afinal开发,稳定性更强。
2.Afinal项目地址。
http://www.oschina.net/p/afinal/
二、Afinal使用步骤。
1.导入jar包。
2.添加联网权限。
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
3.
4.
5.
三、Afinal使用案例
1.注解
1)继承:FinalActivity
2)@ViewInject()
@ViewInject(id=R.id.btn_afinal,click="btn_afinal")
private Button btn_afinal;
2.加载图片
FinalBitmap finalBitmap = FinalBitmap.create(this);
// 加载中显示的图片
finalBitmap.configLoadingImage(R.drawable.atguigu_logo);
// 让图片显示
iv_afinal.setVisibility(View.VISIBLE);
// 去网络请求图片后显示到控件上
finalBitmap.display(iv_afinal,"http://img5.mtime.cn/mg/2016/10/11/160347.30270341.jpg");
3.文本请求
// 文本请求
public void btn_afinal_gettext_click(View view){
FinalHttp finalHttp = new FinalHttp();
// 请求数据地址
String url = "http://api.m.mtime.cn/PageSubArea/TrailerList.api";
finalHttp.get(url, new AjaxCallBack<Object>() {
@Override
public void onStart() {
tv_afinal_result.setText("开始下载");
super.onStart();
}
@Override
public void onSuccess(Object o) {
// 显示结果
tv_afinal_result.setText(o.toString());
super.onSuccess(o);
}
@Override
public void onFailure(Throwable t, int errorNo, String strMsg) {
tv_afinal_result.setText("下载失败");
super.onFailure(t, errorNo, strMsg);
}
});
}
4.文件下载
// 文件下载
public void btn_afinal_downloadfile_click(View view){
FinalHttp finalHttp = new FinalHttp();
// 下载文件地址
String url = "http://vfx.mtime.cn/Video/2016/10/11/mp4/161011092841270064_480.mp4";
// 文件存放地址
String target = getFilesDir()+"/afinloop.mp4";
finalHttp.download(url, target, new AjaxCallBack<File>() {
@Override
public void onSuccess(File file) {
Log.e("TAG", "下载成功");
tv_afinal_result.setText("下载成功");
super.onSuccess(file);
}
@Override
public void onFailure(Throwable t, int errorNo, String strMsg) {
tv_afinal_result.setText("下载失败");
super.onFailure(t, errorNo, strMsg);
}
@Override
public void onStart() {
tv_afinal_result.setText("开始下载");
super.onStart();
}
@Override
public void onLoading(long count, long current) {
Log.e("TAG", "正在下载");
super.onLoading(count, current);
}
});
}
5.文件上传
// 文件上传
public void btn_afinal_updatefile_click(View view){
FinalHttp finalHttp = new FinalHttp();
// 文件上传地址
String url = "http://192.168.0.103:8080/FileUpload/FileUploadServlet";
AjaxParams params = new AjaxParams();
try {
// 获取本地文件
params.put("File",new File(getFilesDir()+"/afinloop.mp4"));
} catch (FileNotFoundException e) {
e.printStackTrace();
}
finalHttp.post(url, params, new AjaxCallBack<Object>() {
@Override
public void onStart() {
tv_afinal_result.setText("开始上传");
super.onStart();
}
@Override
public void onLoading(long count, long current) {
Log.e("TAG", "正在上传");
super.onLoading(count, current);
}
@Override
public void onSuccess(Object o) {
tv_afinal_result.setText("上传成功");
super.onSuccess(o);
}
@Override
public void onFailure(Throwable t, int errorNo, String strMsg) {
tv_afinal_result.setText("上传失败"+strMsg);
super.onFailure(t, errorNo, strMsg);
}
});
}
看到此,是不是接的Afinal的简单使用是不是很简单,谢谢浏览!