当前位置:首页 > 代码 > 正文

微信分享代码android(微信分享代码)

admin 发布:2022-12-19 20:03 151


今天给各位分享微信分享代码android的知识,其中也会对微信分享代码进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

Android 微信,qq分享文件

10M以下,建议进制算法为*1000以避免1024发生分享错误

将文件变成二进制数组,然后塞进去就OK了,我这边是直接传入的base64码省略了部分步骤

qq分享类似,不过是用intent来的

只能分享本地文件,我这边是js传的,可以将文件存到本地然后分享

File shareFileDir = StorageUtils.getExternalFileDirectory(activity.getApplicationContext(), StaticFinalUtil.SHARE_MEDIA);

                        File shareFile = new File(shareFileDir, shareMediaNew.title.concat(".").concat(shareMediaNew.fileType));

                        if (shareFile.exists()) {

                            Intent qqIntent = new Intent(Intent.ACTION_SEND);

                            Uri shareFileUri;

                            if (Build.VERSION.SDK_INT = Build.VERSION_CODES.N) {

                                //兼容7.0

                                shareFileUri = FileProvider.getUriForFile(activity.getApplicationContext(), "com.DaTong.InsuranceForAndroid.fileprovider", shareFile);

                                //添加权限 这一句表示对目标应用临时授权该Uri所代表的文件

                                qqIntent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);

                                qqIntent.addFlags(Intent.FLAG_GRANT_WRITE_URI_PERMISSION);

                            }else {

                                shareFileUri = Uri.fromFile(shareFile);

                            }

                            qqIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

                            qqIntent.setType(getMimeType(shareFile.getPath()));

                            qqIntent.setClassName("com.tencent.mobileqq", "com.tencent.mobileqq.activity.JumpActivity");

                            qqIntent.putExtra(Intent.EXTRA_STREAM, shareFileUri);

                            activity.startActivity(qqIntent);

                            return;

                        }

用 微信的 android SDK 怎么分享信息 到微信

