我想将图片上传到GoogleDrive,我使用GitHub(QuickStart)中的示例 .I调用位于help-class中的方法 uploadFileToDrive ,从MainActivity扩展。
void uploadFileToDrive(final Bitmap bitmap)
{
Drive.DriveApi.newContents(MainActivity.mGoogleApiClient).setResultCallback(new ResultCallback<ContentsResult>() {
@Override
public void onResult(ContentsResult res) {
OutputStream outputStream = res.getContents().getOutputStream();
ByteArrayOutputStream bitmapStream = new ByteArrayOutputStream();
bitmap.compress(Bitmap.CompressFormat.PNG, 100, bitmapStream);
try {
outputStream.write(bitmapStream.toByteArray());
} catch (IOException e1) {
Clients.prt("FirstException");
}
MetadataChangeSet metadataChangeSet = new MetadataChangeSet.Builder()
.setMimeType("image/jpeg").setTitle("Android Photo.png").build();
IntentSender intentSender = Drive.DriveApi
.newCreateFileActivityBuilder()
.setInitialMetadata(metadataChangeSet)
.setInitialContents(res.getContents())
.build(MainActivity.mGoogleApiClient);
try {
startIntentSenderForResult( //Exception from this line
intentSender, 0, null, 0, 0, 0);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
但我得到NullPointerException:
04-22 12:22:52.548:W / System.err(2377):java.lang.NullPointerException 04-22 12:22:52.558:W / System.err(2377):在android.app.Activity.startIntentSenderForResultInner(Activity.java:3499) 04-22 12:22:52.558:W / System.err(2377):在android.app.Activity.startIntentSenderForResult(Activity.java:3476) 04-22 12:22:52.588:W / System.err(2377):在android.app.Activity.startIntentSenderForResult(Activity.java:3443) 04-22 12:22:52.588:W / System.err(2377):at com.example.mathdirectory.materials.DriveHelper $ 2.onResult(DriveHelper.java:128)
连接到GoogleDrive是正确的,我可以获得图像。请帮助,问题是什么?