Android Open Source - JiangHomeStyle_Android_Phone Artical Operation From Project Back to project page JiangHomeStyle_Android_Phone .
License The source code is released under:
Apache License
If you think the Android project JiangHomeStyle_Android_Phone listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.
Java Source Code package com.cidesign.jianghomestylephone.http;
/ / w w w . j a v a 2 s . c o m
import java.io.File;
import java.sql.SQLException;
import java.util.List;
import org.apache.http.HttpStatus;
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
import android.os.AsyncTask;
import android.util.Log;
import com.androidquery.AQuery;
import com.androidquery.callback.AjaxCallback;
import com.androidquery.callback.AjaxStatus;
import com.cidesign.jianghomestylephone.R;
import com.cidesign.jianghomestylephone.db.DatabaseHelper;
import com.cidesign.jianghomestylephone.entity.ArticleEntity;
import com.cidesign.jianghomestylephone.entity.FileListEntity;
import com.cidesign.jianghomestylephone.service.DownloadService;
import com.cidesign.jianghomestylephone.tools.StorageUtils;
import com.cidesign.jianghomestylephone.tools.XmlParseTools;
import com.j256.ormlite.dao.RuntimeExceptionDao;
import com.j256.ormlite.stmt.DeleteBuilder;
public class ArticalOperation
{
private static final String TAG = ArticalOperation.class.getSimpleName();
private AQuery aq;
public DatabaseHelper dbHelper;
private SharedPreferences settings = null;
private String request_address = "" ;
public Activity activity;
public ArticalOperation(Activity activity, AQuery aq, DatabaseHelper dbHelper)
{
this.activity = activity;
this.aq = aq;
this.dbHelper = dbHelper;
settings = activity.getSharedPreferences("LAST_UPDATE_TIME" , Context.MODE_PRIVATE);
request_address = activity.getResources().getString(R.string.request_address);
}
public void getArticleInfo()
{
String url = request_address + "/travel/dataUpdate?lastUpdateDate=" + settings.getString("lastUpdateTime" , "0" )+"&category=1" ;
long expire = 15 * 1000;
aq.ajax(url, String.class, expire, new AjaxCallback<String>()
{
@Override
public void callback(String url, String html, AjaxStatus status)
{
if (HttpStatus.SC_OK == status.getCode())
{
new InsertDBArticleDate().execute(html);
}
}
});
}
class InsertDBArticleDate extends AsyncTask<String, Integer , String>
{
List<FileListEntity> listFile = null;
RuntimeExceptionDao<FileListEntity, Integer > dao = null;
@Override
protected void onPreExecute()
{
}
@Override
protected String doInBackground(String... params)
{
listFile = XmlParseTools.parseFileList(params[0]);
if (listFile.size() > 0)
{
String time = "0" ;
dao = dbHelper.getFileListDataDao();
for (FileListEntity fileEntity : listFile)
{
if (fileEntity.getOperation() == 'u' )
{
fileEntity.setDownloadFlag(0);
dao.createOrUpdate(fileEntity);
}
else if (fileEntity.getOperation() == 'd' )
{
// ??????????????
dao.delete(fileEntity);
// ???SD??????????
File file = new File (StorageUtils.FILE_ROOT + fileEntity.getServerID());
if (file.isDirectory())
{
StorageUtils.delete(file);
}
// ????????????
RuntimeExceptionDao<ArticleEntity, Integer > articleDao = dbHelper.getArticleListDataDao();
DeleteBuilder<ArticleEntity, Integer > delBuilder = articleDao.deleteBuilder();
try
{
delBuilder.where().eq("serverID" , fileEntity.getServerID());
delBuilder.delete();
}
catch (SQLException e)
{
e.printStackTrace();
}
}
time = fileEntity.getTimestamp();
}
// ????????????????
SharedPreferences.Editor editor = settings.edit();
editor.putString("lastUpdateTime" , time);
editor.commit();
}
return null;
}
@Override
protected void onPostExecute(String result)
{
if (dao == null)
{
dao = dbHelper.getFileListDataDao();
}
List<FileListEntity> listFile = dao.queryForEq("downloadFlag" , 0);
if (listFile.size() > 0)
{
// ???????????????
Intent intent = new Intent(activity, DownloadService.class);
intent.putExtra("RESULT" , 0);
activity.startService(intent);
}
}
}
}
Java Source Code List com.cidesign.jianghomestylephone.DetailActivity.java com.cidesign.jianghomestylephone.JiangActivity.java com.cidesign.jianghomestylephone.MainActivity.java com.cidesign.jianghomestylephone.SplashActivity.java com.cidesign.jianghomestylephone.adapter.CommunityViewpagerAdapter.java com.cidesign.jianghomestylephone.adapter.HumanityViewpagerAdapter.java com.cidesign.jianghomestylephone.adapter.LandscapeViewpagerAdapter.java com.cidesign.jianghomestylephone.adapter.LayoutCaculateAdapter.java com.cidesign.jianghomestylephone.adapter.StoryViewpagerAdapter.java com.cidesign.jianghomestylephone.async.AsyncDownTask.java com.cidesign.jianghomestylephone.async.AsyncInitCommunityData.java com.cidesign.jianghomestylephone.async.AsyncInitData.java com.cidesign.jianghomestylephone.async.AsyncInitHomeData.java com.cidesign.jianghomestylephone.async.AsyncInitHumanityData.java com.cidesign.jianghomestylephone.async.AsyncInitLandscapeData.java com.cidesign.jianghomestylephone.async.AsyncInitStoryData.java com.cidesign.jianghomestylephone.db.DatabaseConfigUtil.java com.cidesign.jianghomestylephone.db.DatabaseHelper.java com.cidesign.jianghomestylephone.entity.ArticleEntity.java com.cidesign.jianghomestylephone.entity.FileListEntity.java com.cidesign.jianghomestylephone.entity.LayoutEntity.java com.cidesign.jianghomestylephone.entity.RelativeLayoutRulesEntity.java com.cidesign.jianghomestylephone.http.ArticalOperation.java com.cidesign.jianghomestylephone.http.DownLoadThread.java com.cidesign.jianghomestylephone.service.DownloadService.java com.cidesign.jianghomestylephone.tools.CategoryDataLoadingLogic.java com.cidesign.jianghomestylephone.tools.FileOperationTools.java com.cidesign.jianghomestylephone.tools.JiangCategory.java com.cidesign.jianghomestylephone.tools.LayoutMarginSetting.java com.cidesign.jianghomestylephone.tools.LoadingDataFromDB.java com.cidesign.jianghomestylephone.tools.LoadingImageTools.java com.cidesign.jianghomestylephone.tools.MD5Tools.java com.cidesign.jianghomestylephone.tools.StorageUtils.java com.cidesign.jianghomestylephone.tools.TimeTools.java com.cidesign.jianghomestylephone.tools.WidgetCache.java com.cidesign.jianghomestylephone.tools.XmlParseTools.java com.cidesign.jianghomestylephone.version.NetworkTool.java com.cidesign.jianghomestylephone.version.VersionConfig.java com.cidesign.jianghomestylephone.version.VersionUpdate.java com.cidesign.jianghomestylephone.widget.CommunityRelativeLayout.java com.cidesign.jianghomestylephone.widget.CustomScrollView.java com.cidesign.jianghomestylephone.widget.HScrollViewTouchLogic.java com.cidesign.jianghomestylephone.widget.HumanityRelativeLayout.java com.cidesign.jianghomestylephone.widget.LandscapeRelativeLayout.java com.cidesign.jianghomestylephone.widget.PopMenu.java com.cidesign.jianghomestylephone.widget.StoryRelativeLayout.java org.apache.tools.zip.AbstractUnicodeExtraField.java org.apache.tools.zip.AsiExtraField.java org.apache.tools.zip.CentralDirectoryParsingZipExtraField.java org.apache.tools.zip.ExtraFieldUtils.java org.apache.tools.zip.FallbackZipEncoding.java org.apache.tools.zip.GeneralPurposeBit.java org.apache.tools.zip.JarMarker.java org.apache.tools.zip.NioZipEncoding.java org.apache.tools.zip.Simple8BitZipEncoding.java org.apache.tools.zip.UnicodeCommentExtraField.java org.apache.tools.zip.UnicodePathExtraField.java org.apache.tools.zip.UnixStat.java org.apache.tools.zip.UnparseableExtraFieldData.java org.apache.tools.zip.UnrecognizedExtraField.java org.apache.tools.zip.UnsupportedZipFeatureException.java org.apache.tools.zip.Zip64ExtendedInformationExtraField.java org.apache.tools.zip.Zip64Mode.java org.apache.tools.zip.Zip64RequiredException.java org.apache.tools.zip.ZipConstants.java org.apache.tools.zip.ZipEightByteInteger.java org.apache.tools.zip.ZipEncodingHelper.java org.apache.tools.zip.ZipEncoding.java org.apache.tools.zip.ZipEntry.java org.apache.tools.zip.ZipExtraField.java org.apache.tools.zip.ZipFile.java org.apache.tools.zip.ZipLong.java org.apache.tools.zip.ZipOutputStream.java org.apache.tools.zip.ZipShort.java org.apache.tools.zip.ZipUtil.java