android 微信分享功能
2015-10-18 14:12
531 查看
1,申请应用:
获取应用签名:--》签名生成工具(apk)安装到android机中,--》输入程序包名--》获取签名 把签名输入就ok了
2,下载SDK
3,新手开发指南
3.1:搭建开发环境。导入微信的jar
3.2 : 实现权限
<uses-permission android:name="android.permission.INTERNET"/> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/> <uses-permission android:name="android.permission.READ_PHONE_STATE"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
开始写代码
首先初始化一Object对象,根据不同的对象设置不同的Object(WXTextObject 或者 WXImageObject)
初始化一个WXMediaMessage对象,
构造一个request 即 Req
设置一个唯一的标示 : transaction;
把消息存入 Req
设置是发给好友还是朋友圈
调用接口api发送数据到微信
具体的其他操作还查看SDK或者是查看官网Demo
获取应用签名:--》签名生成工具(apk)安装到android机中,--》输入程序包名--》获取签名 把签名输入就ok了
2,下载SDK
3,新手开发指南
3.1:搭建开发环境。导入微信的jar
3.2 : 实现权限
<uses-permission android:name="android.permission.INTERNET"/> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/> <uses-permission android:name="android.permission.READ_PHONE_STATE"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
开始写代码
首先初始化一Object对象,根据不同的对象设置不同的Object(WXTextObject 或者 WXImageObject)
初始化一个WXMediaMessage对象,
构造一个request 即 Req
设置一个唯一的标示 : transaction;
把消息存入 Req
设置是发给好友还是朋友圈
调用接口api发送数据到微信
package com.scort.text; import com.tencent.mm.sdk.modelbase.BaseReq; import com.tencent.mm.sdk.modelbase.BaseResp; import com.tencent.mm.sdk.modelmsg.SendMessageToWX; import com.tencent.mm.sdk.modelmsg.WXMediaMessage; import com.tencent.mm.sdk.modelmsg.WXTextObject; import com.tencent.mm.sdk.openapi.IWXAPI; import com.tencent.mm.sdk.openapi.IWXAPIEventHandler; import com.tencent.mm.sdk.openapi.WXAPIFactory; import android.app.Activity; import android.os.Bundle; import android.view.Menu; import android.view.MenuItem; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.Toast; /** * 微信 AppID(别人的):wxd8cd03e6fc9d9d0a * * @author Administrator * */ public class MainActivity extends Activity implements OnClickListener{ private IWXAPI api; public static final String APP_ID = "wx467d3011fc7900fb"; private Button btn_Share,btn_regApp; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); btn_Share = (Button) findViewById(R.id.Btn_Share); btn_Share.setOnClickListener(this); btn_regApp = (Button) findViewById(R.id.Btn_StartApp); btn_regApp.setOnClickListener(this); // 获取WXAPI实例 api = WXAPIFactory.createWXAPI(this, APP_ID,true); //注册(把应用的appid注册到微信) api.registerApp(APP_ID); // api.handleIntent(getIntent(), this); } @Override protected void onDestroy() { //取消注册 api.unregisterApp(); super.onDestroy(); } @Override public void onClick(View v) { switch (v.getId()) { /** * 启动微信App */ case R.id.Btn_StartApp: Toast.makeText(MainActivity.this, "launch result = " + api.openWXApp(), Toast.LENGTH_LONG).show(); break; /** * 分享朋友圈 */ case R.id.Btn_Share: // 初始化一个WXTextObject对象 WXTextObject textObj = new WXTextObject(); textObj.text = "Hello"; // 用WXTextObject对象初始化一个WXMediaMessage对象 WXMediaMessage msg = new WXMediaMessage(); msg.mediaObject = textObj; // 发送文本类型的消息时,title字段不起作用 // msg.title = "Will be ignored"; msg.description = "Hellossss";//不显示在界面上 // 构造一个Req SendMessageToWX.Req req = new SendMessageToWX.Req(); req.transaction = buildTransaction("text"); // transaction字段用于唯一标识一个请求 req.message = msg; req.scene = SendMessageToWX.Req.WXSceneTimeline;//发送到朋友圈 WXSceneSession会话 // 调用api接口发送数据到微信 api.sendReq(req); break; } } private String buildTransaction(final String type) { //三目运算符 (表达式1)?(表达式2):(表达式3),计算方法是这样的:表达式1是一个逻辑表达式,如果其值为true,则整个表达式的值为表达式2的值,否则为表达式3的值 return (type == null) ? String.valueOf(System.currentTimeMillis()) : type + System.currentTimeMillis(); } }
具体的其他操作还查看SDK或者是查看官网Demo
相关文章推荐
- 社交巨头三国杀:微信、WhatsApp、Line到底有啥区别?
- 使用C++实现JNI接口需要注意的事项
- Android IPC进程间通讯机制
- Android Manifest 用法
- [转载]Activity中ConfigChanges属性的用法
- Android之获取手机上的图片和视频缩略图thumbnails
- Android之使用Http协议实现文件上传功能
- Android学习笔记(二九):嵌入浏览器
- android string.xml文件中的整型和string型代替
- i-jetty环境搭配与编译
- android之定时器AlarmManager
- android wifi 无线调试
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- android 代码实现控件之间的间距
- android FragmentPagerAdapter的“标准”配置
- Android"解决"onTouch和onClick的冲突问题
- android:installLocation简析
- android searchView的关闭事件