删除一些依赖包

This commit is contained in:
jia 2024-12-10 22:49:52 +08:00
parent b6fa55f36a
commit 2a8a7cc5b6
12 changed files with 394 additions and 208 deletions

View File

@ -107,10 +107,8 @@ dependencies {
implementation 'jp.wasabeef:picasso-transformations:2.1.0'
//Picasso
implementation 'com.google.android.material:material:1.0.0'//1.0.0
// implementation 'com.github.bumptech.glide:glide:3.7.0'
implementation 'com.github.bumptech.glide:glide:4.15.1'//4.11.0
implementation 'androidx.core:core-ktx:1.10.1'//1.10.1
// implementation 'androidx.activity:activity:1.8.0'
annotationProcessor 'com.github.bumptech.glide:compiler:4.16.0'//4.11.0
//Glide
@ -119,11 +117,11 @@ dependencies {
implementation project(':JCVideo_Library')
implementation 'com.github.PhilJay:MPAndroidChart:v3.0.3'
implementation files('libs/mina-core-2.0.17.jar')
implementation files('libs/fastjson-1.1.34.android.jar')
// implementation files('libs/fastjson-1.1.34.android.jar')
// implementation 'com.p2p.core:p2p-core:0.4.4.9'
implementation(name: 'p2p-core-release', ext: 'aar')
implementation(name: 'pano-release', ext: 'aar')
// implementation(name: 'pano-release', ext: 'aar') // jjia
implementation(name: 'soundwave-release', ext: 'aar')
implementation 'com.libhttp:libhttp:v0.5.5'
/*implementation 'com.jwkj:UDPUtilsLib:v1.1.1'*/
@ -134,15 +132,10 @@ dependencies {
implementation files('libs/httpcore-4.4.13.jar')
implementation files('libs/httpclient-4.5.12.jar')
implementation 'com.zhy:autolayout:1.4.5'
// implementation 'com.tencent.bugly:crashreport:latest.release'
// implementation 'com.tencent.bugly:nativecrashreport:latest.release'
//UDP功能模块库
//UDP基础库
implementation 'com.jwkj:udpsender:v2.0.2'
implementation(name: 'UDPUtilsLib-v1.1.1', ext: 'aar')
// implementation 'com.github.jwkj:SoundWaveSender:v2.0.2'
//
implementation 'com.github.kongqw:AndroidRocker:1.0.1'
@ -159,20 +152,15 @@ dependencies {
// SDK都依赖基础组件库
implementation 'com.umeng.umsdk:common:9.6.6'// ()
implementation 'com.umeng.umsdk:asms:1.8.0'//
implementation 'com.umeng.umsdk:share-core:7.3.3'//
// implementation 'com.umeng.umsdk:common:9.6.6'// ()
// implementation 'com.umeng.umsdk:asms:1.8.0'//
// implementation 'com.umeng.umsdk:share-core:7.3.3'//
//线QQSDK
implementation 'com.umeng.umsdk:share-wx:7.3.3' //
// implementation 'com.umeng.umsdk:share-wx:7.3.3' //
implementation 'com.tencent.mm.opensdk:wechat-sdk-android:6.8.24'//
implementation 'androidx.appcompat:appcompat:1.6.1'//1.3.0
implementation 'androidx.constraintlayout:constraintlayout:2.0.4'//2.0.4
//
// implementation files('libs/umeng_social_sdk.jar')
implementation 'com.tencent:mmkv:2.0.0'
implementation("com.github.bumptech.glide:okhttp3-integration:4.11.0" )
// implementation 'com.github.Jasonchenlijian:FastBle:2.4.0'
//

View File

@ -16,7 +16,6 @@ import com.ifish.baseclass.BaseActivity;
import com.ifish.utils.Commons.NetWork;
import com.ifish.utils.Commons.Text;
import com.ifish.utils.ToastUtil;
import com.umeng.socialize.UMShareAPI;
/**
* @ClassName: BrandActivity
@ -67,7 +66,6 @@ public class BrandActivity extends BaseActivity {
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
/** attention to this below ,must add this**/
UMShareAPI.get(this).onActivityResult(requestCode, resultCode, data);
}
}

View File

@ -26,12 +26,7 @@ import com.ifish.utils.Commons.Text;
import com.ifish.utils.HttpListener;
import com.ifish.utils.HttpManager;
import com.ifish.utils.ToastUtil;
import com.umeng.socialize.ShareAction;
import com.umeng.socialize.UMShareAPI;
import com.umeng.socialize.UMShareListener;
import com.umeng.socialize.bean.SHARE_MEDIA;
import com.umeng.socialize.media.UMImage;
import com.umeng.socialize.media.UMWeb;
import com.ifish.utils.WeChatManager;
import java.io.File;
import java.io.FileFilter;
@ -210,34 +205,35 @@ public class ImageSeeActivity extends BaseActivity {
}
};
private void share() {//微信 朋友圈 QQ 新浪
UMWeb web =new UMWeb(HttpManager.LOOK_HTML_URL+data);
web.setTitle(Text.AppName);//标题
new ShareAction(ImageSeeActivity.this).setDisplayList(SHARE_MEDIA.WEIXIN,SHARE_MEDIA.WEIXIN_CIRCLE,SHARE_MEDIA.QQ,SHARE_MEDIA.SINA)
.withText(Text.AppName)//标题
.withText(Text.ShareText)//文字
.withMedia(new UMImage(ImageSeeActivity.this,BitmapFactory.decodeFile(files[mViewPager.getCurrentItem()].getAbsolutePath())))//把本地图片当作分享的img上传至友盟
.withMedia(web)//附带的html网址
.setCallback(umShareListener)//回调
.open();
WeChatManager.getInstance(this).shareFriends(this,Text.AppName,Text.ShareText,HttpManager.LOOK_HTML_URL+data,null,true);
// UMWeb web =new UMWeb(HttpManager.LOOK_HTML_URL+data);
// web.setTitle(Text.AppName);//标题
// new ShareAction(ImageSeeActivity.this).setDisplayList(SHARE_MEDIA.WEIXIN,SHARE_MEDIA.WEIXIN_CIRCLE,SHARE_MEDIA.QQ,SHARE_MEDIA.SINA)
// .withText(Text.AppName)//标题
// .withText(Text.ShareText)//文字
// .withMedia(new UMImage(ImageSeeActivity.this,BitmapFactory.decodeFile(files[mViewPager.getCurrentItem()].getAbsolutePath())))//把本地图片当作分享的img上传至友盟
// .withMedia(web)//附带的html网址
// .setCallback(umShareListener)//回调
// .open();
}
private UMShareListener umShareListener = new UMShareListener() {
@Override
public void onStart(SHARE_MEDIA shareMedia) {
}
public void onResult(SHARE_MEDIA platform) {
EventBus.getDefault().post(new ShareWechatBean("ImageListActivty"));
}
public void onError(SHARE_MEDIA platform, Throwable t) {}
public void onCancel(SHARE_MEDIA platform) {}
};
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
/** 友盟分享attention to this below ,must add this**/
UMShareAPI.get(this).onActivityResult(requestCode, resultCode, data);
}
// private UMShareListener umShareListener = new UMShareListener() {
// @Override
// public void onStart(SHARE_MEDIA shareMedia) {
//
// }
//
// public void onResult(SHARE_MEDIA platform) {
// EventBus.getDefault().post(new ShareWechatBean("ImageListActivty"));
// }
// public void onError(SHARE_MEDIA platform, Throwable t) {}
// public void onCancel(SHARE_MEDIA platform) {}
// };
// @Override
// protected void onActivityResult(int requestCode, int resultCode, Intent data) {
// super.onActivityResult(requestCode, resultCode, data);
// /** 友盟分享attention to this below ,must add this**/
// UMShareAPI.get(this).onActivityResult(requestCode, resultCode, data);
// }
}