1.申请你的AppID 请到 开发者应用登记页面 进行登记,登记并选择移动应用进行设置后,将获得AppID,可立即用于开发。但应用登记完成后还需要提交审核,只有审核通过的应用才能正式发布使用。2.下载微信终端开发工具包 开发工具包主要包含3部分内容:(其中,只有libammsdk.jar是必须的) libammsdk.jar(每个第三方应用必须要导入该sdk库,用于实现与微信的通信) API文档(供开发者查阅使用) 界面小工具源码(封装了界面表现的工具类,以及一些界面风格)下载: Android平台开发工具包3.搭建开发环境 [1] 在Eclipse中建立你的工程。 [2] 在工程中新建一个libs目录,将开发工具包中libs目录下的libammsdk.jar复制到该目录中(建立了一个名为SDK_Sample 的工程,并把jar包复制到libs目录下)。[3] 右键单击工程,选择Build Path中的Configure Build Path...,选中Libraries这个tab,并通过Add Jars...导入工程libs目录下的libammsdk.jar文件在你需要使用微信终端API的文件中导入相应的类。 import com.tencent.mm.sdk.openapi.WXTextObject;4.在代码中使用开发工具包 [1] 注册到微信 要使你的程序启动后微信终端能响应你的程序,必须在代码中向微信终端注册你的id。(如下图所示,可以在程序入口Activity的onCreate回调函数处,或其他合适的地方将你的应用id注册到微信。注册函数示例如下图所示。[2] 发送请求或响应到微信 现在,你的程序要发送请求或发送响应到微信终端,可以通过IWXAPI的 sendReq 和 sendResp 两个方法来实现。 boolean sendReq(BaseReq req); sendReq是第三方app主动发送消息给微信,发送完成之后会切回到第三方app界面。 boolean sendResp(BaseResp resp); sendResp是微信向第三方app请求数据,第三方app回应数据之后会切回到微信界面。 sendReq的实现示例,如下图所示:需要注意的是,SendMessageToWX.Req的scene成员,如果scene填WXSceneSession,那么消息会发送至微信的会话内。如果scene填WXSceneTimeline(微信4.2以上支持,如果需要检查微信版本支持API的情况, 可调用IWXAPI的getWXAppSupportAPI方法,0x21020001及以上支持发送朋友圈),那么消息会发送至朋友圈。scene默认值为WXSceneSession。sendResp的实现与SendReq类似,如下图所示:具体要发送的内容由第三方app开发者定义,具体可参考微信开发工具包中的SDK Sample Demo源码。 [3] 接收微信的请求及返回值 如果你的程序需要接收微信发送的请求,或者接收发送到微信请求的响应结果,需要下面3步操作: a. 在你的包名相应目录下新建一个wxapi目录,并在该wxapi目录下新增一个WXEntryActivity类,该类继承自Activity (例如应用程序的包名为net.sourceforge.simcpux,则新添加的类如下图所示)并在manifest文件里面加上exported属性,设置为true,例如:b. 实现IWXAPIEventHandler接口,微信发送的请求将回调到onReq方法,发送到微信请求的响应结果将回调到onResp方法 c. 在WXEntryActivity中将接收到的intent及实现了IWXAPIEventHandler接口的对象传递给IWXAPI接口的handleIntent方法,示例如下图:当微信发送请求到你的应用,将通过IWXAPIEventHandler接口的onReq方法进行回调,类似的,应用请求微信的响应结果将通过onResp回调。

Android集成微信分享功能采坑:分享不成功,一闪而过,无反应等情况

Android 微信分享遇到的问题:

1.APP_ID是否输入正确

2.官网申请时输入的签名和打包的签名是否一致(请用微信推荐的签名工具对比)

注:微信平台填写的签名是ce187ed67e05c2d8879bf66bbfdfc8b9

是apk的keystore的md5去掉冒号,大写换位小写字母形式

3.分享一闪而过

有可能的bug:签名错误,appid正确,但是申请的时候吧包名和签名写反了

微信缓存问题,重新安装微信多试几次

4.请用微信官方提供的签名获取工具

5.自己直接run到手机运行的apk包注意签名应该和申请时用的签名一致(即把debug的签名改为release的)

6.分享图片的缩略图太大,超过32k

7.换设备,重新尝试

8.保证所有配置没有问题的情况下,尝试重启手机即可……(我没有开玩笑)

android 上通过微信分享怎么实现

一、获取帮助文档并下载相关资料

首先打开微信开放平台: 如果没有注册,请先注册并上传开发者资料等待审核。

资源中心----移动应用开发----分享与收藏功能----Android开发手册

开发手册链接地址:

资源中心----移动应用开发----接入指南---Android接入指南(下面我们主要参考这个)

二、接入微信分享功能

1、申请AppID

如何现在没有AppID可以先下载官方的Demo使用Demo中的AppID即可。

SDK和Demo下载地址:;verify=1lang=zh_CNtarget=res/app_download_android

开发工具包(SDK)

使用微信分享、登录、收藏、支付等功能需要的库以及文件。点击下载 Android开发工具包

使用微信语音识别接口、语音合成接口。点击下载 语音SDK+Demo+开发文档

使用微信图像识别接口。点击下载 图像SDK+Demo+开发文档

使用微信卡券功能接口。点击下载 卡券SDK+开发文档

范例代码

包含了一个完整的范例工程。该范例的使用可以参阅Android平台上手指南:HelloWeixin@Android。点击下载

签名生成工具

用于获取安装到手机的第三方应用签名的apk包。点击下载 签名生成工具下载完成后我们可以参考一下Demo来集成。

2、下载微信开发工具包(在上面已经下载)

3、开始搭建开发环境然后将libammsdk.jar文件拷贝到工程lib目录下。

注意:如果使用的是Demo中的AppID则包名一定要先和Demo的包名一致,否则分享会出错。

4、新建一个Activity在里面放置一个按钮喎�"" target="_blank" class="keylink"vcD48cD48cHJlIGNsYXNzPQ=="brush:java;"package net.sourceforge.simcpux; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import com.example.weixinsharedemo.share.WeixinShareManager; public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Button button = (Button) findViewById(R.id.share_weibo); button.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { WeixinShareManager wsm = WeixinShareManager.getInstance(MainActivity.this); wsm.shareByWeixin(wsm.new ShareContentPic(R.drawable.ic_launcher), WeixinShareManager.WEIXIN_SHARE_TYPE_TALK); } }); } }

?

1

2

3

4

5

relativelayout xmlns:android="" xmlns:tools="" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingbottom="@dimen/activity_vertical_margin" android:paddingleft="@dimen/activity_horizontal_margin" android:paddingright="@dimen/activity_horizontal_margin" android:paddingtop="@dimen/activity_vertical_margin" tools:context=".MainActivity"

button android:id="@+id/share_weibo" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="分享到微信"/

/button/relativelayout

4、开始创建我们的分享逻辑类并实现需要的分享功能

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

87

88

89

90

91

92

93

94

95

96

97

98

99

100

101

102

103

104

105

106

107

108

109

110

111

112

113

114

115

116

117

118

119

120

121

122

123

124

125

126

127

128

129

130

131

132

133

134

135

136

137

138

139

140

141

142

143

144

145

146

147

148

149

150

151

152

153

154

155

156

157

158

159

160

161

162

163

164

165

166

167

168

169

170

171

172

173

174

175

176

177

178

179

180

181

182

183

184

185

186

187

188

189

190

191

192

193

194

