Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/234.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android ftp_主机无法解析或不是字段_Android - Fatal编程技术网

Android ftp_主机无法解析或不是字段

Android ftp_主机无法解析或不是字段,android,Android,我正在在线学习android应用程序开发,我使用指南创建了一个项目,但收到错误呼叫“ftp\u主机无法解析或不是字段”和“ftp\u消息\u结果无法解析或不是字段” 我的布局文件包括以下内容 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="mat

我正在在线学习android应用程序开发,我使用指南创建了一个项目,但收到错误呼叫“ftp\u主机无法解析或不是字段”和“ftp\u消息\u结果无法解析或不是字段”

我的布局文件包括以下内容

  <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
          android:orientation="vertical"
          android:layout_width="match_parent"
          android:layout_height="match_parent">
   <LinearLayout android:layout_width="match_parent" 
              android:layout_height="wrap_content">
    <TextView android:text="@string/ftp_server_prompt"
              android:layout_width="wrap_content" 
              android:layout_height="wrap_content"/>
    <EditText android:id="@+id/ftp_host" 
              android:layout_width="match_parent"
              android:layout_height="wrap_content" 
              android:inputType="textUri">
        <requestFocus></requestFocus>
    </EditText>
</LinearLayout>
<Button android:text="@string/ftp_button_text"
        android:layout_width="match_parent" 
        android:layout_height="wrap_content"
        android:onClick="showMessage"/>
<ScrollView android:layout_width="match_parent" 
            android:layout_height="match_parent">
    <TextView android:id="@+id/ftp_message_result"
              android:textSize="@dimen/ftp_message_size" 
              android:layout_width="match_parent" 
              android:layout_height="wrap_content"/>
</ScrollView>
</LinearLayout>

我的MainActivity文件如下所示

import java.io.BufferedReader;
import java.net.Socket;
import java.util.ArrayList;
import java.util.List;

import android.R;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.EditText;
import android.widget.TextView;

public class MainActivity extends Activity {
private EditText mFtpHost;
private TextView mFtpMessageResult;
private static final int FTP_PORT = 8080;

/** Initializes the app when it is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_list_item);
    mFtpHost = (EditText)findViewById(R.id.ftp_host);
    mFtpMessageResult = (TextView)findViewById(R.id.ftp_message_result);
}

public void showMessage(View clickedButton) {
    String host = mFtpHost.getText().toString();
    try {
        Socket socket = new Socket();//(host, FTP_PORT);
        BufferedReader in = SocketUtils.getReader(socket);
        List<String> results = new ArrayList<String>();
        String line = in.readLine();
        results.add(line);
        if (line.startsWith("220-")) {
            while((line = in.readLine()) != null) {
                results.add(line);
                if ((line.equals("220") || line.startsWith("220 "))) {
                    break;
                }
            }
        }
        String output = makeOutputString(results);
        mFtpMessageResult.setText(output);
        socket.close();
    } catch (Exception e) {
        mFtpMessageResult.setText("Unknown host: " + host);
        e.printStackTrace(); // View this in DDMS window
    } 
}

private String makeOutputString(List<String> results) {
    StringBuilder output = new StringBuilder();
    for (String s: results) {
        output.append(s + "\n");
    }
    return(output.toString());
}
导入java.io.BufferedReader;
导入java.net.Socket;
导入java.util.ArrayList;
导入java.util.List;
导入android.R;
导入android.app.Activity;
导入android.os.Bundle;
导入android.view.view;
导入android.widget.EditText;
导入android.widget.TextView;
公共类MainActivity扩展了活动{
私有编辑文本mFtpHost;
私有文本视图mFtpMessageResult;
专用静态最终int FTP_端口=8080;
/**在首次创建应用程序时对其进行初始化*/
@凌驾
创建时的公共void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity\u list\u项);
mFtpHost=(EditText)findViewById(R.id.ftp\u主机);
mFtpMessageResult=(TextView)findViewById(R.id.ftp\u message\u result);
}
公共作废显示消息(查看单击按钮){
String host=mFtpHost.getText().toString();
试一试{
套接字套接字=新套接字();/(主机,FTP_端口);
BufferedReader in=SocketUtils.getReader(套接字);
列表结果=新建ArrayList();
String line=in.readLine();
结果:添加(行);
if(第220-行开始){
而((line=in.readLine())!=null){
结果:添加(行);
if((行等于(“220”)| |行开始与(“220”)){
打破
}
}
}
字符串输出=makeOutputString(结果);
mFtpMessageResult.setText(输出);
socket.close();
}捕获(例外e){
mFtpMessageResult.setText(“未知主机:+主机”);
e、 printStackTrace();//在DDMS窗口中查看此内容
} 
}
私有字符串makeOutputString(列出结果){
StringBuilder输出=新的StringBuilder();
用于(字符串s:结果){
输出。追加(s+“\n”);
}
return(output.toString());
}

}

验证您的布局文件是否真正被称为“活动列表”项。如果不是,你必须改变

setContentView(R.layout.activity_list_item);
,在onCreate()方法中,执行以下操作:

setContentView(R.layout.'THE NAME OF THE LAYOUT');