Android开发中访问本机服务器(localhost)的解决方法

今天早上看mars老师的第一季视频,跟着做播放器的小项目,由于我在宿舍用的是自动获取IP的方法,
配置了tomcat需要用localhost访问本机服务器,但是总是不能下载服务器上面的xml资源,
后来找找资料才发现Android模拟器把localhost作为了他自己,
所以localhost(127.0.0.1)就不是访问了本机服务器了
解决方法:
10.0.2.2 来代替就行了。。

当然在AndroidManfiset.xml文件要加入  <uses-permission android:name="android.permission.INTERNET"/>的权限

package mars.mp3palyer;     import mars.download.HttpDownloader;  import android.app.ListActivity;  import android.os.Bundle;  import android.view.Menu;  import android.view.MenuItem;     public class Mp3ListActivity extends ListActivity  {  private static final int UPDATE = 1;  private static final int ABOUT = 2;     /** Called when the activity is first created. */  // 在用户点击Menu按钮 之后,会调用该方法,我们可以在这个方法当中加入自己的按钮控件  @Override  public boolean onCreateOptionsMenu(Menu menu) {  menu.add(0, UPDATE, 1, R.string.mp3list_update);  menu.add(0, ABOUT, 2, R.string.mp3list_about);  return super.onCreateOptionsMenu(menu);  }     @Override  public void onCreate(Bundle savedInstanceState) {  super.onCreate(savedInstanceState);  setContentView(R.layout.main);  }     @Override  public boolean onOptionsItemSelected(MenuItem item) {  // System.out.println("itemId----->"+item.getItemId());  if (item.getItemId() == UPDATE) {  // 用户点击了更新列表按钮  String xml = downLoadXML("http://10.0.2.2/mp3/resouces.xml");  System.out.println("xml---->"+xml);  } else if (item.getItemId() == ABOUT) {  // 用户 点击关于按钮  }  return super.onOptionsItemSelected(item);  }  // 进行文件的下载  private String downLoadXML(String urlStr) {     HttpDownloader httpDownloader = new HttpDownloader();  String result = httpDownloader  .download(urlStr);  return result;  }  } 

下面是效果截图:

 

你可能感兴趣的:(xml,android,String,list,服务器,menu)