2012-01-09 13 views
0

AndroidのSDカードからファイルを参照するには、次のコードがあります。 しかし、選択したファイルをAmazon S3の指定されたバケットにアップロードできるように、コードを実装するにはどうすればよいですか?お願いします、どうもありがとうございます。選択したファイルをAndroidからAmazon S3にアップロードする方法

package sg.edu.nyp.sit.s3; 

    import java.io.File; 
    import java.util.ArrayList; 
    import java.util.List; 
    import android.app.AlertDialog; 
    import android.app.ListActivity; 
    import android.content.DialogInterface; 
    import android.os.Bundle; 
    import android.view.View; 
    import android.widget.ArrayAdapter; 
    import android.widget.ListView; 
    import android.widget.TextView; 

    public class FilePickS3Activity extends ListActivity { 

private List<String> item = null; 
private List<String> path = null; 
private String root="/"; 
private TextView myPath; 

/** Called when the activity is first created. */ 
@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 
    myPath = (TextView)findViewById(R.id.path); 
    getDir(root); 
} 

private void getDir(String dirPath) 
{ 
    myPath.setText("Location: " + dirPath); 

    item = new ArrayList<String>(); 
    path = new ArrayList<String>(); 

    File f = new File(dirPath); 
    File[] files = f.listFiles(); 

    if(!dirPath.equals(root)) 
    { 

     item.add(root); 
     path.add(root); 

     item.add("../"); 
     path.add(f.getParent()); 

    } 

    for(int i=0; i < files.length; i++) 
    { 
      File file = files[i]; 
      path.add(file.getPath()); 
      if(file.isDirectory()) 
       item.add(file.getName() + "/"); 
      else 
       item.add(file.getName()); 
    } 

    ArrayAdapter<String> fileList = 
     new ArrayAdapter<String>(this, R.layout.row, item); 
    setListAdapter(fileList); 
} 

@Override 
protected void onListItemClick(ListView l, View v, int position, long id) { 

    File file = new File(path.get(position)); 

    if (file.isDirectory()) 
    { 
     if(file.canRead()) 
      getDir(path.get(position)); 
     else 
     { 
      new AlertDialog.Builder(this) 
      .setIcon(R.drawable.ic_launcher) 
      .setTitle("[" + file.getName() + "] folder can't be read!") 
      .setPositiveButton("OK", 
        new DialogInterface.OnClickListener() { 

         public void onClick(DialogInterface dialog, int which) { 
          // TODO Auto-generated method stub 
         } 
        }).show(); 
     } 
    } 
    else 
    { 
     new AlertDialog.Builder(this) 
      .setIcon(R.drawable.ic_launcher) 
      .setTitle("[" + file.getName() + "]") 
      .setPositiveButton("OK", 
        new DialogInterface.OnClickListener() { 


         public void onClick(DialogInterface dialog, int which) { 
          // TODO Auto-generated method stub 
         } 
        }).show(); 
    } 
} 

}

+0

あります

http://aws.amazon.com/de/sdkforandroid/

例とオンラインドキュメントがありますあなたはAWS SDKを試しました.. ?? – RAAAAM

+0

はい、AWS Android SDKを使用しています。 –

答えて

0

あなたがプログラムでデータを転送する場合、あなたはAWS SDKを使用することができます。http://aws.amazon.com/articles/4225549089557252

+0

こんにちは、ファイルのアップロード用の部分です。私はAWSAndroidDemoのサンプルを信じて、それはバケツリストを示しています。アップロードコードを実装するにはどうすればよいですか? –

+0

デモサンプル全体をただ読んでください。ファイルをamazon s3に共有するオプションがあります。 – RAAAAM

+0

http://aws.amazon.com/sdkforandroid/からaws-android-sdk-1.0.4をダウンロードしました。しかし、srcフォルダには多くのjavaファイルがあります。私はEclipseでそれらを開いて実装する方法がわかりません。アドバイスをしてもらえますか? –

関連する問題