Я хочу загрузить видео на YouTube с Android, для этого я использую Google API, мой код:
import com.google.gdata.client.youtube.YouTubeService;
import com.google.gdata.data.media.MediaFileSource;
import com.google.gdata.data.media.mediarss.MediaCategory;
import com.google.gdata.data.media.mediarss.MediaDescription;
import com.google.gdata.data.media.mediarss.MediaKeywords;
import com.google.gdata.data.media.mediarss.MediaTitle;
import com.google.gdata.data.youtube.VideoEntry;
import com.google.gdata.data.youtube.YouTubeMediaGroup;
import com.google.gdata.data.youtube.YouTubeNamespace;
import com.google.gdata.util.AuthenticationException;
import com.google.gdata.util.ServiceException;
public void uploadVideo()
{
YouTubeService service = new YouTubeService(clientId,developerKey);
try
{
service.setUserCredentials(username, password);
}
catch (AuthenticationException ex)
{
Log.e("AuthenticationError",":"+ex.getMessage());
return;
}
File videoFile = new File("/sdcard/Ronaldinho.mp4");
if(!videoFile.exists())
{
Log.e("FileUploadErr","FileNotFound");
return;
}
String mimeType = "video/mp4";
String videoTitle = "English Communicaton";
VideoEntry newEntry = new VideoEntry();
YouTubeMediaGroup mg = newEntry.getOrCreateMediaGroup();
mg.addCategory(new MediaCategory(YouTubeNamespace.CATEGORY_SCHEME,"Tech"));
mg.setTitle(new MediaTitle());
mg.getTitle().setPlainTextContent(videoTitle);
mg.setKeywords(new MediaKeywords());
mg.getKeywords().addKeyword("learning english");
mg.setDescription(new MediaDescription());
mg.getDescription().setPlainTextContent(videoTitle);
MediaFileSource ms = new MediaFileSource(videoFile,mimeType);
newEntry.setMediaSource(ms);
try
{
service.insert(new URL(urlUpload), newEntry);
}
catch(ServiceException se)
{
Log.e("UploadVideo",":" + se.getMessage());
}
catch(IOException ioex)
{
Log.e("IOExceptionVideoUpload",":" + ioex.getMessage());
}
}
Я не уверен, что этот код может работать на Android, потому что яполучить запрещенную ошибку.
Мой вопрос: почему этот код работает на Android?Gdata не совместим с Android?