View File

@ -30,7 +30,12 @@ import androidx.annotation.NonNull;
import com.alibaba.sdk.android.httpdns.HttpDns;
import com.alibaba.sdk.android.httpdns.HttpDnsService;
import com.alibaba.sdk.android.push.CloudPushService;
import com.alibaba.sdk.android.push.CommonCallback;
import com.alibaba.sdk.android.push.PushControlService;
import com.alibaba.sdk.android.push.huawei.HuaWeiRegister;
import com.alibaba.sdk.android.push.noonesdk.PushServiceFactory;
import com.alibaba.sdk.android.push.register.MiPushRegister;
import com.bumptech.glide.Glide;
import com.ifish.basebean.AdInfos;
import com.ifish.basebean.BaseBean;
@ -890,6 +895,7 @@ public class LoadingActivity extends BaseActivityNotAnim {
alertDialog.cancel();
SPUtil.getInstance(getApplicationContext()).putBoolean(firstShowPrivacy,true);
// getPermission();
pushInit();
initapp();
}
});
@ -897,4 +903,41 @@ public class LoadingActivity extends BaseActivityNotAnim {
}
private void pushInit(){
PushServiceFactory.getPushControlService().setConnectionChangeListener(new PushControlService.ConnectionChangeListener() {
@Override
public void onConnect() {
Log.d("AliyunPush", "Aliyun Push connected");
}
@Override
public void onDisconnect(String s, String s1) {
Log.d("AliyunPush", "Aliyun Push disconnect, errorCode:" + s + " msg = " + s1);
}
});
final CloudPushService pushService = PushServiceFactory.getCloudPushService();
//仅适用于Debug包正式包不需要此行
pushService.setLogLevel(CloudPushService.LOG_DEBUG);
pushService.register(this, new CommonCallback() {
@Override
public void onSuccess(String response) {
Log.d("Init", "init cloudchannel success");
Log.d("Initpushid", pushService.getDeviceId());
}
@Override
public void onFailed(String errorCode, String errorMessage) {
Log.d("Init", "init cloudchannel failed -- errorcode:" + errorCode + " -- errorMessage:" + errorMessage);
}
});
// 注册方法会自动判断是否支持小米系统推送如不支持会跳过注册
MiPushRegister.register(this, "2882303761517421890", "5491742138890");
// 注册方法会自动判断是否支持华为系统推送如不支持会跳过注册
HuaWeiRegister.register(BaseApplication.app);
}
}

