java Android开发人员新手无法在模拟器中启动代码
背景:
我最近开始使用Android。我想为Android制作一个应用程序,从服务器获取数据并进行定制,显示数据,然后使用Twitter发布结果。我正在考虑使用(twitter4japi)
最初,我在服务器上有一个PERL文件,需要从应用程序接口调用它。(我已经修改了HelloWorld.java的代码,可以在(dev.安卓..)上找到)。我存储在服务器上的PERL文件的输出格式为print”“,我将使用集合打印输出,并在应用程序中对其进行解码
现在我的代码如下:
package com.example.hello安卓;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.MalformedURLException;
import java.net.URL;
import 安卓.app.Activity;
import 安卓.os.Bundle;
import 安卓.widget.TextView;
public class HelloWorldAndroidActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
TextView tv=new TextView(this);
/* tv.setText("Hello, World !! This is my First Android App .. Cheers");
setContentView(tv);*/
try {
InputStream is = new URL("http://myserver.com:1941/cgi-bin/myperl.pl").openStream();
BufferedReader in = new BufferedReader(new InputStreamReader(is));
String str = in.readLine();
in.close();
tv.setText(str);
setContentView("phew");
} catch (MalformedURLException e) {
//FAIL
} catch (IOException e) {
//FAIL
}
}
}
但是,当Eclipse emulator显示时,我无法使用代码从服务器文件中获取数据,但除了“shinny 安卓徽标”之外,我不会显示任何内容
有没有办法让我读那个文件?另外,我希望你们这些高年级学生向我推荐一些关于Android开发的创业/傻瓜书
# 1 楼答案
您希望模拟器启动多长时间?启动可能需要两分钟以上。这方面有点慢。试着给它一点时间来真正进入主屏幕。还有,你的logcat有什么有趣的话吗
此外,您正在主UI线程上执行网络操作。永远不要这样做。您需要将网络操作转移到其他线程。有关更多详细信息,请阅读Painless Threading