Java org.apache.commons.net.nntp崩溃android

Java org.apache.commons.net.nntp崩溃android,java,android,Java,Android,Hay Guy,我正在使用org.apache.commons.net.nntp连接到nntp服务器,但是运行一个简单的nntp.connect(主机,端口)会使android崩溃 有人有什么想法吗?java软件包可以直接与android一起工作吗?还是需要编辑 谢谢 import org.apache.commons.net.nntp.*; public class newsdroid extends Activity { NNTP usenet; /** Called when t

Hay Guy,我正在使用org.apache.commons.net.nntp连接到nntp服务器,但是运行一个简单的nntp.connect(主机,端口)会使android崩溃

有人有什么想法吗?java软件包可以直接与android一起工作吗?还是需要编辑

谢谢

import org.apache.commons.net.nntp.*;

public class newsdroid extends Activity {
    NNTP usenet; /** Called when the activity is first created. */

    @Override public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        try {
            usenet.connect("ssl-eu.astraweb.com", 563);
        } catch (SocketException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
}

您尚未初始化“usenet”字段,因此会得到一个NullPointerException


“NNTP usenet;”相当于“NNTP usenet=null;”

您尚未初始化“usenet”字段,因此会得到一个NullPointerException


“NNTP usenet;”相当于“NNTP usenet=null;”

您需要初始化变量
usenet
,只需使用
NTTP usenet
声明变量即可。它只是将变量声明为type
NTTP
,并且它没有任何引用,这通常被定义为
null
,因此出现
NullPointerException

您可能需要签出,因此将其添加到代码中

NTTPClient usenet = new NTTPClient();

这就是将变量
usenet
初始化为
NTTPClient

您需要初始化变量
usenet
,只需使用
NTTP usenet
声明变量即可。它只是将变量声明为type
NTTP
,并且它没有任何引用,这通常被定义为
null
,因此出现
NullPointerException

您可能需要签出,因此将其添加到代码中

NTTPClient usenet = new NTTPClient();

这是将变量
usenet
初始化为
NTTPClient

您是否尝试使用
LogCat
调试程序?LogCat将对崩溃发生的位置进行非常详细的描述。如果您使用的是LogCat,stacktrace是什么?它说“com.example.use.use.onCreate(use.java:19)上的java.lang.NullPointerException可以发布您的
onCreate
方法吗?在我看来,您在调用
nntp.connect(主机、端口)时似乎没有初始化某些东西。”;
import org.apache.commons.net.nntp.*;公共类newsdroid扩展活动{nntp usenet;/**在首次创建活动时调用。*/@Override public void onCreate(Bundle savedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.main);重试{usenet.connect(“ssl eu.astraweb.com”,563);}catch(SocketException e){//TODO自动生成的catch块e.printStackTrace();}catch(IOException e){//TODO自动生成的catch块e.printStackTrace();}}您是否尝试过使用
LogCat
调试您的程序?LogCat将给出崩溃发生位置的非常详细的描述。如果您使用的是LogCat,stacktrace是什么?它说“com.example.use.use.onCreate上的java.lang.NullPointerException(use.java:19)你能发布你的
onCreate
方法吗?在我看来,当你调用
nntp.connect(主机,端口);
import org.apache.commons.net.nntp.*;公共类newsdroid扩展活动时,你似乎没有初始化一些东西{NNTP usenet;/**在首次创建活动时调用。*/@Override public void onCreate(Bundle savedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.main);try{usenet.connect(“ssl eu.astraweb.com”,563);}catch(SocketException e){//TODO自动生成的catch块e.printStackTrace();}catch(IOException e){//TODO自动生成的catch块e.printStackTrace();}}}}}如何初始化它?我想把usenet.connect(“ssl eu.astraweb.com”,563)放进去就可以了。它类似于:NTTP usenet=new NTTP();该类的文档(您可以在web上阅读)建议您可能需要使用NNTPClient,但原理是一样的。您可能需要阅读一本关于Java的介绍性书籍,特别是关于变量和实例之间差异的部分。我如何初始化它?我想使用usenet.connect(“ssl eu.astraweb.com”,563);会这样做吗?它将类似于:NTTP usenet=new NTTP();该类的文档(您可以在web上阅读)表明您可能希望使用NNTPClient,但原理是一样的。您可能需要阅读一本关于Java的介绍性书籍,特别是关于变量和实例之间差异的部分。