View File

@ -21,13 +21,9 @@ import com.ifish.utils.Commons;
import com.ifish.utils.Commons.Text;
import com.ifish.utils.HttpManager;
import com.ifish.utils.ToastUtil;
import com.ifish.utils.WeChatManager;
import com.squareup.picasso.Picasso;
import com.umeng.socialize.ShareAction;
import com.umeng.socialize.UMShareAPI;
import com.umeng.socialize.UMShareListener;
import com.umeng.socialize.bean.SHARE_MEDIA;
import com.umeng.socialize.media.UMImage;
import com.umeng.socialize.media.UMWeb;
/**
*
@ -121,37 +117,39 @@ public class LookAtReportShareActivity extends BaseActivity {
}
}
private void share() {//微信 朋友圈 QQ 新浪
UMWeb web =new UMWeb(lookReport.htmlName);
web.setTitle(Text.AppName);//标题
new ShareAction(LookAtReportShareActivity.this).setDisplayList(SHARE_MEDIA.WEIXIN,SHARE_MEDIA.WEIXIN_CIRCLE,SHARE_MEDIA.QQ,SHARE_MEDIA.SINA)
.withText(Text.ShareReportTitle)//标题
.withText(lookReport.suggestion)//文字
.withMedia(new UMImage(LookAtReportShareActivity.this,HttpManager.LOOK_IMG_URL+lookReport.shareImg))//图片网址
.withMedia(web)//附带的html网址
.setCallback(umShareListener)//回调
.open();
WeChatManager.getInstance(this).shareFriends(this,Text.ShareReportTitle,lookReport.suggestion,HttpManager.LOOK_IMG_URL+lookReport.shareImg,"",true);
// UMWeb web =new UMWeb(lookReport.suggestion);
// web.setTitle(Text.AppName);//标题
// new ShareAction(LookAtReportShareActivity.this).setDisplayList(SHARE_MEDIA.WEIXIN,SHARE_MEDIA.WEIXIN_CIRCLE,SHARE_MEDIA.QQ,SHARE_MEDIA.SINA)
// .withText(Text.ShareReportTitle)//标题
// .withText(lookReport.suggestion)//文字
// .withMedia(new UMImage(LookAtReportShareActivity.this,HttpManager.LOOK_IMG_URL+lookReport.shareImg))//图片网址
// .withMedia(web)//附带的html网址
// .setCallback(umShareListener)//回调
// .open();
}
private UMShareListener umShareListener = new UMShareListener() {
@Override
public void onStart(SHARE_MEDIA shareMedia) {
}
public void onResult(SHARE_MEDIA platform) {
ToastUtil.show(LookAtReportShareActivity.this, Text.SHARESUCCESS);
goldValue(Commons.GoldTasksKey.SHARELOOKREPORT);
}
public void onError(SHARE_MEDIA platform, Throwable t) {
}
public void onCancel(SHARE_MEDIA platform) {
}
};
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
/** 友盟分享attention to this below ,must add this**/
UMShareAPI.get(this).onActivityResult(requestCode, resultCode, data);
}
// private UMShareListener umShareListener = new UMShareListener() {
// @Override
// public void onStart(SHARE_MEDIA shareMedia) {
//
// }
//
// public void onResult(SHARE_MEDIA platform) {
// ToastUtil.show(LookAtReportShareActivity.this, Text.SHARESUCCESS);
// goldValue(Commons.GoldTasksKey.SHARELOOKREPORT);
// }
// public void onError(SHARE_MEDIA platform, Throwable t) {
//
// }
// public void onCancel(SHARE_MEDIA platform) {
//
// }
// };
// @Override
// protected void onActivityResult(int requestCode, int resultCode, Intent data) {
// super.onActivityResult(requestCode, resultCode, data);
// /** 友盟分享attention to this below ,must add this**/
// UMShareAPI.get(this).onActivityResult(requestCode, resultCode, data);
// }
}

