一键/自定义 分享
来源:互联网 发布:getimagesize php 编辑:程序博客网 时间:2024/06/06 16:35
一键分享
<这里只贴出了新浪微博,微信,朋友圈的分享功能代码片段>
/** * 一键分享 */ protected void showOnekeyShare() { ShareSDK.initSDK(this); OnekeyShare oks = new OnekeyShare(); // 关闭sso授权 oks.disableSSOWhenAuthorize(); // 分享时Notification的图标和文字 2.5.9以后的版本不调用此方法 //oks.setNotification(R.drawable.ic_launcher, getString(R.string.app_name)); // title标题,印象笔记、邮箱、信息、微信、人人网和QQ空间使用 oks.setTitle("分享的Title"); oks.setImageUrl("url");//网络图片rul // titleUrl是标题的网络链接,仅在人人网和QQ空间使用 oks.setTitleUrl("titleUrl"); // text是分享文本,所有平台都需要这个字段 oks.setText("分享文本"); // imagePath是图片的本地路径,Linked-In以外的平台都支持此参数// oks.setImagePath("/sdcard/test.jpg");//确保SDcard下面存在此张图片 // url仅在微信(包括好友和朋友圈)中使用 oks.setUrl("url"); // comment是我对这条分享的评论,仅在人人网和QQ空间使用 oks.setComment("comment"); // site是分享此内容的网站名称,仅在QQ空间使用 oks.setSite(getString(R.string.app_name)); // siteUrl是分享此内容的网站地址,仅在QQ空间使用 oks.setSiteUrl("siteUrl"); // 启动分享GUI oks.setDialogMode(); oks.setShareContentCustomizeCallback(new ShareContentCustomizeCallback() { @Override public void onShare(Platform platform, Platform.ShareParams paramsToShare) { if (SinaWeibo.NAME.equals(platform.getName())) { platform.SSOSetting(false);// if(!platform.isValid()){// platform.authorize();} paramsToShare.setTitle("微博分享title"); paramsToShare.setText("微博分享text" + " " +"url"); paramsToShare.setUrl(null); paramsToShare.setImageUrl("网络图片地址"); }// platform.share(paramsToShare); } }); oks.show(this); }
自定义分享
/** * 自定义分享 */ protected void showMySharedialog() { View localView = LayoutInflater.from(context).inflate( R.layout.dialog_share, null); AutoUtils.auto(localView.getRootView()); ImageView img_weibo = (ImageView) localView.findViewById(R.id.img_weibo); ImageView img_weixin = (ImageView) localView.findViewById(R.id.img_weixin); ImageView img_pengyouquan = (ImageView) localView.findViewById(R.id.img_pengyouquan); TextView tv_cancel = (TextView) localView.findViewById(R.id.tv_cancel); final Dialog dialog = new Dialog(context, R.style.custom_dialog); dialog.setContentView(localView); dialog.getWindow().setGravity(Gravity.BOTTOM); // 设置全屏 WindowManager windowManager = ((Activity) context).getWindowManager(); Display display = windowManager.getDefaultDisplay(); WindowManager.LayoutParams lp = dialog.getWindow().getAttributes(); lp.width = display.getWidth(); // 设置宽度 dialog.getWindow().setAttributes(lp); dialog.show(); tv_cancel.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View arg0) { dialog.dismiss(); } }); img_weibo.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { dialog.dismiss(); ShareSDK.initSDK(context); Platform platform_sina = ShareSDK.getPlatform(SinaWeibo.NAME); System.out.println("platform_sina.isValid()----" + platform_sina.isValid()); if (!isAppInstalled(context, "com.sine.weibo")) {// 如果有新浪微博客户端,每次都可以重新选择或添加分享账号 platform_sina.removeAccount(); } platform_sina.SSOSetting(true); cn.sharesdk.sina.weibo.SinaWeibo.ShareParams sp = new cn.sharesdk.sina.weibo.SinaWeibo.ShareParams(); sp.setShareType(Platform.SHARE_TEXT); sp.setTitle("测试分享文本测试分享文本测试分享文本"); sp.setText("测试分享文本测试分享文本测试分享文本");// sp.setUrl(share_url);// sp.setImageUrl(share_image); sp.setImagePath(null); platform_sina.setPlatformActionListener(BaseShareActivity.this); // 设置分享事件回调 // 执行图文分享 platform_sina.share(sp); } }); img_weixin.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { dialog.dismiss(); if (!isAppInstalled(context, "com.tencent.mm")) { showToast("用户未安装微信"); return; } //2、设置分享内容 Wechat.ShareParams sp = new Wechat.ShareParams(); sp.setShareType(Platform.SHARE_WEBPAGE);//非常重要:一定要设置分享属性 sp.setTitle("我是分享标题"); //分享标题 sp.setText("我是分享文本,啦啦啦~http://uestcbmi.com/"); //分享文本 sp.setImageUrl("http://7sby7r.com1.z0.glb.clouddn.com/CYSJ_02.jpg");//网络图片rul sp.setUrl("http://sharesdk.cn"); //网友点进链接后,可以看到分享的详情 //3、非常重要:获取平台对象 Platform wechat = ShareSDK.getPlatform(Wechat.NAME); wechat.setPlatformActionListener(BaseShareActivity.this); // 设置分享事件回调 // 执行分享 wechat.share(sp); } }); img_pengyouquan.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { dialog.dismiss(); if (!isAppInstalled(context, "com.tencent.mm")) { showToast("用户未安装微信"); return; } //2、设置分享内容 WechatMoments.ShareParams sp = new WechatMoments.ShareParams(); sp.setShareType(Platform.SHARE_WEBPAGE); //非常重要:一定要设置分享属性 sp.setTitle("我是分享标题"); //分享标题 sp.setText("我是分享文本,啦啦啦~http://uestcbmi.com/"); //分享文本 sp.setImageUrl("http://7sby7r.com1.z0.glb.clouddn.com/CYSJ_02.jpg");//网络图片rul sp.setUrl("http://sharesdk.cn"); //网友点进链接后,可以看到分享的详情 //3、非常重要:获取平台对象 Platform wechatMoments = ShareSDK.getPlatform(WechatMoments.NAME); wechatMoments.setPlatformActionListener(BaseShareActivity.this); // 设置分享事件回调 // 执行分享 wechatMoments.share(sp); } }); }
1 0
- 一键/自定义 分享
- 经验分享一 自定义ArrayAdapter中的字体
- iOS自定义分享 (一)分享组件的接入
- 一键分享代码
- 一键分享
- 一键分享按钮
- 一键分享
- 一键分享
- 一键分享代码
- 测试一键分享
- 一键分享
- 一键分享按钮
- 集成一键分享
- qq一键分享
- ShowSDK一键分享
- ShareSDK一键分享
- ShareSDK一键分享
- bshare 一键分享
- Eclipse中恢复已删除文件和还原到先前版本
- JVM中判断对象是否存活的方法
- python list倒序排列
- Cassandra常用命令
- Top K Frequent Elements
- 一键/自定义 分享
- Linux多台服务器间SSH免密码登录配置
- hdu1007求最近点对(分治法)
- 更新LaunchImage时遇到不更新的问题
- Super关键字和调用父类构造器
- java 中 byte,short,int,long的取值范围
- 【Python】解决使用plt.savefig保存图片时一片空白
- C++设计模式——解释器模式
- 101. Symmetric Tree