如何提高网站点击量,湖南网站seo找行者seo,wordpress获取主页路径,东莞网站平台费用android之微信分享图片
微信图像分享分为三类1、二进制图片2、本地图片3、URL地址图片
XML分析#xff1a;三个Button 添加点击事件#xff01;
注意清单文件 权限 uses-permission android:nameandroid.permission.INTERNET/
uses-permission an…android之微信分享图片
微信图像分享分为三类1、二进制图片2、本地图片3、URL地址图片
XML分析三个Button 添加点击事件
注意清单文件 权限 uses-permission android:nameandroid.permission.INTERNET/
uses-permission android:nameandroid.permission.ACCESS_NETWORK_STATE/
uses-permission android:nameandroid.permission.ACCESS_WIFI_STATE/
uses-permission android:nameandroid.permission.READ_PHONE_STATE/
uses-permission android:nameandroid.permission.WRITE_EXTERNAL_STORAGE/ 1、分享二进制图片
将Bitmap转换成byte格式的数组 类
参数1 穿入bitmap对象参数2 是否释放资源private byte[] bitmapToByteArray(Bitmap bitmap, boolean recycle) {ByteArrayOutputStream output new ByteArrayOutputStream();bitmap.compress(Bitmap.CompressFormat.PNG, 100, output);if (recycle) {bitmap.recycle();}byte[] result output.toByteArray();try {output.close();} catch (Exception e) {e.printStackTrace();}return result;} 二进制图片分享代码 // 第一步获取二进制图像的Bitmap对象Bitmap bitmap BitmapFactory.decodeResource(getResources(), R.mipmap.ic_launcher);
// 第二步创建WXImageObject并包装bitmapWXImageObject imgObj new WXImageObject(bitmap);
// 第三步创建WXMediaMessage对象并包装WXimageObjext对象WXMediaMessage msg new WXMediaMessage();msg.mediaObject imgObj;
// 第四步压缩图片Bitmap thumBitmap bitmap.createScaledBitmap(bitmap, 120, 150, true);
// 释放图片占用的内存资源bitmap.recycle();msg.thumbData bitmapToByteArray(thumBitmap, true);//压缩图
// 第五步创建SendMessageTo.Req对象发送数据SendMessageToWX.Req req new SendMessageToWX.Req();
// 唯一标识req.transaction buildTransction(img);
// 发送的内容或者对象req.message msg;req.scene send_friend.isChecked() ? SendMessageToWX.Req.WXSceneTimeline : SendMessageToWX.Req.WXSceneSession;api.sendReq(req); 2、分享本地图片 第一步判读图像文件是否存在String path /storage/emulated/0/image/123.jpg;File file new File(path);if(!file.exists()) {Toast.makeText(MainActivity.this, 文件不存在, Toast.LENGTH_SHORT).show();}// 第二步创建WXImageObjectWXImageObject imgObj new WXImageObject();
// 设置文件的路径imgObj.setImagePath(path);
// 第三步创建WXMediaMessage对象并包装WXimageObjext对象WXMediaMessage msg new WXMediaMessage();msg.mediaObject imgObj;
// 第四步压缩图片Bitmap bitmap BitmapFactory.decodeFile(path);Bitmap thumBitmap bitmap.createScaledBitmap(bitmap, 120, 150, true);
// 释放图片占用的内存资源bitmap.recycle();msg.thumbData bitmapToByteArray(thumBitmap, true);//压缩图
// 第五步创建SendMessageTo.Req对象发送数据SendMessageToWX.Req req new SendMessageToWX.Req();
// 唯一标识req.transaction buildTransction(img);
// 发送的内容或者对象req.message msg;req.scene send_friend.isChecked() ? SendMessageToWX.Req.WXSceneTimeline : SendMessageToWX.Req.WXSceneSession;api.sendReq(req);3、分享URL图片 由于主线程中不能请求网络需要开启线程 Thread thread new Thread(new Runnable() {Overridepublic void run() {try {
// 第一步创建WXImageObject对象并设置URL地址String url http://avatar.csdn.net/2/C/8/1_small_and_smallworld.jpg;WXImageObject imgObj new WXImageObject();
// 设置图片的urlimgObj.imageUrl url;
// 第二步创建WXMediaMeaasge对象包装WXImageObject对象WXMediaMessage msg new WXMediaMessage();msg.mediaObject imgObj;
// 第三步压缩图片Bitmap bitmap BitmapFactory.decodeStream(new URL(url).openStream());Bitmap thumBitmap bitmap.createScaledBitmap(bitmap, 120, 150, true);
// 释放资源bitmap.recycle();msg.thumbData bitmapToByteArray(thumBitmap, true);
// 第四部创建SendMessageTo.Req对象发送数据SendMessageToWX.Req req new SendMessageToWX.Req();req.transaction buildTransction(img);req.message msg;req.scene send_friend.isChecked()? SendMessageToWX.Req.WXSceneTimeline : SendMessageToWX.Req.WXSceneSession;api.sendReq(req);} catch (Exception e) {e.printStackTrace();}}});thread.start(); }