我最近从“ Atom Reader 阅读困难”的问题中做了。现在,我正在考虑我制作的博客应用程序的最大兼容性,从 Android Froyo 到 Jellybean。问题是我在使用StrictMode检查时收到错误通知。我正在通过Windows 7操作系统运行 Eclipse IDE。
//-----[ UI Thread Debug Setup ]-----
if(DEVELOPER_MODE)
{
/*
*
* Manage main thread control for Android 3.0 and later. Not work on Android 2.3.3 and below, otherwise, you will get an error
* for changing minimum SDK version at manifest. If you want to publish this project as an Android app (APK) that will run on
* Android 3.0 or later, set DEVELOPER_MODE to "true", otherwise, will not work. (App for Boy Kuripot [Ver. 1])
*
*/
StrictMode.setThreadPolicy(new StrictMode.ThreadPolicy.Builder().detectDiskReads().detectDiskWrites().detectAll().penaltyLog().build());
StrictMode.setVmPolicy(new StrictMode.VmPolicy.Builder().detectLeakedSqlLiteObjects().detectLeakedClosableObjects().penaltyLog().penaltyDeath().build());
}
如果我将最低 SDK 版本设置为 7 会发生以下情况,您会看到错误出现在红线中:
如果我通过 Android Manifest 将最低 SDK 版本设置为 11,会发生以下情况:
此外,当我使用AsyncTask运行它时,它会变得更慢、更快或只是滞后。
//TODO _________________________[ Activity Starter Subclass ]_________________________
private class Post_Task extends AsyncTask<String, Integer, String> // --> This class will be revised and to be used for next version. (Compatible now with Android 2.1 and later.)
{
@Override
protected void onPreExecute()
{
super.onPreExecute();
}
@Override
protected String doInBackground(String... params)
{
//-----[ RSS Feed Setup ]-----
xp.Get_Parse_Feed(URL_link, is, lm.headlines, lm.links);
return "All done!";
}
@Override
protected void onProgressUpdate(Integer... values)
{
super.onProgressUpdate(values);
}
@Override
protected void onPostExecute(String result)
{
super.onPostExecute(result);
}
}
当我在onCreate()作为主线程恢复并运行此xp.Get_Parse_Feed(URL_link, is, lm.headlines, lm.links);
代码时,有时我们很快就会正确加载链接。问题是我应该管理哪一个以及如何使这个博客应用程序与 Android 2.1 及更高版本兼容?