View File

@ -75,8 +75,6 @@ import com.ifish.utils.UnreadCount;
import com.ifish.view.DisplayUtil;
import com.lidroid.xutils.http.HttpHandler;
import com.p2p.core.P2PHandler;
import com.umeng.commonsdk.UMConfigure;
import com.umeng.socialize.UMShareAPI;
import java.net.Socket;
import java.util.ArrayList;
@ -128,7 +126,6 @@ public class MainTabActivity extends BaseFragmentActivity {
//* 用初始化接口如需要使用AndroidManifest.xml中配置好的appkey和channel值
//* UMConfigure.init调用中appkey和channel参数请置为null
//* 友盟分享SDK初始化
UMConfigure.init(this,"","umeng",UMConfigure.DEVICE_TYPE_PHONE,"");
}
@Override
@ -181,7 +178,6 @@ public class MainTabActivity extends BaseFragmentActivity {
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
//重写分享回调
UMShareAPI.get(this).onActivityResult(requestCode, resultCode, data);
}
private void onParseIntent() {

View File

@ -93,7 +93,6 @@ import com.p2p.core.P2PHandler;
import com.p2p.core.P2PValue;
import com.p2p.core.P2PView;
import com.squareup.picasso.Picasso;
import com.umeng.socialize.UMShareAPI;
import java.io.File;
import java.net.InetAddress;
@ -1887,7 +1886,6 @@ public class MonitorActivity extends BaseGradeMonitorActivity implements OnClick
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
//重写分享回调
UMShareAPI.get(this).onActivityResult(requestCode, resultCode, data);
}
public void onEventMainThread(ShareDevice event) {//分享鱼缸

View File

@ -44,8 +44,6 @@ import com.ifish.utils.TrustAllCerts;
//import com.igexin.sdk.PushManager;
import com.p2p.core.P2PSpecial.P2PSpecial;
import com.squareup.picasso.Picasso;
import com.umeng.commonsdk.UMConfigure;
import com.umeng.socialize.PlatformConfig;
import java.security.SecureRandom;
import java.util.UUID;
@ -91,7 +89,7 @@ public class BaseApplication extends MultiDexApplication {
app = this;
initCrashSDK();
// initLocationSDK();
initShareSDK();
// initShareSDK();
// initSMSSDK();
// initAlibcTradeSDK();
initalipushSDK();
@ -266,40 +264,7 @@ public class BaseApplication extends MultiDexApplication {
mNotificationManager.createNotificationChannel(mChannel);
}
PushServiceFactory.getPushControlService().setConnectionChangeListener(new PushControlService.ConnectionChangeListener() {
@Override
public void onConnect() {
Log.d("AliyunPush", "Aliyun Push connected");
}
@Override
public void onDisconnect(String s, String s1) {
Log.d("AliyunPush", "Aliyun Push disconnect, errorCode:" + s + " msg = " + s1);
}
});
final CloudPushService pushService = PushServiceFactory.getCloudPushService();
//仅适用于Debug包正式包不需要此行
pushService.setLogLevel(CloudPushService.LOG_DEBUG);
pushService.register(this, new CommonCallback() {
@Override
public void onSuccess(String response) {
Log.d("Init", "init cloudchannel success");
Log.d("Initpushid", pushService.getDeviceId());
}
@Override
public void onFailed(String errorCode, String errorMessage) {
Log.d("Init", "init cloudchannel failed -- errorcode:" + errorCode + " -- errorMessage:" + errorMessage);
}
});
// 注册方法会自动判断是否支持小米系统推送如不支持会跳过注册
MiPushRegister.register(this, "2882303761517421890", "5491742138890");
// 注册方法会自动判断是否支持华为系统推送如不支持会跳过注册
HuaWeiRegister.register(this);
}
// private void initSMSSDK() {//初始化MOB短信 SDK
@ -312,19 +277,19 @@ public class BaseApplication extends MultiDexApplication {
}
//初始化友盟社会化分享
private void initShareSDK() {
// 友盟社会化分享SDK预初始化函数
// preInit预初始化函数耗时极少不会影响App首次冷启动用户体验
UMConfigure.preInit(this, "55f7d5bfe0f55a14770001da", "ifish");
/**
* 在微博开放平台设置的授权回调REDIRECT_URL必须与代码中设置一致 http://open.weibo.com/apps/1240247140/info/advanced
*/
// Config.REDIRECT_URL = "http://sns.whalecloud.com/sina2/callback";
PlatformConfig.setWeixin("wxb3b27d653ec3e3cb", "79d35215d7ef369b927f7cb21a2b8ff6");
PlatformConfig.setWXFileProvider("com.ifish.activity.fileprovider");
// PlatformConfig.setSinaWeibo("1240247140", "d5825aae9f4c8552b60e112b42c345f3");
// PlatformConfig.setQQZone("1105206998", "rTiJNwzYY79DExD9");
}
// private void initShareSDK() {
// // 友盟社会化分享SDK预初始化函数
// // preInit预初始化函数耗时极少不会影响App首次冷启动用户体验
// UMConfigure.preInit(this, "55f7d5bfe0f55a14770001da", "ifish");
// /**
// * 在微博开放平台设置的授权回调REDIRECT_URL必须与代码中设置一致 http://open.weibo.com/apps/1240247140/info/advanced
// */
//// Config.REDIRECT_URL = "http://sns.whalecloud.com/sina2/callback";
// PlatformConfig.setWeixin("wxb3b27d653ec3e3cb", "79d35215d7ef369b927f7cb21a2b8ff6");
// PlatformConfig.setWXFileProvider("com.ifish.activity.fileprovider");
//// PlatformConfig.setSinaWeibo("1240247140", "d5825aae9f4c8552b60e112b42c345f3");
//// PlatformConfig.setQQZone("1105206998", "rTiJNwzYY79DExD9");
// }
public boolean inMainProcess() {
String packageName = getPackageName();

View File

@ -8,6 +8,7 @@
package com.ifish.fragment;
import android.content.Intent;
import android.graphics.Bitmap;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.LayoutInflater;
@ -31,12 +32,10 @@ import com.ifish.baseclass.BaseFragment;
import com.ifish.geewe.CameraScreenShot;
import com.ifish.utils.AnimationUtil;
import com.ifish.utils.Commons;
import com.ifish.utils.ImageKtUtil;
import com.ifish.utils.L;
import com.ifish.utils.ToastUtil;
import com.umeng.socialize.ShareAction;
import com.umeng.socialize.UMShareListener;
import com.umeng.socialize.bean.SHARE_MEDIA;
import com.umeng.socialize.media.UMImage;
import com.ifish.utils.WeChatManager;
import de.greenrobot.event.EventBus;
@ -140,10 +139,13 @@ public class CameraGalleryFragment extends BaseFragment {
if (!LoadingActivity.api.isWXAppInstalled()) {
Toast.makeText(getActivity(), "您的设备未安装微信客户端", Toast.LENGTH_SHORT).show();
}
new ShareAction(getActivity()).setPlatform(SHARE_MEDIA.WEIXIN_CIRCLE)
.withMedia(new UMImage(getActivity(), R.drawable.shareifishapp))
.setCallback(umShareListener)
.share();
Bitmap bitmap = ImageKtUtil.drawableToBitmap(getActivity(),getActivity().getDrawable(R.drawable.shareifishapp));
WeChatManager.getInstance(getActivity()).shareFriendsImage(bitmap,true);
// new ShareAction(getActivity()).setPlatform(SHARE_MEDIA.WEIXIN_CIRCLE)
// .withMedia(new UMImage(getActivity(), R.drawable.shareifishapp))
// .setCallback(umShareListener)
// .share();
break;
case R.id.tv_video://视频录制
case R.id.iv_video:
@ -170,23 +172,23 @@ public class CameraGalleryFragment extends BaseFragment {
}
//分享回调
private UMShareListener umShareListener = new UMShareListener() {
@Override
public void onStart(SHARE_MEDIA shareMedia) {
}
@Override
public void onResult(SHARE_MEDIA platform) {
EventBus.getDefault().post(new ShareWechatBean("DeviceFragment"));
}
@Override
public void onError(SHARE_MEDIA platform, Throwable t) {
}
@Override
public void onCancel(SHARE_MEDIA platform) {
}
};
// private UMShareListener umShareListener = new UMShareListener() {
// @Override
// public void onStart(SHARE_MEDIA shareMedia) {
//
// }
//
// @Override
// public void onResult(SHARE_MEDIA platform) {
// EventBus.getDefault().post(new ShareWechatBean("DeviceFragment"));
// }
//
// @Override
// public void onError(SHARE_MEDIA platform, Throwable t) {
// }
//
// @Override
// public void onCancel(SHARE_MEDIA platform) {
// }
// };
}

View File

@ -16,6 +16,7 @@ import android.app.Dialog;
import android.app.NotificationManager;
import android.content.DialogInterface;
import android.content.Intent;
import android.graphics.Bitmap;
import android.net.Uri;
import android.os.Build;
import android.os.Bundle;
@ -67,22 +68,17 @@ import com.ifish.utils.Commons.NetWork;
import com.ifish.utils.Commons.Text;
import com.ifish.utils.HttpListener;
import com.ifish.utils.HttpManager;
import com.ifish.utils.ImageKtUtil;
import com.ifish.utils.L;
import com.ifish.utils.SPUtil;
import com.ifish.utils.ToastUtil;
import com.ifish.utils.WeChatManager;
import com.ifish.view.CircleImageView;
import com.lidroid.xutils.HttpUtils;
import com.lidroid.xutils.exception.HttpException;
import com.lidroid.xutils.http.ResponseInfo;
import com.lidroid.xutils.http.callback.RequestCallBack;
import com.lidroid.xutils.util.LogUtils;
import com.p2p.core.P2PHandler;
import com.squareup.picasso.Picasso;
import com.umeng.socialize.ShareAction;
import com.umeng.socialize.UMShareListener;
import com.umeng.socialize.bean.SHARE_MEDIA;
import com.umeng.socialize.media.UMImage;
import java.io.File;
import java.lang.reflect.Field;
@ -440,11 +436,14 @@ public class MineFragment extends BaseV4Fragment {
if (!LoadingActivity.api.isWXAppInstalled()) {
Toast.makeText(getActivity(), "您的设备未安装微信客户端", Toast.LENGTH_SHORT).show();
}
UMImage image = new UMImage(getActivity(), R.drawable.shareifishapp);//资源文件
new ShareAction(getActivity()).setPlatform(SHARE_MEDIA.WEIXIN_CIRCLE)
.withMedia(image)
.setCallback(umShareListener)
.share();
Bitmap bitmap = ImageKtUtil.drawableToBitmap(getActivity(), getActivity().getResources().getDrawable(R.drawable.shareifishapp));
WeChatManager.getInstance(getActivity()).shareFriendsImage(bitmap,true);
// UMImage image = new UMImage(getActivity(), R.drawable.shareifishapp);//资源文件
// new ShareAction(getActivity()).setPlatform(SHARE_MEDIA.WEIXIN_CIRCLE)
// .withMedia(image)
// .setCallback(umShareListener)
// .share();
break;
case R.id.rl_tellus://我有话说
i.setClass(getActivity(), TellIfishActivity.class);
@ -475,29 +474,29 @@ public class MineFragment extends BaseV4Fragment {
}
//分享回调
private UMShareListener umShareListener = new UMShareListener() {
@Override
public void onStart(SHARE_MEDIA shareMedia) {
LogUtils.d("ifish LHD 分享回调 onStart");
}
@Override
public void onResult(SHARE_MEDIA platform) {
LogUtils.d("ifish LHD 分享回调 onResult "+platform);
ToastUtil.show(getActivity(), Text.SHARESUCCESS);
goldValue(Commons.GoldTasksKey.SHAREIFISHAPP);
}
@Override
public void onError(SHARE_MEDIA platform, Throwable t) {
LogUtils.e("ifish LHD 分享回调 onError "+platform);
}
@Override
public void onCancel(SHARE_MEDIA platform) {
LogUtils.e("ifish LHD 分享回调 onCancel "+platform);
}
};
// private UMShareListener umShareListener = new UMShareListener() {
// @Override
// public void onStart(SHARE_MEDIA shareMedia) {
// LogUtils.d("ifish LHD 分享回调 onStart");
// }
//
// @Override
// public void onResult(SHARE_MEDIA platform) {
// LogUtils.d("ifish LHD 分享回调 onResult "+platform);
// ToastUtil.show(getActivity(), Text.SHARESUCCESS);
// goldValue(Commons.GoldTasksKey.SHAREIFISHAPP);
// }
//
// @Override
// public void onError(SHARE_MEDIA platform, Throwable t) {
// LogUtils.e("ifish LHD 分享回调 onError "+platform);
// }
//
// @Override
// public void onCancel(SHARE_MEDIA platform) {
// LogUtils.e("ifish LHD 分享回调 onCancel "+platform);
// }
// };
private void logout() {
Builder dialog1 = new Builder(getActivity(), AlertDialog.THEME_HOLO_LIGHT);

View File

@ -0,0 +1,45 @@
package com.ifish.utils
import android.app.Activity
import android.graphics.Bitmap
import android.graphics.Canvas
import android.graphics.PixelFormat
import android.graphics.drawable.Drawable
import java.io.ByteArrayOutputStream
class ImageKtUtil {
companion object {
@JvmStatic
//将Drawable转化为Bitmap
fun drawableToBitmap(activity: Activity, drawable: Drawable): Bitmap? {
val width = drawable.intrinsicWidth
val height = drawable.intrinsicHeight
val bitmap = Bitmap.createBitmap(
width, height,
if (drawable.opacity != PixelFormat.OPAQUE) Bitmap.Config.ARGB_8888 else Bitmap.Config.RGB_565
)
val canvas = Canvas(bitmap)
drawable.setBounds(0, 0, width, height)
canvas.drawColor(activity.resources.getColor(android.R.color.white))
drawable.draw(canvas)
return bitmap
}
@JvmStatic
fun bmpToByteArray(bmp: Bitmap, needRecycle: Boolean): ByteArray? {
val output = ByteArrayOutputStream()
bmp.compress(Bitmap.CompressFormat.PNG, 80, output)
if (needRecycle) {
bmp.recycle()
}
val result = output.toByteArray()
try {
output.close()
} catch (e: Exception) {
e.printStackTrace()
}
return result
}
}
}

View File

@ -0,0 +1,158 @@
package com.ifish.utils;
import android.app.Activity;
import android.content.Context;
import android.graphics.Bitmap;
import android.text.TextUtils;
import com.bumptech.glide.Glide;
import com.ifish.activity.R;
import com.tencent.mm.opensdk.constants.Build;
import com.tencent.mm.opensdk.modelbiz.WXOpenCustomerServiceChat;
import com.tencent.mm.opensdk.modelmsg.SendAuth;
import com.tencent.mm.opensdk.modelmsg.SendMessageToWX;
import com.tencent.mm.opensdk.modelmsg.WXImageObject;
import com.tencent.mm.opensdk.modelmsg.WXMediaMessage;
import com.tencent.mm.opensdk.modelmsg.WXWebpageObject;
import com.tencent.mm.opensdk.openapi.IWXAPI;
import com.tencent.mm.opensdk.openapi.WXAPIFactory;
public class WeChatManager {
// APP_ID 替换为你的应用从官方网站申请到的合法appID
private String WEIXIN_APP_ID;
// IWXAPI 是第三方app和微信通信的openApi接口
private IWXAPI api;
private static WeChatManager mManager;
private Context context;
public WeChatManager(Context context) {
this.context = context;
WEIXIN_APP_ID = "wxb3b27d653ec3e3cb";
}
public static WeChatManager getInstance(Context context) {
if (mManager == null) {
synchronized (WeChatManager.class) {
if (mManager == null) {
mManager = new WeChatManager(context);
}
}
}
return mManager;
}
public IWXAPI getIWxApi() {
// 通过WXAPIFactory工厂获取IWXAPI的实例
if (api == null) {
api = WXAPIFactory.createWXAPI(context, WEIXIN_APP_ID, false);
// 将应用的appId注册到微信
api.registerApp(WEIXIN_APP_ID);
}
return api;
}
/**
* 判断微信客户端是否安装
*/
public boolean iSWXAppInstalledAndSupported() {
return getIWxApi().isWXAppInstalled();
}
private String buildTransaction(final String type) {
return (type == null) ? String.valueOf(System.currentTimeMillis()) : type + System.currentTimeMillis();
}
public void shareFriends(Activity activity, String title, String description, String url, String imageUrl, boolean flag) {
if (TextUtils.isEmpty(imageUrl)) {
Bitmap bitmap = ImageKtUtil.drawableToBitmap(activity, activity.getResources().getDrawable(R.drawable.app_icon));
toShare(title, description, url, bitmap, flag);
} else {
new Thread() {
public void run() {
try {
Bitmap myBitmap = Glide.with(activity)
.asBitmap()
.load(imageUrl)
.submit(100, 100).get();
Bitmap bitmap = Bitmap.createBitmap(myBitmap, 0, 0, myBitmap.getWidth(), myBitmap.getHeight());
toShare(title, description, url, bitmap, flag);
} catch (Exception e) {
e.printStackTrace();
}
}
}.start();
}
}
public void toShare(String title, String description, String url, Bitmap bitmap, boolean flag) {
byte[] bit = ImageKtUtil.bmpToByteArray(bitmap, false);
WXWebpageObject webpage = new WXWebpageObject();
webpage.webpageUrl = url;
final WXMediaMessage msg = new WXMediaMessage(webpage);
msg.title = title;
msg.description = description;
msg.thumbData = bit;
SendMessageToWX.Req req = new SendMessageToWX.Req();
req.transaction = buildTransaction("webpage");
req.message = msg;
req.scene = flag ? SendMessageToWX.Req.WXSceneTimeline : SendMessageToWX.Req.WXSceneSession;
getIWxApi().sendReq(req);
}
public void shareFriendsImage(Bitmap bmp, boolean flag) {
WXImageObject imgObj = new WXImageObject(bmp);
WXMediaMessage msg = new WXMediaMessage();
msg.mediaObject = imgObj;
double scale = bmp.getHeight() * 1.0 / bmp.getWidth();
Bitmap thumbBmp = Bitmap.createScaledBitmap(bmp, 200, (int) (200 * scale), true);
bmp.recycle();
msg.thumbData = ImageKtUtil.bmpToByteArray(thumbBmp, true);
SendMessageToWX.Req req = new SendMessageToWX.Req();
req.transaction = buildTransaction("img");
req.message = msg;
req.scene = flag ? SendMessageToWX.Req.WXSceneTimeline : SendMessageToWX.Req.WXSceneSession;
getIWxApi().sendReq(req);
}
public void login() {
final SendAuth.Req req = new SendAuth.Req();
req.scope = "snsapi_userinfo,snsapi_friend,snsapi_message,snsapi_contact";
req.state = "water";
if (api == null) {
api = getIWxApi();
}
api.sendReq(req);
}
/**
* 企业客服
*/
public void toCallus() {
IWXAPI api = getIWxApi();
if (api.getWXAppSupportAPI() >= Build.SUPPORT_OPEN_CUSTOMER_SERVICE_CHAT) {
WXOpenCustomerServiceChat.Req req = new WXOpenCustomerServiceChat.Req();
req.corpId = "xxxx"; // 企业ID
req.url = "https://work.weixin.qq.com/kfid/kfcxxxxx"; // 客服URL
api.sendReq(req);
}
}
}