我是Android平台的初学者,遇到了严重的问题。我想从gmail中获取电子邮件,因此我创建了一个可以执行此操作的类。但是当我在android NetworkOnMainThreadException中运行我的类时。所以我用新的Runnable创建了新的Thread,如下所示:
public void onClick(View v) {
new Thread(new Runnable() {
public void run() {
FetchEmails e = new FetchEmails();
}
}).start();
}
它工作正常,但我似乎无法访问e.getMessage以获取实际的电子邮件。考虑到这一点,我已经将Runnable实现到我的FetchEMails类,并完成了我已经覆盖的run()中的所有获取代码。 run()中的最后一段代码是将变量设置为“true”。然后在我的Activity类中,我实例化了这个类,我完成了这个:new Thread(e).start();
。下面我有一个while循环来检查类已经完成到run()方法的结束(通过检查变量是否为真)。所以现在我已经创建了我的新理论,它不涉及UI,当代码完成时我想得到消息。但似乎我仍然收到NetworkOnMainThreadException错误。任何帮助都是值得赞赏的。感谢。