Android 异步任务不工作
我有一个splash活动,它应该从url下载数据,解析数据并将其传递给主活动,同时下载我创建的带有徽标和旋转gif的布局,加载到webview中,但当我启动应用程序时,什么都没有发生,它不会启动主活动代码如下Android 异步任务不工作,android,class,android-activity,android-asynctask,Android,Class,Android Activity,Android Asynctask,我有一个splash活动,它应该从url下载数据,解析数据并将其传递给主活动,同时下载我创建的带有徽标和旋转gif的布局,加载到webview中,但当我启动应用程序时,什么都没有发生,它不会启动主活动代码如下 public class Init extends Activity { static final String DEFAULT_URL = "http://api.androidhive.info/music/music.xml"; @Override public void onC
public class Init extends Activity {
static final String DEFAULT_URL = "http://api.androidhive.info/music/music.xml";
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
setContentView(R.layout.init);
WebView loader = (WebView) findViewById(R.id.loader);
loader.loadUrl("file:///android_asset/index.html");
new LoadingTask().execute(DEFAULT_URL);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}
public class LoadingTask extends AsyncTask<String, String, String>{
XMLParser parser = new XMLParser();
@Override
protected String doInBackground(String... params) {
// TODO Auto-generated method stub
String URL = params[0];
String xml = parser.getXmlFromUrl(URL); // getting XML from URL
// getting DOM element
return xml;
}
protected void onPostExecute(String result){
Intent startApp = new Intent("com.example.androidhive.HOME");
startApp.putExtra("xmlstring", result);
//finish();
}
}
public类Init扩展活动{
静态最终字符串默认值_URL=”http://api.androidhive.info/music/music.xml";
@凌驾
创建时的公共void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
requestWindowFeature(窗口。功能\u无\u标题);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_全屏,WindowManager.LayoutParams.FLAG_全屏);
setContentView(R.layout.init);
WebView加载程序=(WebView)findViewById(R.id.loader);
loader.loadUrl(“file:///android_asset/index.html");
new LoadingTask().execute(默认URL);
}
@凌驾
公共布尔onCreateOptions菜单(菜单){
getMenuInflater().充气(R.menu.activity\u主菜单);
返回true;
}
公共类LoadingTask扩展了AsyncTask{
XMLParser=新的XMLParser();
@凌驾
受保护的字符串doInBackground(字符串…参数){
//TODO自动生成的方法存根
字符串URL=params[0];
字符串xml=parser.getXmlFromUrl(URL);//从URL获取xml
//获取DOM元素
返回xml;
}
受保护的void onPostExecute(字符串结果){
Intent startApp=newintent(“com.example.androidhive.HOME”);
startApp.putExtra(“xmlstring”,结果);
//完成();
}
}
}添加
startactivity(startApp);
在post execute中转到下一个活动添加
startactivity(startApp);
在执行后转到下一个活动时您错过了行
startactivity(startApp);
大概
Intent startApp = new Intent("com.example.androidhive.HOME");
startApp.putExtra("xmlstring", result);
startactivity(startApp);
你没打线
startactivity(startApp);
大概
Intent startApp = new Intent("com.example.androidhive.HOME");
startApp.putExtra("xmlstring", result);
startactivity(startApp);