阿里旺旺名称怎么改云bucket名称那个选项要怎么填

阿里云OSS 上传文件
阿里云后台管理、API 集成教程、Key/ 域名的查询
1、查看上传的文件在哪?
a 、百度阿里云,进入官网。然后进入管理控制台
b、左侧菜单栏,进入对象存储 OSS
c、进入 Bucket 管理页面,点击创建的bucket 名称
d、进入bucket 管理界面,点击左侧菜单
bucket属性 菜单查看bucket 域名vcD4KPHA+b2JqZWN0ILncwO0gsum/tLncwO3Jz7SrtcTOxLz+PC9wPgo8cD7NvMastKbA7SAgsum/tM28xqzT8sP7tdjWtzwvcD4KPHA+PGltZyBzcmM9"/uploadfile/Collfiles/04.png" alt="\">
2、查看accessKey 和screctKey
3、集成 OSS sdk下载地址和API 地址
实现上传图片
1、下载sdk
/document_detail/oss/sdk/android-sdk/preface.html?spm=5176.docoss/sdk/android-sdk/get-start.6.302.WewVmT
解压后得到 jar 包,目前包括 aliyun-oss-sdk-android-2.2.0.jar、okhttp-3.2.0.jar 和 okio-1.6.0.jar
将以上 3 个 jar 包导入 libs 目录
2、在android manifest中增加权限
3、初始化 OSS client
可以建个 application 在 application中初始化,记得修改android
manifest 中 application name
4、实现上传功能
application:
package com.tan.
import com.alibaba.sdk.android.oss.ClientC
import com.alibaba.sdk.android.oss.OSS;
import com.alibaba.sdk.android.oss.OSSC
import com.alibaba.sdk.mon.OSSL
import com.alibaba.sdk.mon.auth.OSSCredentialP
import com.alibaba.sdk.mon.auth.OSSPlainTextAKSKCredentialP
import android.app.A
import android.app.usage.NetworkStats.B
public class MainApplication extends Application {
//OSS的Bucket
public static final String OSS_BUCKET = Bucket名称;
//设置OSS数据中心域名或者cname域名
public static final String OSS_BUCKET_HOST_ID = 域名,不包含
private static final String accessKey = accessK
private static final String screctKey = screctK
public static OSS
public void onCreate() {
super.onCreate();
//初始化OSS配置
initOSSConfig();
private void initOSSConfig(){
OSSCredentialProvider credentialProvider = new OSSPlainTextAKSKCredentialProvider(accessKey, screctKey);
ClientConfiguration conf = new ClientConfiguration();
conf.setConnectionTimeout(15 * 1000); // 连接超时,默认15秒
conf.setSocketTimeout(15 * 1000); // socket超时,默认15秒
conf.setMaxConcurrentRequest(5); // 最大并发请求书,默认5个
conf.setMaxErrorRetry(2); // 失败后最大重试次数,默认2次
if(BuildConfig.DEBUG){
OSSLog.enableLog();
oss = new OSSClient(getApplicationContext(), MainApplication.OSS_BUCKET_HOST_ID, credentialProvider, conf);
activity:
package com.tan.
import java.text.SimpleDateF
import java.util.D
import com.alibaba.sdk.android.oss.ClientE
import com.alibaba.sdk.android.oss.ServiceE
import com.alibaba.sdk.android.oss.callback.OSSCompletedC
import com.alibaba.sdk.android.oss.callback.OSSProgressC
import com.alibaba.sdk.android.oss.model.PutObjectR
import com.alibaba.sdk.android.oss.model.PutObjectR
import android.app.A
import android.os.B
import android.os.H
import android.util.L
import android.view.V
import android.view.View.OnClickL
import android.widget.B
public class MainActivity extends Activity {
private String mUploadFilePath = "/storage/emulated/0/DCIM/Camera/IMG_558.jpg";
private Button vC
protected Handler mHandler = new Handler();
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
vCommit = (Button) findViewById(R.id.btn_commit);
vCommit.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
uploadData( mUploadFilePath);
* 上传图片
* @param imageByte
private void uploadData(String uploadFilePath){
mHandler.post(new Runnable() {
public void run() {
//显示个等待页面
PutObjectRequest put = new PutObjectRequest(MainApplication.OSS_BUCKET, "image/albums/"+getImageObjectKey(""), uploadFilePath);
put.setProgressCallback(new OSSProgressCallback() {
public void onProgress(PutObjectRequest request, long currentSize, long totalSize) {
Log.d("PutObject", "currentSize: " + currentSize + " totalSize: " + totalSize);
MainApplication.oss.asyncPutObject(put, new OSSCompletedCallback() {
public void onSuccess(final PutObjectRequest request, PutObjectResult result) {
Log.d("PutObject", "UploadSuccess");
Log.d("ETag", result.getETag());
Log.d("RequestId", result.getRequestId());
//将上传成功的图片地址传给自己的服务器后台,比如修改用户中,用户头像的url。
//修改后台url成功后,再利用glide 下载最新的照片,修改本地头像图片。
//request.getObjectKey() 是图片地址,但是不包含,OSS 图片域名
uploadImage(request.getObjectKey());
public void onFailure(PutObjectRequest request, ClientException clientExcepion, ServiceException serviceException) {
mHandler.post(new Runnable() {
public void run() {
//如果上传失败了,通过mHandler ,发出失败的消息到主线程中。处理异常。
showNetErrorInfo();
// 请求异常
if (clientExcepion != null) {
// 本地异常如网络异常等
clientExcepion.printStackTrace();
if (serviceException != null) {
// 服务异常
Log.e("ErrorCode", serviceException.getErrorCode());
Log.e("RequestId", serviceException.getRequestId());
Log.e("HostId", serviceException.getHostId());
Log.e("RawMessage", serviceException.getRawMessage());
//通过UserCode 加上日期组装 OSS路径
private String getImageObjectKey (String strUserCode){
Date date = new Date();
return new SimpleDateFormat("yyyy/M/d").format(date)+"/"+strUserCode+new SimpleDateFormat("yyyyMMddssSSS").format(date)+".jpg";
//将上传成功的图片地址传给自己的服务器后台,比如修改用户数据库中,用户头像的url。
//修改后台url成功后,再利用glide 下载最新的照片,修改本地头像图片。
//request.getObjectKey() 是图片地址,但是不包含,OSS 图片域名
实现代码:
* 上传图片地址到接口后台
* @param string
protected void uploadImage(final String faceImg) {
String url = HttpHelper.HTTP_URL+HttpHelper.UserUrl.MODIFY_MEMBER;
Map map = new HashMap();
map.put("faceImg", faceImg);
Map params = new HashMap();
params = Utils.getParams(map, mContext);
StringRequest request = new StringRequest(Request.Method.POST, url, new Response.Listener() {
public void onResponse(String response) {
System.out.println("response:"+response);
ParseDataHandler parseDataHandler = new ParseDataHandler(mHandler,response);
parseDataHandler.setParseDataCallBack(new ParseDataCallBack() {
public BaseResponseData executeParseData(String data) {
BaseResponseData result = JsonUtil.toObject(data, BaseResponseData.class);
public void onResult(BaseResponseData t) {
dimissMaterialLoadDialog();
if(HttpHelper.HttpStatus.SUCCESS_CODE.equals(t.getCode())){
showToast(R.string.label_upload_success);
ComeBackHomeReceiver.sendComeBackHome(mContext);
Glide.with(mContext).load(HttpHelper.OSS_IMAGE_HOST+faceImg)
.centerCrop()
.placeholder(R.drawable.ic_me)
.error(R.drawable.ic_me)
.into(vRoundImg);
System.out.println();
mUserInfo.setFaceImg(HttpHelper.OSS_IMAGE_HOST+faceImg);
mainApplication.getFinalDB().update(mUserInfo);
if(HttpHelper.HttpStatus.LOGIN_CONFICT_EXIT.equals(t.getCode())){
mainApplication.clearDB();
ShoppingCartNumChangeReceiver.sendCartNumChanged(mContext, 0);
String msg = t.getMsg();
if(!TextUtils.isEmpty(msg) && msg.trim().length() > 0){
showToast(msg);
Intent intent = new Intent(mContext,HomeActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP|Intent.FLAG_ACTIVITY_NEW_TASK);
intent.putExtra("module", "Login");
startActivity(intent);
parseDataHandler.start();
}, new Response.ErrorListener() {
public void onErrorResponse(VolleyError error) {
dimissMaterialLoadDialog();
showNetErrorInfo();
request.setHttpHeader(Utils.getHttpHeader(mContext,mUserInfo.getToken()));
request.setParams(params);
request.setTag(TAG);
queue.add(request);
http://download.csdn.net/detail/legend6}

我要回帖

更多关于 阿里云bucket 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信