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

新手学堂011

android 上通过微信分享怎么实现,第1张

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

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

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

开发手册链接地址:https://openweixinqqcom/zh_CN/htmledition/res/dev/document/sdk/android/indexhtml

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

二、接入微信分享功能

1、申请AppID

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

SDK和Demo下载地址:https://openweixinqqcom/cgi-bin/framet=resource/res_main_tmpl&verify=1&lang=zh_CN&target=res/app_download_android

开发工具包(SDK)

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

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

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

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

范例代码

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

签名生成工具

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

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

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

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

4、新建一个Activity在里面放置一个按钮<喎�"http://www2ctocom/kf/ware/vc/" target="_blank" class="keylink">vcD48cD48cHJlIGNsYXNzPQ=="brush:java;">package netsourceforgesimcpux; import androidappActivity; import androidosBundle; import androidviewView; import androidviewViewOnClickListener; import androidwidgetButton; import comexampleweixinsharedemoshareWeixinShareManager; public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { superonCreate(savedInstanceState); setContentView(Rlayoutactivity_main); Button button = (Button) findViewById(Ridshare_weibo); buttonsetOnClickListener(new OnClickListener() { @Override public void onClick(View v) { WeixinShareManager wsm = WeixinShareManagergetInstance(MainActivitythis); wsmshareByWeixin(wsmnew ShareContentPic(Rdrawableic_launcher), WeixinShareManagerWEIXIN_SHARE_TYPE_TALK); } }); } }

1

2

3

4

5

<relativelayout xmlns:android="http://schemasandroidcom/apk/res/android" xmlns:tools="http://schemasandroidcom/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 comexampleweixinsharedemoshare;

import androidcontentContext;

import androidgraphicsBitmap;

import androidgraphicsBitmapFactory;

import androidwidgetToast;

import comexampleweixinsharedemoutilWeixiShareUtil;

import comtencentmmsdkmodelmsgSendMessageToWX;

import comtencentmmsdkmodelmsgWXImageObject;

import comtencentmmsdkmodelmsgWXMediaMessage;

import comtencentmmsdkmodelmsgWXTextObject;

import comtencentmmsdkmodelmsgWXWebpageObject;

import comtencentmmsdkopenapiIWXAPI;

import comtencentmmsdkopenapiWXAPIFactory;

/

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

@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 = SendMessageToWXReqWXSceneSession;

/

朋友圈

/

public static final int WEIXIN_SHARE_TYPE_FRENDS = SendMessageToWXReqWXSceneTimeline;

private static WeixinShareManager instance;

private static String weixinAppId;

private IWXAPI wxApi;

private Context context;

private WeixinShareManager(Context context){

thiscontext = context;

//初始化数据

weixinAppId = WeixiShareUtilgetWeixinAppId(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 = WXAPIFactorycreateWXAPI(context, weixinAppId, true);

wxApiregisterApp(weixinAppId);

}

/

通过微信分享

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

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

/

public void shareByWeixin(ShareContent shareContent, int shareType){

switch (shareContentgetShareWay()) {

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){

thiscontent = 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){

thispicResource = picResource;

}

@Override

protected String getContent() {

return null;

}

@Override

http://www2ctocom/kf/201410/346762html

安卓70支持2019版本的微信。根据腾讯官网查询显示,70版是老版本,首次上市时间为2019年。微信安卓测试版709和正式版709更新的功能和内容是基本一致的,二者的新功能的确有些不同。测试版是正式版本的“先行者",新功能都会首先上线测试版,目的在于进行小规模的测试,确认版本更新有无BUG和其它问题。

微信接入移动应用,是区分ios和android。

任何一个app或者应用负责程序都是要开发目前主流的两个版本的。ios和android。

微信支持多种语言,支持Wi-Fi无线局域网、2G,3G和4G移动数据网络,iOS版,Android版、Windows Phone版、Blackberry版、诺基亚S40版、S60V3和S60V5版。

  微信的最新版本:521(Android)、52017(iOS)、42(Symbian)、5100(Windows Phone 8)、15(诺基亚S40)、30(BlackBerry)、20(BlackBerry 10)。

1、Android开发

主要开发语言是Java(当然还有Kotlin/Scala/Groovy,暂时不在本文讨论的范围内);

另外使用xml文件来描述界面;

使用xmlgradle文件来配置项目;

2、微信小程序开发

主要开发语言是javascript;

使用wxmlwxss文件来描述界面;

使用appjsonappwxss文件来配置项目;

3、微信小程序开发仅最近新增的能力:

允许个人开发者申请注册小程序、

公众号可以打开小程序、

可以在App分享、

支持识别二维码打开小程序、

可以支持第三方平台配置、

新增数据分析接口、

代码包大小从1M扩大到2M、

推出小程序码、

公众号关联小程序新规则、

公众平台新增快速创建小程序、

从开发费用来看,安卓Android开发难度高,费用高。小程序只需要开发一个版本,具有跨手机操作系统平台的兼容性,因此开发费用相对较低。另外微信小程序的开发模式是比原生Andorid要先进一些的。