我正在尝试将图像上传到azure blob存储区。我正在使用java SDK for azure.I引用了这些库。这是我的代码..
public void uploadImage(View view) {
// Do something in response to button click
try
{
String storageConnectionString =
RoleEnvironment.getConfigurationSettings().get("StorageConnectionString");
CloudStorageAccount storageAccount =
CloudStorageAccount.parse(storageConnectionString);
// Create the blob client
CloudBlobClient blobClient = storageAccount.createCloudBlobClient();
// Retrieve reference to a previously created container
CloudBlobContainer container = blobClient.getContainerReference("classifieds");
// Create or overwrite the "myimage.jpg" blob with contents from a local file
CloudBlockBlob blob = container.getBlockBlobReference("myimage.png");
InputStream ims = getAssets().open("myimage.png");
int len =ims.available();
blob.upload(ims,(long)ims.available());
}
catch(Exception ex)
{
System.out.println(ex);
}
}
这是我的错误日志
05-05 15:34:25.295:E / Trace(5195):错误打开跟踪文件:没有这样的 文件或目录(2)05-05 15:34:26.105:I / dalvikvm(5195):不能 找到方法 com.microsoft.windowsazure.serviceruntime.RoleEnvironment.getConfigurationSettings, 从方法中引用 com.example.azuresample.MainActivity.uploadImage 05-05 15:34:26.105: W / dalvikvm(5195):VFY:无法解析静态方法8441: LCOM /微软/ windowsazure / serviceruntime / RoleEnvironment; .getConfigurationSettings ()Ljava / util的/地图; 05-05 15:34:26.105:D / dalvikvm(5195):VFY:替换 操作码0x71在0x0000 05-05 15:34:26.550:D / gralloc_goldfish(5195): 未检测到GPU仿真的仿真器。 05-05 15:34:34.254: D / AndroidRuntime(5195):关闭VM 05-05 15:34:34.254: W / dalvikvm(5195):threadid = 1:线程退出,未捕获异常 (组= 0x40a13300)05-05 15:34:34.285:E / AndroidRuntime(5195):致命 例外:主要
答案 0 :(得分:2)
当您的代码作为RoleEnvironment
运行时,您只能使用Cloud Service
课程。由于您在Android应用程序中运行代码,因此您无法使用此类。
如果连接设置在配置文件中,您可能需要使用其他方法从该配置文件中读取。