195

196

197

198

199

200

201

202

203

204

205

206

207

208

209

210

211

212

213

214

215

216

217

218

219

220

221

222

223

224

225

226

227

228

229

230

231

232

233

234

235

236

237

238

239

240

241

242

243

244

245

246

247

248

249

250

251

252

253

254

255

256

257

258

259

260

261

262

263

264

265

266

267

268

269

270

271

272

273

274

275

276

277

278

279

280

281

282

283

284

285

286

287

288

289

290

291

292

293

294

295

296

297

298

299

300

301

package com.example.weixinsharedemo.share;

import android.content.Context;

import android.graphics.Bitmap;

import android.graphics.BitmapFactory;

import android.widget.Toast;

import com.example.weixinsharedemo.util.WeixiShareUtil;

import com.tencent.mm.sdk.modelmsg.SendMessageToWX;

import com.tencent.mm.sdk.modelmsg.WXImageObject;

import com.tencent.mm.sdk.modelmsg.WXMediaMessage;

import com.tencent.mm.sdk.modelmsg.WXTextObject;

import com.tencent.mm.sdk.modelmsg.WXWebpageObject;

import com.tencent.mm.sdk.openapi.IWXAPI;

import com.tencent.mm.sdk.openapi.WXAPIFactory;

/**

* 实现微信分享功能的核心类

* @author Administrator

*

*/

public class WeixinShareManager{

private static final int THUMB_SIZE = 150;

/**

* 文字

*/

public static final int WEIXIN_SHARE_WAY_TEXT = 1;

/**

* 图片

*/

public static final int WEIXIN_SHARE_WAY_PIC = 2;

/**

* 链接

*/

public static final int WEIXIN_SHARE_WAY_WEBPAGE = 3;

/**

* 会话

*/

public static final int WEIXIN_SHARE_TYPE_TALK = SendMessageToWX.Req.WXSceneSession;

/**

* 朋友圈

*/

public static final int WEIXIN_SHARE_TYPE_FRENDS = SendMessageToWX.Req.WXSceneTimeline;

private static WeixinShareManager instance;

private static String weixinAppId;

private IWXAPI wxApi;

private Context context;

private WeixinShareManager(Context context){

this.context = context;

//初始化数据

weixinAppId = WeixiShareUtil.getWeixinAppId(context);

//初始化微信分享代码

if(weixinAppId != null){

initWeixinShare(context);

}

}

/**

* 获取WeixinShareManager实例

* 非线程安全,请在UI线程中操作

* @return

*/

public static WeixinShareManager getInstance(Context context){

if(instance == null){

instance = new WeixinShareManager(context);

}

return instance;

}

private void initWeixinShare(Context context){

wxApi = WXAPIFactory.createWXAPI(context, weixinAppId, true);

wxApi.registerApp(weixinAppId);

}

/**

* 通过微信分享

* @param shareWay 分享的方式(文本、图片、链接)

* @param shareType 分享的类型(朋友圈,会话)

*/

public void shareByWeixin(ShareContent shareContent, int shareType){

switch (shareContent.getShareWay()) {

case WEIXIN_SHARE_WAY_TEXT:

shareText(shareType, shareContent);

break;

case WEIXIN_SHARE_WAY_PIC:

sharePicture(shareType, shareContent);

break;

case WEIXIN_SHARE_WAY_WEBPAGE:

shareWebPage(shareType, shareContent);

break;

}

}

private abstract class ShareContent{

protected abstract int getShareWay();

protected abstract String getContent();

protected abstract String getTitle();

protected abstract String getURL();

protected abstract int getPicResource();

}

/**

* 设置分享文字的内容

* @author Administrator

*

*/

public class ShareContentText extends ShareContent{

private String content;

/**

* 构造分享文字类

* @param text 分享的文字内容

*/

public ShareContentText(String content){

this.content = content;

}

@Override

protected String getContent() {

return content;

}

@Override

protected String getTitle() {

return null;

}

@Override

protected String getURL() {

return null;

}

@Override

protected int getPicResource() {

return -1;

}

@Override

protected int getShareWay() {

return WEIXIN_SHARE_WAY_TEXT;

}

}

/**

* 设置分享图片的内容

* @author Administrator

*

*/

public class ShareContentPic extends ShareContent{

private int picResource;

public ShareContentPic(int picResource){

this.picResource = picResource;

}

@Override

protected String getContent() {

return null;

}

@Override

关于微信分享代码android和微信分享代码的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

版权说明:如非注明,本站文章均为 AH站长 原创,转载请注明出处和附带本文链接;

本文地址:http://ahzz.com.cn/post/21960.html


取消回复欢迎 发表评论:

分享到

温馨提示

下载成功了么?或者链接失效了?

联系我们反馈

立即下载