1

ボイス レコーダーの音声やカメラ機能の写真などのマルチメディア ファイルを Android アプリケーションから Microsoft Azure にアップロードする方法はありますか?

サーバー側やクライアント側など、与えられたすべてのチュートリアルを見て、コードをプロジェクトに挿入しました。しかし、アプリケーションの「送信」ボタンを使用してそれらを正確にアップロードするにはどうすればよいですか?

ご意見をお聞かせください。以下は、私の基本的なカメラアプリケーションのコードです

package com.example.testproject;

import android.app.Activity;
import android.content.Intent;
import android.graphics.Bitmap;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.ImageView;

public class Camera extends Activity{

ImageView iv;

public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.camera);


iv = (ImageView) findViewById(R.id.imageView1);
Button btn = (Button) findViewById(R.id.btnPhoto);
btn.setOnClickListener(new OnClickListener(){

    public void onClick(View v){
        Intent intent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
        startActivityForResult(intent, 0);
    }
});

}

protected void onActivityResult(int requestCode, int resultCode, Intent data)
{
if(requestCode == 0)
{
    Bitmap theImage = (Bitmap) data.getExtras().get("data");
    iv.setImageBitmap(theImage);
}
}

 }
4

1 に答える 1

0

Windows Azure ストレージ アカウントを持っている場合は、BLOB コンテナーを作成し、コンテナーに格納されている BLOB にメディア ファイルをアップロードできます。アプリケーションは、共有アクセス文字列または保存されたアクセス ポリシーを使用して、これらのファイルに対するクライアントのアクセスを制御します。たとえば、次のコードは Java コンソール アプリケーションとして実行され、ローカルの .jpg ファイルをいくつかの説明的なメタデータと共にクラウド内の BLOB にアップロードします。

public class SASmeta 
{
public static void main(String[] args) throws URISyntaxException, FileNotFoundException, StorageException, IOException 
   {                        
   URI baseuri = new URI("http://grassy.blob.core.windows.net");
   CloudBlobClient blobclient = new CloudBlobClient(baseuri);
   MyUploadBlob("container1","sr=c&sv=2012-02-12&sig=b%2BK%2FmX8r7dLCVxs5PSPmmji1L6kSxNupp9SKF7yj27w%3D&si=r",blobclient);          
   }

public static void MyUploadBlob(String containerName, String containerSAS, CloudBlobClient blobClient) throws URISyntaxException, StorageException, FileNotFoundException, IOException
   {    
   String blobName = "image1.jpg";  
   String localFileName = "c:\\myimages\\image1.jpg";  
   URI uri = new URI(blobClient.getEndpoint().toString() + "/" + containerName + "/" + blobName + "?" + containerSAS);
   CloudBlockBlob sasBlob = new CloudBlockBlob(uri, blobClient);    
   HashMap<String, String> user = new HashMap<String, String>();    
   user.put("firstname", "Joe");
   user.put("lastname", "Smith" );
   user.put("age", "28");
   user.put("presenter", "no");  
   sasBlob.setMetadata(user);
   File fileReference = new File(localFileName);
   sasBlob.upload(new FileInputStream(fileReference), fileReference.length());
   System.out.println("The blob: " + blobName + " has been uploaded to:");
   System.out.println(uri);
   }
}  
于 2013-05-03T21:16:29.790 に答える