`

Android微信朋友圈分享

 
阅读更多

        !!注意:顺序不能乱!!
  1、建立自己的应用 WXShare
  (1)应用包名是clochase.wx.test
  (2)运行程序,请记住此时你编译运行的时候,用的是android默认的debug.keystore签名的。
  2、到官网https://open.weixin.qq.com/cgi-bin/frame?t=resource/res_main_tmpl&lang=zh_CN下载开发工具包,解压,将libammsdk.jar复制到libs中,并将其add到build path中。
  3、到官网https://open.weixin.qq.com/cgi-bin/appcreate?t=manage/createMobile&type=app&lang=zh_CN登记你的应用,
  这里省去前面那些基本的操作 ,这里要注意以下的步骤。
  其中有一步是要用个签微信那名的apk工具对我们程序进行签名的,因为我们的程序已经安装了,所以直接下载安装,然后在手机里面的那个框框输入包名(我这里是clochase.wx.test,包名不能填错哦),点击生成按钮,这时候会生成一个md5值,将其输入到登记页面的框中(此时我们注意,如果我们的应用程序还没有安装到手机中的话,签名工具会提示没有找到相关包说明的,这时候我们有意识到什么了吗?)
  再接下来输入包名(我这里是clochase.wx.test,包名不能填错哦),然后提交审核。接下来就是等微信的MM进行审核了。
  4、在步骤三中我们已经拿到了appid,按照sdk Demo里面的提供方法在我们的测试,OK一切成功,是否有感觉成就感呢。
  5、项目开发到最后了,经过测试,一切正常,用正式签名的文件对来正式打包。然后再测试。OH,my god,What Happened!!!,为什么刚刚还能分享微信的,现在点击居然没有反应了。顿时陷入惶恐中。。。。不要怕,我来告诉你为什么会这样。
  6、其实在第一步的时候,就已经说了,我们在官网申请的AppId的时候填写应用程序签名也是就是用debug.keystore生成的。然而我们此时在手机里面运行的apk是用我们自己生成的签名(xxx.keystore)进行签名的,两个签名都不一致,所以很理所当然会导致分享失败。因为微信要对我们应用进行一个验证,就是通过这个签名来认证的。
  7、别担心,还有补救的方法,用我们正式那个签名文件xxx.keystore对程序进行正式的打包,然后安装到手机中,然后再次运行微信那个签名apk工具,讲我们的包名输入到里面,重新生成一个MD5的签名,然后到官网,找到你之前等级那个应用,拉到最后,点击修改,将刚刚生成的那个签名输入到里面,然后保存重新提交审核
  8、做完上面的事情之后,所要做的就是等刚刚重新提交的修改通过审核,要不然你的微信就不能分享成功。
  9、某一天,登记的那个应用通过审核了,运行我们打包的程序,点击微信,oh ,yes。发现能分享了,终于可以喘一口气了。
  备注:
  1、还是签名问题,一个项目,几个人完成的话,如果大家都是用各自默认的debug.keystore进行运行的话,在debug版本,微信分享功能肯定只有在申请的微信appid的那台机器生产的apk才能正常。
  2、关于微信分享信息结果反馈,这个要注意的是以下两点,要不要肯定是不会收到分享反馈的。
  (1)这个Activity的名字一定是WXEntryActivity
  (2)WXEntryActivity这个类一定是建立在 应用包名+wxapi包下(比如上述的工程,这时候包名应该是clochase.wx.test.wxapi)

 

发送图文消息到微信朋友圈(按钮触发事件里加入以下代码,请确保应用签名与在开放平台注册的应用签名一致,且AppId也应该对应)

IWXAPI api = WXAPIFactory.createWXAPI(context, APP_ID, false);
api.registerApp(APP_ID);
WXWebpageObject webpage = new WXWebpageObject();
webpage.webpageUrl = "http://www.xxxx.com/wap/showShare/;
WXMediaMessage msg = new WXMediaMessage(webpage);
msg.title = "标题";
msg.description = "描述";
try
{
	Bitmap bmp = BitmapFactory.decodeResource(getResources(), R.drawable.send_img);
	Bitmap thumbBmp = Bitmap.createScaledBitmap(bmp, 150, 150, true);
	bmp.recycle();
	msg.setThumbImage(thumbBmp);
} 
catch (Exception e)
{
	e.printStackTrace();
}
SendMessageToWX.Req req = new SendMessageToWX.Req();
req.transaction = String.valueOf(System.currentTimeMillis());
req.message = msg;
req.scene = SendMessageToWX.Req.WXSceneTimeline;
api.sendReq(req);

 

在新建的包里面添加一个类,WXEntryActivity.java,名字必须一致,这是微信开放平台规定的。

 
package com.cz.hello.wxapi;

import android.app.Activity;
import android.os.Bundle;
import android.widget.Toast;

import com.cz.hello.R;
import com.cz.hello.utils.Constants;
import com.tencent.mm.sdk.openapi.BaseReq;
import com.tencent.mm.sdk.openapi.BaseResp;
import com.tencent.mm.sdk.openapi.IWXAPI;
import com.tencent.mm.sdk.openapi.IWXAPIEventHandler;
import com.tencent.mm.sdk.openapi.WXAPIFactory;

/**  
 * @ClassName: WXEntryActivity  
 * @Description: 微信分享工具类
 * @author chenzheng
 * @date 2014-7-24 下午1:54:13  
 */
public class WXEntryActivity extends Activity implements IWXAPIEventHandler {

	private IWXAPI api;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);

		// 通过WXAPIFactory工厂,获取IWXAPI的实例
		api = WXAPIFactory.createWXAPI(this, Constants.APP_ID, false);
		api.registerApp(Constants.APP_ID);
		api.handleIntent(getIntent(), this);
	}

	// 第三方应用发送到微信的请求处理后的响应结果,会回调到该方法

	@Override
	public void onResp(BaseResp resp) {
		int result = 0;

		switch (resp.errCode) {
		case BaseResp.ErrCode.ERR_OK:
			result = R.string.errcode_success;
			break;
		case BaseResp.ErrCode.ERR_USER_CANCEL:
			result = R.string.errcode_cancel;
			break;
		case BaseResp.ErrCode.ERR_AUTH_DENIED:
			result = R.string.errcode_deny;
			break;
		default:
			result = R.string.errcode_unknown;
			break;
		}

		Toast.makeText(this, result, Toast.LENGTH_LONG).show();
		finish();
	}

	@Override
	public void onReq(BaseReq arg0) {

	}
}

 

 

分享到:
评论

相关推荐

    android 微信朋友圈分享

    在Android平台上,微信朋友圈分享是移动应用开发中的一个重要功能,尤其对于那些希望用户能够与朋友互动和推广内容的应用来说。本教程将详细讲解如何实现这一功能。 首先,我们需要集成微信SDK到我们的Android项目...

    android实现微信朋友圈发布动态功能

    本文实例为大家分享了android仿微信朋友圈发布动态功能的具体代码,供大家参考,具体内容如下 效果图: 本文概述 用到的开源库:仿照微信的图片选择器,Luban压缩图片,glide 上面红圈部分,当用户选中图片时,当=...

    Android微信朋友圈多图片分享加文字描述 支持网络图片

    - 因为微信朋友圈分享有大小限制,所以需要对选择的图片进行压缩。可以使用`Bitmap.createScaledBitmap()`方法按比例缩小图片,或者使用第三方库如` Glide.with().asBitmap().transform(new CenterCrop(), new ...

    Android仿微信朋友圈

    2. [Android仿微信朋友圈图片查看效果 Android仿微信朋友圈图片查看效果](https://download.csdn.net/download/u014608640/9917626) 资源名称:Android仿微信朋友圈图片查看效果 资源介绍:Android仿微信朋友圈...

    Android仿微信朋友圈功能实例源码 同微信1:1还原样式 项目上拿来的 省心 省事 事半功倍

    在Android开发中,微信朋友圈的功能实现是一个典型的社交应用模块,涉及到多个关键技术点。这个实例源码"HighPerformanceFriendsCircle-master"旨在提供一个1:1还原微信朋友圈样式,并且经过优化,具有高性能的解决...

    Android 微信朋友圈图片拖拽功能Demo

    这个"Android微信朋友圈图片拖拽功能Demo"就是一个实现此类功能的示例项目,名为"MyPhotoDragDemo"。 在Android中实现图片拖拽功能,主要涉及到以下几个关键知识点: 1. **触摸事件处理**:首先,我们需要监听用户...

    android 分享到微信朋友圈demo

    在Android开发中,将内容分享到微信朋友圈是一项常见的功能,特别是在社交应用中。这个"android分享到微信朋友圈demo"提供了一个可以直接运行的示例,帮助开发者理解和实现这一功能。下面我们将详细探讨相关知识点。...

    基于Android的仿微信朋友圈的实现.app

    【标题】: "基于Android的仿微信朋友圈的实现" 是一款旨在模拟微信朋友圈核心功能的移动应用程序。这个APP旨在提供类似微信的用户体验,让用户能够发布动态、参与二级评论以及进行点赞操作。 【描述】: 这个应用的...

    仿微信朋友圈界面

    在微信朋友圈中,用户往往不仅发布文字,还会分享图片。因此,实现这个功能可能涉及到ImageView、Glide或Picasso等图片加载库的使用,以及对用户上传图片的处理,如裁剪、压缩等。 总的来说,仿微信朋友圈界面的...

    仿微信朋友圈背景封面选取图片

    综上所述,实现"仿微信朋友圈背景封面选取图片"功能涉及到Android的多个技术层面,包括Intent交互、图片选择与拍照、UI设计、图片处理、网络请求以及错误处理等。这不仅是提升用户体验的一种方式,也是展示开发者...

    android微信朋友圈动态界面(点全部评论进去可以左右滑)

    在Android平台上,微信朋友...以上就是实现"android微信朋友圈动态界面(点全部评论进去可以左右滑)"所需要掌握的关键技术点。理解并熟练运用这些知识点,能帮助开发者构建出具有高度互动性和用户体验良好的社交应用。

    Android高仿微信朋友圈图片查看,可放大,左右滑动

    在Android开发中,实现类似微信朋友圈的图片查看功能是一项常见的需求。这个功能允许用户点击图片后进入一个全屏模式,可以放大、缩小图片,并通过左右滑动切换到其他图片。以下将详细介绍如何实现这一功能。 首先...

    Android仿微信朋友圈(附源码)下载

    提供源码在网盘下载, Android仿微信朋友圈,全文收起功能,附源码.

    Android 仿微信朋友圈9宫格图片展示&多选图片

    在Android开发中,微信朋友圈的9宫格图片展示与多选图片功能是常见的需求,尤其在社交类应用中。这个项目旨在教你如何在Android应用中实现类似的功能。下面将详细介绍这些知识点。 一、9宫格图片展示 1. **自定义...

    分享到Android微信朋友圈

    在Android平台上,分享内容到微信朋友圈是一项常见的功能。微信提供了开放平台API,使得开发者能够集成这一功能,使得用户可以方便地将自己的应用...理解并掌握这些步骤,就能在你的应用中顺利实现微信朋友圈分享功能。

    Android代码-一个简单仿微信朋友圈的图片查看器

    该图片查看器是模仿微信朋友圈查看图片编写 allprojects { repositories { ... maven { url 'https://jitpack.io' } } } lastRelease: dependencies { implementation '...

    仿微信朋友圈动态列表

    在Android开发中,仿微信朋友圈动态列表是一种常见的需求,它涉及到UI设计、数据绑定和滚动优化等多个技术点。本项目名为"MyDemo",显然提供了一个实现这一功能的示例代码。接下来,我们将深入探讨其中涉及的关键...

    android实现微信朋友圈和微信好友分享功能

    在Android平台上,实现微信朋友圈和微信好友分享功能是常见的需求,尤其对于社交类应用来说更是不可或缺。本项目通过提供一个名为"WeixinDemo"的压缩包,旨在帮助开发者快速集成这一功能。下面将详细介绍如何实现这...

Global site tag (gtag.js) - Google Analytics