Android Toast错误

Android Toast错误,android,asynchronous,toast,Android,Asynchronous,Toast,我收到一个致命异常:AsyncTask#1错误 我没有创建一个异步任务,我只是调用了下面的代码 我正在从连接到网络的类调用以下命令: Toast.makeText(context, "Connection Successful", Toast.LENGTH_LONG).show(); 上下文已从main活动在构造函数中传递 我不确定我在这里做错了什么 变化: Toast.makeText(getApplicationContext(), "Connection Successful", Toa

我收到一个
致命异常:AsyncTask#1
错误

我没有创建一个异步任务,我只是调用了下面的代码

我正在从连接到网络的类调用以下命令:

Toast.makeText(context, "Connection Successful", Toast.LENGTH_LONG).show();
上下文
已从
main活动
在构造函数中传递

我不确定我在这里做错了什么

变化:

Toast.makeText(getApplicationContext(), "Connection Successful", Toast.LENGTH_LONG).show()
Toast.makeText(context, "Connection Successful", Toast.LENGTH_LONG).show();  


多么奇怪的回答:)

第一个家伙想让你从中扩展
网络
类,第二个家伙告诉你你还没有Android SDK:)


您只需要将正确的
上下文
对象发送到您的
网络
对象,您需要从方法发送
上下文
对象,因为此上下文对象对于消息()是正确的。

对显示来自
网络
类(非活动类)的Toast进行以下更改:

步骤:1将活动上下文传递给网络类,而不是
getBaseContext()

步骤2:使用
runOnUiThread
从网络类显示Toast:

 public boolean connect() {
 //....your code..
 Activity activity = (Activity) context;
 activity.runOnUiThread(new Runnable() {
    public void run() {
        //show your Toast here..
       Toast.makeText(context,"Connection Successful", Toast.LENGTH_LONG).show();
    }
});
 //....your code..
}

您可以发布Toast命令所在的代码吗?它是否存在于活动、服务、线程中。。。。所有这些都将帮助人们回答你。您可能没有创建AsyncTask,但您创建了什么?能否显示整个代码…?以及整个日志输出?您试图在doInBackground中显示Toast的位置?如果是,则将其移动到onPostExecute方法中,编写如下Toast.makeText(YourActivity.this,“xyz click”,Toast.LENGTH_SHORT).show();getBaseContext()不起作用,它说创建方法“getBaseContext”@user1331971您可以将
公共类网络
更改为
公共类网络扩展活动
?@user1331971然后您可以使用我的,或Nirav的solution@user1331971:您必须扩展Activity,这将如何影响类的功能?此类不是活动,主要活动调用网络类。我只想让这个类在调用时说连接或连接失败。因此,它必须在调用它的活动上显示toast。getApplicationContext()不起作用,eclipse说创建方法。安装了Android SDk,应用程序的所有其他方面都正常工作。getApplicationContext()不仅在类扩展活动时有效吗?谢谢,我现在就试试,看起来很有希望。@Zapnologica:很高兴我能帮忙。回答得很好!我使用它来显示异步任务中的Toast。
netConnection = new Network(new Network.OnMessageReceived() { 
            @Override 
            // here the messageReceived method is implemented 
           public void messageReceived(String message) { 
                 // this method calls the onProgressUpdate 
                 publishProgress(message); 
           } 
     },Your_Current_Activity_Name.this);
 public boolean connect() {
 //....your code..
 Activity activity = (Activity) context;
 activity.runOnUiThread(new Runnable() {
    public void run() {
        //show your Toast here..
       Toast.makeText(context,"Connection Successful", Toast.LENGTH_LONG).show();
    }
});
 //....your code..
}