1

我正在尝试Windows使用协议将我的 Android 应用程序连接到我的公司本地网络 ( ) smb。问题是我在这件事上有点新手,有些东西想念我。目标是将文件AREQA.txt从网络下载到设备。但是,我什至无法验证代码是否可以跟踪文件位置,因为当我将其编译到设备时应用程序崩溃(它加载正常,但在我调用该DownLoadF001过程时崩溃)。这是代码:

    public void DownLoadF001(View v) {
        jcifs.Config.registerSmbURLHandler();
        String user;
        String password;
        String filename;
        File localFile;
        SmbFile path = null;
        try {
            NtlmPasswordAuthentication auth = new NtlmPasswordAuthentication(null,"@@@@@@", "********");
            path = new SmbFile("smb:\\192.168.1.11/.../AREQA.txt", auth);
            try {
                if(path.exists()){
                    Toast.makeText(getApplicationContext(), "Sucesso!", Toast.LENGTH_LONG).show();
                    }
            } catch (Exception e1) {
                Toast.makeText(getApplicationContext(), e1.toString(), Toast.LENGTH_LONG).show();
            }
        } catch (MalformedURLException e2) {
            Toast.makeText(getApplicationContext(), e2.toString(), Toast.LENGTH_LONG).show();
        }
    }

我已经尝试try从主要的(及其所有相关代码)中删除内部,并且应用程序停止崩溃。但是,没有它,我看不到连接是否正常。

编辑:我设法捕捉到错误(Exception e1):

java.lang.NullPointerException: Attempt to invoke virtual method int java.lang.String.length()' on a null object reference. 有什么想法可以解决吗?

此外,正如@greenapps 所指出的,我正在.xml按方法从按钮调用此过程onClick

4

0 回答 0