package com.example.ftp;
import android.util.*;
//import android.app.Activity;
import org.apache.commons.net.ftp.*;
import java.io.*;
public class MainActivity {
//Now, declare a public FTP client object.
private FTPClient mFTPClient = null;
//Method to connect to FTP server:
public boolean ftpConnect(String host, String username, String password, int port){
try {
mFTPClient = new FTPClient();
// connecting to the host
mFTPClient.connect("192.168.10.10", 4899);
// now check the reply code, if positive mean connection success
if (FTPReply.isPositiveCompletion(mFTPClient.getReplyCode())) {
// login using username & password
boolean status = mFTPClient.login("test", "test1234");
/* Set File Transfer Mode
*
* To avoid corruption issue you must specified a correct
* transfer mode, such as ASCII_FILE_TYPE, BINARY_FILE_TYPE,
* EBCDIC_FILE_TYPE .etc. Here, I use BINARY_FILE_TYPE
* for transferring text, image, and compressed files.
*/
mFTPClient.setFileType(FTPClient.BINARY_FILE_TYPE);
mFTPClient.enterLocalPassiveMode();
return status;
}
} catch(Exception e) {
Log.d("TAG", "Error: could not connect to host " + host );
}
return false;
}
}
=========================================================================
03-08 11:27:25.631: E/AndroidRuntime(6998): FATAL EXCEPTION: main
03-08 11:27:25.631: E/AndroidRuntime(6998): java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.example.ftp/com.example.ftp.MainActivity}: java.lang.ClassCastException: com.example.ftp.MainActivity cannot be cast to android.app.Activity
03-08 11:27:25.631: E/AndroidRuntime(6998): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1983)
03-08 11:27:25.631: E/AndroidRuntime(6998): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2084)
03-08 11:27:25.631: E/AndroidRuntime(6998): at android.app.ActivityThread.access$600(ActivityThread.java:130)
03-08 11:27:25.631: E/AndroidRuntime(6998): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1195)
03-08 11:27:25.631: E/AndroidRuntime(6998): at android.os.Handler.dispatchMessage(Handler.java:99)
03-08 11:27:25.631: E/AndroidRuntime(6998): at android.os.Looper.loop(Looper.java:137)
03-08 11:27:25.631: E/AndroidRuntime(6998): at android.app.ActivityThread.main(ActivityThread.java:4745)
03-08 11:27:25.631: E/AndroidRuntime(6998): at java.lang.reflect.Method.invokeNative(Native Method)
03-08 11:27:25.631: E/AndroidRuntime(6998): at java.lang.reflect.Method.invoke(Method.java:511)
03-08 11:27:25.631: E/AndroidRuntime(6998): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:786)
03-08 11:27:25.631: E/AndroidRuntime(6998): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
03-08 11:27:25.631: E/AndroidRuntime(6998): at dalvik.system.NativeStart.main(Native Method)
03-08 11:27:25.631: E/AndroidRuntime(6998): Caused by: java.lang.ClassCastException: com.example.ftp.MainActivity cannot be cast to android.app.Activity
03-08 11:27:25.631: E/AndroidRuntime(6998): at android.app.Instrumentation.newActivity(Instrumentation.java:1053)
03-08 11:27:25.631: E/AndroidRuntime(6998): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1974)
03-08 11:27:25.631: E/AndroidRuntime(6998): ... 11 more
===============================
FTP를 한번 만들어보려고하는 초보인데요,
어디서 잘못된건지 모르겠네요ㅠ
에러는 하나씩잡아서 에뮬구동은 되는데.. 위의 문구처럼 logcat에 에러가 나네요
Mainactivity class 가 activity 를 상속받지 않아서인듯?