我想构建一个应用程序,允许用户从图库中选择视频,当用户选择视频时,它会开始在手机上安装的youtube应用上传。安装在手机上的youtube应用已经登录。到目前为止,我只能在选择视频时打开应用,请进一步帮助我。
package com.PG.video;
import android.support.v7.app.ActionBarActivity;
import android.support.v7.app.ActionBar;
import android.support.v4.app.Fragment;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.
import android.os.Build;
import java.io.File;
import android.support.v7.app.ActionBarActivity;
import android.support.v7.app.ActionBar;
import android.support.v4.app.Fragment;
import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.os.Environment;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
import android.os.Build;
import android.provider.MediaStore;
public class MainActivity extends Activity {
Button camerabtn;
Button upld;
public static final int request_Code = 0;
EditText et;
private static final int VIDEO_CAPTURE = 101;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
camerabtn=(Button)findViewById(R.id.button1);
upld=(Button)findViewById(R.id.button2);
et=(EditText)findViewById(R.id.editText1);
camerabtn.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View v)
{
File mediaFile =new File(Environment.getExternalStorageDirectory().getAbsolutePath()
+ "/"+et.getText().toString()+".mp4");
Intent intent = new Intent(MediaStore.ACTION_VIDEO_CAPTURE);
Uri videoUri = Uri.fromFile(mediaFile);
intent.putExtra(MediaStore.EXTRA_OUTPUT, videoUri);
startActivityForResult(intent, VIDEO_CAPTURE);
}}
);
upld.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
Intent intent=new Intent(Intent.ACTION_PICK,MediaStore.Video.Media.EXTERNAL_CONTENT_URI);
String value = null;
intent.putExtra(MediaStore.EXTRA_OUTPUT, value);
startActivityForResult(intent, request_Code);
}
});
}
protected void onActivityResult(int requestCode, int resultCode, Intent data)
{
switch (requestCode)
{
case VIDEO_CAPTURE:
if (resultCode == RESULT_OK) {
Toast.makeText(this, "Video saved to:\n" +
data.getData(), Toast.LENGTH_LONG).show();
} else if (resultCode == RESULT_CANCELED) {
Toast.makeText(this, "Video recording cancelled.",
Toast.LENGTH_LONG).show();
} else {
Toast.makeText(this, "Failed to record video",
Toast.LENGTH_LONG).show();
}
break;
case request_Code:
Intent LaunchIntent = getPackageManager().getLaunchIntentForPackage("com.google.android.youtube");
startActivity(LaunchIntent);
break;
}
}
}