我正在开发一个使用光标加载器和加载器回调的小应用程序。我是加载程序回调的新手。该应用程序显示一个项目列表,并在项目单击时调用一个新活动,该活动在 web 视图中加载一个 url。我没有完成父活动,但碰巧当网页在大约 1 或 2 分钟后完全加载时,前一个活动会重新启动。
我不知道该输入什么问题,因为我不确定是否是导致重新启动它的网页或导致活动重新启动的加载程序。虽然我已经阅读了文档并且还:
this,但他们都没有谈论重新启动。
我也看过这个,但没有任何线索。这可能是应用程序重启的原因吗?
我在 webview 活动中调用以下链接: url
我还查看了webview 显示空白页面,并从中添加了以下代码(在 webviewclient 类中)
public void onReceivedSslError (WebView view, SslErrorHandler handler, SslError error){
handler.proceed() ;
}
------ 编辑,我的活动扩展了 SherlockFragmentActivity 并实现了 LoaderCallbacks,我的代码与第一个活动相同
private ListView mListView;
private Cursor mCursor;
private MyListAdapter mListAdapter;
private CursorLoader mCursorLoader;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mListView = (ListView)findViewById(android.R.id.list);
fillDataIntoCursor();
new GetDataAsyncTask(this, mLimit).execute();
mListView.setOnItemClickListener(this);
}
private void fillDataIntoCursor() {
getLoaderManager().initLoader(0, null, this);
mListAdapter = new MyListAdapter(this,mCursor,false);
mListView.setAdapter(mListAdapter);
}
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
mCursor = mListAdapter.getCursor();
mCursor.moveToPosition(position);
String link = mCursor.getString(mCursor.getColumnIndex(MyTable.COL_NAME_HERE));
Intent intent = new Intent(MainActivity.this, WebViewActivity.class);
intent.putExtra("link",link);
startActivity(intent);
}
@Override
public void onLoadFinished(Loader<Cursor> loader, Cursor cursor) {
if(mListAdapter!=null && cursor!=null)
mListAdapter.swapCursor(cursor);
}
@Override
public void onLoaderReset(Loader<Cursor> cursor) {
}
@Override
public Loader<Cursor> onCreateLoader(int arg0, Bundle bundle) {
String[] projection = { // columns here};
mCursorLoader = new CursorLoader(this,
MyContentProvider.CONTENT_URI, projection, null, null, null);
return mCursorLoader;
}
任何帮助将不胜感激。谢谢
PS:当我用Google替换 url 时,mainactivity 不会重新启动。也没有发生可能导致重新启动的配置更改
我也收到此错误10-09 21:02:53.229: E/InputDispatcher(156): channel '40bed3f0 packagename_here/packagename_here.MainActivity (server)' ~ 消费者关闭输入通道或发生错误。事件=0x8