一、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的簡單使用是不是很簡單,謝謝瀏覽!