您的位置:首页 > 移动开发 > Android开发

Android使用sharesdk一键分享

2014-04-29 16:38 411 查看
以下资源来sharesdk官方demo中的Sample

1,同登录一样配置ShareSDK.xml和AndroidManifest.xml【各平台申请好的key】【上一篇登录授权的有讲到】

2,把一件分享的文件导入项目,如图


3,把需要的logo图标【比如qq,新浪图标】,string.xml,oks_strings.xml导入项目中

3,点击按钮分享调用showShare(false,null);

方法代码如下:需要注意的是新浪想要分享图文的话需要到开发平台申请高级权限,否则有图片会分享失败【我这里是分享图文,图片不要也可以去掉】

private void showShare(boolean silent, String platform) {

final OnekeyShare oks = new OnekeyShare();

oks.setNotification(R.drawable.ic_launcher, DetailActivity.this.getString(R.string.app_name));

oks.setAddress("12345678901");

oks.setTitle("来自男人装的分享");

oks.setTitleUrl("http://sharesdk.cn");

oks.setText(costume.getComment());

// oks.setImagePath("http://img0.bdstatic.com/img/image/shouye/muzrxc1.jpg");//costume.getLargepic()

oks.setImageUrl(costume.getLargepic());//新浪目前没有通过审核没有申请高级权限,在新浪上会分享失败,应用通过审核后去申请高级权限就可以设置图片了[设置imageurl需要在开放平台申请高级权限]

oks.setUrl("http://www.sharesdk.cn");

oks.setFilePath(costume.getLargepic());

oks.setComment(costume.getComment());

oks.setSite("男人装");

oks.setSiteUrl("http://sharesdk.cn");

oks.setVenueName("ShareSDK");

oks.setVenueDescription("This is a beautiful place!");

oks.setLatitude(23.056081f);

oks.setLongitude(113.385708f);

oks.setSilent(silent);

if (platform != null) {

oks.setPlatform(platform);

}

// 去除注释,可令编辑页面显示为Dialog模式

// oks.setDialogMode();

// 去除注释,在自动授权时可以禁用SSO方式

// oks.disableSSOWhenAuthorize();

// 去除注释,则快捷分享的操作结果将通过OneKeyShareCallback回调

// oks.setCallback(new OneKeyShareCallback());

oks.setShareContentCustomizeCallback(new ShareContentCustomizeDemo());

// 去除注释,演示在九宫格设置自定义的图标

// Bitmap logo = BitmapFactory.decodeResource(menu.getResources(), R.drawable.ic_launcher);

// String label = menu.getResources().getString(R.string.app_name);

// OnClickListener listener = new OnClickListener() {

// public void onClick(View v) {

// String text = "Customer Logo -- ShareSDK " + ShareSDK.getSDKVersionName();

// Toast.makeText(menu.getContext(), text, Toast.LENGTH_SHORT).show();

// oks.finish();

// }

// };

// oks.setCustomerLogo(logo, label, listener);

// 去除注释,则快捷分享九宫格中将隐藏新浪微博和腾讯微博

// oks.addHiddenPlatform(SinaWeibo.NAME);

// oks.addHiddenPlatform(TencentWeibo.NAME);

oks.show(DetailActivity.this);

}

有了这个,比以前自己在各平台上去找api找demo简单多了,一键啥都有了,呵呵。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: