100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > Android友盟社会化分享 自定义分享页面

Android友盟社会化分享 自定义分享页面

时间:2022-02-13 22:31:42

相关推荐

Android友盟社会化分享 自定义分享页面

因为项目需要,找了很多资料,也走了不少弯路,现在把友盟分享demo贴出,供大家参考。

源码下载:下载源码

1.MyApplication.java

//初始化参数public class MyApplication extends Application {@Overridepublic void onCreate() {super.onCreate();//各个平台的配置,建议放在全局Application或者程序入口//微信PlatformConfig.setWeixin("xxx", "xxx");//新浪PlatformConfig.setSinaWeibo("xxx", "xxx");//qq qqzonePlatformConfig.setQQZone("xxx", "xxx");}}

2.MyActivity.java

/*** 友盟分享:QQ测试通过,微信、新浪客户端分享需要根据生成正式签名的apk* Created by Administrator on /7/26 0026.*/public class MyActivity extends AppCompatActivity {private Button btn;private Context context = MyActivity.this;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_my);btn = (Button) findViewById(R.id.share);btn.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {show2();}});}/*** 弹出分享对话框,根据需求改变分享内容*/private void show() {//Bitmap bitmap = BitmapFactory.decodeResource(getResources(),R.drawable.info_icon_1);UMImage image = new UMImage(context, "/images/pic/social/integrated_3.png");//UMImage image = new UMImage(ShareActivity.this,bitmap);//UMImage image = new UMImage(ShareActivity.this,new File("/SDCARD/image_jpg.jpg"));UMusic music = new UMusic("/upload/0330/1364651263157_1085.mp3");//UMusic music = new UMusic("/#type=song&mid=002I7CmS01UAIH&tpl=yqq_song_detail");music.setTitle("This is music title");music.setThumb("/images/pic/social/chart_1.png");music.setDescription("my description");// share videoUMVideo video = new UMVideo("/p/sports/cba/v/-10-22/144463050817.html");video.setThumb("/images/thumbs/dango_menu_bar_icon_set_11_19047_6240_thumb.png");// share URLString url = "";new ShareAction(this).setDisplayList(SHARE_MEDIA.WEIXIN, SHARE_MEDIA.WEIXIN_CIRCLE, SHARE_MEDIA.QQ, SHARE_MEDIA.QZONE, SHARE_MEDIA.SINA).withTitle("我的分享").withText("看一看").withMedia(image).withTargetUrl(url).setCallback(umShareListener)//.withShareBoardDirection(view, Gravity.TOP|Gravity.LEFT).open();// Config.REDIRECT_URL="/sina2/callback";}private UMShareListener umShareListener = new UMShareListener() {@Overridepublic void onResult(SHARE_MEDIA platform) {Log.d("plat", "platform" + platform);if (platform.name().equals("WEIXIN_FAVORITE")) {Toast.makeText(context, platform + " 收藏成功啦", Toast.LENGTH_SHORT).show();} else {Toast.makeText(context, platform + " 分享成功啦", Toast.LENGTH_SHORT).show();}}@Overridepublic void onError(SHARE_MEDIA platform, Throwable t) {Toast.makeText(context, platform + " 分享失败啦", Toast.LENGTH_SHORT).show();if (t != null) {Log.d("throw", "throw:" + t.getMessage());}}@Overridepublic void onCancel(SHARE_MEDIA platform) {Toast.makeText(context, platform + " 分享取消了", Toast.LENGTH_SHORT).show();}};@Overrideprotected void onActivityResult(int requestCode, int resultCode, Intent data) {super.onActivityResult(requestCode, resultCode, data);/** attention to this below ,must add this**/UMShareAPI.get(this).onActivityResult(requestCode, resultCode, data);Log.d("result","onActivityResult");}@Overridepublic void onBackPressed() {super.onBackPressed();}}

3.MyShareActivity.java

自定义分享页面

public class MyShareActivity extends Activity implements View.OnClickListener {private Context context;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_my_share);context = this;RelativeLayout wechat = (RelativeLayout) findViewById(R.id.rl_share_wechat);RelativeLayout wechat_circle = (RelativeLayout) findViewById(R.id.rl_share_wechat_circle);RelativeLayout qq = (RelativeLayout) findViewById(R.id.rl_share_qq);RelativeLayout qqzone = (RelativeLayout) findViewById(R.id.rl_share_qqzone);RelativeLayout sina = (RelativeLayout) findViewById(R.id.rl_share_sina);RelativeLayout others = (RelativeLayout) findViewById(R.id.rl_others);TextView tv_cancle = (TextView) findViewById(R.id.tv_cancle);wechat.setOnClickListener(this);wechat_circle.setOnClickListener(this);qq.setOnClickListener(this);qqzone.setOnClickListener(this);sina.setOnClickListener(this);others.setOnClickListener(this);tv_cancle.setOnClickListener(this);}@Overridepublic void onClick(View v) {switch (v.getId()) {case R.id.rl_share_wechat:share(SHARE_MEDIA.WEIXIN);break;case R.id.rl_share_wechat_circle:share(SHARE_MEDIA.WEIXIN_CIRCLE);break;case R.id.rl_share_qq:share(SHARE_MEDIA.QQ);break;case R.id.rl_share_qqzone:share(SHARE_MEDIA.QZONE);break;case R.id.rl_share_sina:share(SHARE_MEDIA.SINA);break;case R.id.rl_others:case R.id.tv_cancle:finish();overridePendingTransition(0,R.anim.out);break;}}private void share(SHARE_MEDIA qq) {//开启自定义分享页面UMImage image = new UMImage(context, "/6ONYsjip0QIZ8tyhnq/it/u=2042276435,923048600&fm=80");new ShareAction(this).setPlatform(qq).setCallback(umShareListener).withTitle("自定义分享").withText("hello world!").withTargetUrl("").withMedia(image).share();}private UMShareListener umShareListener = new UMShareListener() {@Overridepublic void onResult(SHARE_MEDIA platform) {Log.d("plat", "platform" + platform);if (platform.name().equals("WEIXIN_FAVORITE")) {Toast.makeText(context, platform + " 收藏成功啦", Toast.LENGTH_SHORT).show();} else {Toast.makeText(context, platform + " 分享成功啦", Toast.LENGTH_SHORT).show();}finish();}@Overridepublic void onError(SHARE_MEDIA platform, Throwable t) {Toast.makeText(context, platform + " 分享失败啦", Toast.LENGTH_SHORT).show();if (t != null) {Log.d("throw", "throw:" + t.getMessage());}finish();}@Overridepublic void onCancel(SHARE_MEDIA platform) {Toast.makeText(context, platform + " 分享取消了", Toast.LENGTH_SHORT).show();finish();}};@Overrideprotected void onActivityResult(int requestCode, int resultCode, Intent data) {super.onActivityResult(requestCode, resultCode, data);UMShareAPI.get(this).onActivityResult(requestCode, resultCode, data);}}

以上是主要部分,其他请下载demo参考,appkey和appid都已经更改,请更改填写。

下载地址 :/detail/u011106915/9592889

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。