Java 如何在异步函数中调用startActivity方法

Java 如何在异步函数中调用startActivity方法,java,android,Java,Android,我正在他们的网站上试用android教程,并尝试在获取网页后修改MainActivity以更改为DisplayMessageActivity 问题是我无法访问回调中的intent变量,也无法定义它们(我对android和Java不熟悉) 以下是我正在尝试做的: 我正在使用图书馆。如果我省略了所有与意图相关的代码,则会获取url。有人能解释一下为什么这不起作用,或者给我指出正确的方向吗?我曾尝试使用defaultHTTPClient,但似乎无法使用它获取页面。您需要一个上下文,从中生成并启动新的意

我正在他们的网站上试用android教程,并尝试在获取网页后修改MainActivity以更改为DisplayMessageActivity

问题是我无法访问回调中的intent变量,也无法定义它们(我对android和Java不熟悉)

以下是我正在尝试做的:


我正在使用图书馆。如果我省略了所有与意图相关的代码,则会获取url。有人能解释一下为什么这不起作用,或者给我指出正确的方向吗?我曾尝试使用defaultHTTPClient,但似乎无法使用它获取页面。

您需要一个上下文,从中生成并启动新的意图

我猜您的异步任务是由活动或服务创建的。在构造过程中,将活动或服务的引用传递给AsyncTask,并将其存储在成员变量中

在要启动新活动的位置,使用对活动或服务的引用来创建意图并启动活动。只需确保在传递给Activity.RunUnuithRead(Runnable)的Runnable中执行所有这些操作,因为根据android设备的VM,您可能无法从UIThread以外的任何其他线程创建活动,而从UIThread始终可以创建活动


祝你好运

使您的意图为最终目的,以便可以在回调中访问它function@SimonMokhele谢谢,这很有效。