2012-03-27 8 views
1

を見つけた私は、FTPクライアントhttp://www.lysesoft.com/products/andftp/index.html何の活動も例外

のため、このサイトからサンプルコードをダウンロードしているしかし、私はこの例外を持って、クラッシュしたプロジェクトを実行したとき。

03-27 21:40:44.572: INFO/System.out(559): EEE : No Activity found to handle Intent { act=android.intent.action.PICK dat=ftp://192.168.20.128 typ=vnd.android.cursor.dir/lysesoft.andftp.uri (has extras) } 

この理由は何ですか? 誰でも私にFTP用の完全に動作するアンドロイドコードを提供できますか?

これはダウンロード用のコードです。

Intent intent = new Intent(); 
       intent.setAction(Intent.ACTION_PICK); 
       // FTP URL (Starts with ftp://, sftp://, ftps:// or scp:// followed by hostname and port). 
       Uri ftpUri = Uri.parse("ftp://192.168.20.128"); 
       intent.setDataAndType(ftpUri, "vnd.android.cursor.dir/lysesoft.andftp.uri"); 
       // Download 
       intent.putExtra("command_type", "download"); 
       // FTP credentials (optional) 
       intent.putExtra("ftp_username", "anonymous"); 
       intent.putExtra("ftp_password", "[email protected]"); 
       //intent.putExtra("ftp_keyfile", "/sdcard/dsakey.txt"); 
       //intent.putExtra("ftp_keypass", "optionalkeypassword"); 
       // FTP settings (optional) 
       intent.putExtra("ftp_pasv", "true"); 
       //intent.putExtra("ftp_resume", "true"); 
       //intent.putExtra("ftp_encoding", "UTF-8"); 
       //intent.putExtra("ftps_mode", "implicit"); 
       // Activity title 
       intent.putExtra("progress_title", "Downloading files ..."); 
       // Remote files to download. 
       intent.putExtra("remote_file1", "/remotefolder/subfolder/file1.zip"); 
       intent.putExtra("remote_file2", "/remotefolder/subfolder/file2.zip"); 
       // Target local folder where files will be downloaded. 
       intent.putExtra("local_folder", "/sdcard/localfolder"); 
       intent.putExtra("close_ui", "true");  
       startActivityForResult(intent, DOWNLOAD_FILES_REQUEST); 

私はあなたが活動がアンドロイドマニフェストに記載されていることを「startActivityForResult」

+0

AndFTPアプリをインストールしましたか? – Cristian

+0

いいえ、その必要性は何ですか – user1293519

答えて

3

Man、FTPで作業できるようにするには、AndFTPをインストールする必要があります(自分でFTP機能を実装しない限り)。

あなたはあなたが行ったことを推測してください:andFtpウェブサイトで見つかったコードスニペットを実装することで、アプリケーションでFTPを使用できるようになると考えました。

私が正しいと思ったら、Androidの仕組みやFTPを使うために必要なことを完全に理解できません。ですから、andFTPは、FTPを使用するために外部アプリケーションが使用できるいくつかのアクティビティを提供しています。しかし、それを動作させるためには、andFTPアプリケーションがインストールされている必要があります

だからこそ、ActivityNotFound例外が発生します。

  • あなたはあなたの自己によってすべてのFTPのものを実装する(とandFTP忘れる)
  • それとも、例外のようなものをキャッチしていること、それらを伝えるユーザーにメッセージを表示する次のいずれか:だからここにあなたの唯一の2つの選択肢があります彼らはあなたのアプリが正しく動作するようにandFTPをインストールする必要があります。
0

でエラーを確認しました得ますか?この種のエラーが発生します。

+0

はい私は1つのアクティビティしか持たず、マニフェストにリストされています。 – user1293519

+0

このインテントフィルタを主な活動に追加しましたか? は <インテントフィルタ> <アクションアンドロイド:名= "android.intent.action.PICK" /> <カテゴリアンドロイド:名= "android.intent.category.DEFAULT" /> <データのandroid:MIMEタイプ= "vnd.android.cursor.dir/lysesoft.andftp.uri" /> cuneytyvz

+0

はい、私は追加しましたが、それでもクラッシュします。 – user1293519

0

まず、AndroidManifest.xmlファイルでアクティビティを定義する必要があります。 Androidアプリケーションで動作しているアクティビティを使用している場合は、AndroidManifest.xmlファイルで定義する必要があります。

+0

私はアクティビティが1つしかなく、マニフェストファイルで宣言しました。 – user1293519