Commit 99d3c8ef authored by 王雪伟's avatar 王雪伟

[提交人]:王雪伟

[提交简述] :上传Google
[实现方案] :删除UmShare AliPay
parent 4f723dc8
...@@ -63,12 +63,6 @@ ...@@ -63,12 +63,6 @@
android:resource="@xml/file_paths" /> android:resource="@xml/file_paths" />
</provider> </provider>
<activity
android:name="com.zhangxin.magicbox.wxapi.WXEntryActivity"
android:configChanges="keyboardHidden|orientation|screenSize"
android:exported="true"
android:launchMode="singleTask"
android:theme="@android:style/Theme.Translucent.NoTitleBar" />
<activity <activity
android:name="com.zhangxin.magicbox.wxapi.WXPayEntryActivity" android:name="com.zhangxin.magicbox.wxapi.WXPayEntryActivity"
android:exported="true" android:exported="true"
......
...@@ -10,7 +10,6 @@ import com.paypal.checkout.config.SettingsConfig ...@@ -10,7 +10,6 @@ import com.paypal.checkout.config.SettingsConfig
import com.paypal.checkout.createorder.CurrencyCode import com.paypal.checkout.createorder.CurrencyCode
import com.paypal.checkout.createorder.UserAction import com.paypal.checkout.createorder.UserAction
import com.umeng.commonsdk.UMConfigure import com.umeng.commonsdk.UMConfigure
import com.umeng.socialize.PlatformConfig
import com.zxhl.cms.AppContext import com.zxhl.cms.AppContext
import com.zxhl.cms.common.ApplicationAsLibrary import com.zxhl.cms.common.ApplicationAsLibrary
import com.zxhl.cms.common.Config import com.zxhl.cms.common.Config
...@@ -34,8 +33,6 @@ class Appli : Application() { ...@@ -34,8 +33,6 @@ class Appli : Application() {
UMConfigure.setLogEnabled(true) UMConfigure.setLogEnabled(true)
UMConfigure.init(this, UMConfigure.DEVICE_TYPE_PHONE, "") UMConfigure.init(this, UMConfigure.DEVICE_TYPE_PHONE, "")
Utils.checkDebugMode(this) Utils.checkDebugMode(this)
PlatformConfig.setWeixin(Constant.WX_APPID, Constant.WX_APPKEY)
PlatformConfig.setWXFileProvider("com.tencent.sample2.fileprovider");
Config.init(this) Config.init(this)
getOaid() getOaid()
initByteDance() initByteDance()
......
...@@ -18,7 +18,6 @@ import androidx.annotation.Nullable; ...@@ -18,7 +18,6 @@ import androidx.annotation.Nullable;
import androidx.fragment.app.Fragment; import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentTransaction; import androidx.fragment.app.FragmentTransaction;
import com.umeng.socialize.UMShareAPI;
import com.zhangxin.magicbox.R; import com.zhangxin.magicbox.R;
import com.umeng.analytics.MobclickAgent; import com.umeng.analytics.MobclickAgent;
import com.zxhl.cms.AppContext; import com.zxhl.cms.AppContext;
...@@ -349,7 +348,6 @@ public class MainActivity extends BaseActivity implements NavigationBottomView.N ...@@ -349,7 +348,6 @@ public class MainActivity extends BaseActivity implements NavigationBottomView.N
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) { protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
super.onActivityResult(requestCode, resultCode, data); super.onActivityResult(requestCode, resultCode, data);
try { try {
UMShareAPI.get(this).onActivityResult(requestCode, resultCode, data);
} catch (Exception e) { } catch (Exception e) {
} }
} }
......
package com.zhangxin.magicbox.wxapi;
/**
* Created by gaoleichao on 2019/6/11
*/
import android.util.Log;
import com.tencent.mm.opensdk.constants.ConstantsAPI;
import com.tencent.mm.opensdk.modelbase.BaseResp;
import com.tencent.mm.opensdk.modelbiz.WXLaunchMiniProgram;
import com.umeng.socialize.weixin.view.WXCallbackActivity;
import com.zxhl.cms.common.Constant;
import com.zxhl.cms.net.SettingPreference;
import com.zxhl.cms.utils.RxBus;
import com.zxhl.novel.utils.server.PayResultEntity;
public class WXEntryActivity extends WXCallbackActivity {
@Override
public void onResp(BaseResp resp) {
super.onResp(resp);
if (resp.getType() == ConstantsAPI.COMMAND_LAUNCH_WX_MINIPROGRAM) {
WXLaunchMiniProgram.Resp launchMiniProResp = (WXLaunchMiniProgram.Resp) resp;
String extraData =launchMiniProResp.extMsg; //对应小程序组件 <button open-type="launchApp"> 中的 app-parameter 属性
Log.e("MXL","从小程序返回"+extraData);
PayResultEntity entity = new PayResultEntity();
entity.setPaySuc(true);
entity.setTxt(SettingPreference.getOutTradeNo());
entity.setPayType(12);//微信支付类型
RxBus.get().post(Constant.PAY_RESULT,entity);
finish();
}
}
// @Override
// public void onResp(BaseResp resp) {
// String result;
// switch (resp.errCode) {
// case BaseResp.ErrCode.ERR_OK:
// result = "分享成功";
// break;
// case BaseResp.ErrCode.ERR_USER_CANCEL:
// result = "分享取消";
// break;
// default:
// result = "分享失败";
// break;
// }
// if (result != null) {
// Utils.showToast(AppliContext.get(),result);
// }
//
// super.onResp(resp);
// }
}
...@@ -106,8 +106,8 @@ dependencies { ...@@ -106,8 +106,8 @@ dependencies {
api 'com.badoo.mobile:android-weak-handler:1.1' api 'com.badoo.mobile:android-weak-handler:1.1'
api 'com.umeng.umsdk:common:9.4.2'// 必选 api 'com.umeng.umsdk:common:9.4.2'// 必选
api 'com.umeng.umsdk:asms:1.4.1'// 必选 api 'com.umeng.umsdk:asms:1.4.1'// 必选
api 'com.umeng.umsdk:share-core:7.1.6'//分享核心库,必选 // api 'com.umeng.umsdk:share-core:7.1.6'//分享核心库,必选
api 'com.umeng.umsdk:share-wx:7.1.6' //微信完整版 // api 'com.umeng.umsdk:share-wx:7.1.6' //微信完整版
//glide配置 //glide配置
// api "com.github.bumptech.glide:glide:${glide_need_version}" // api "com.github.bumptech.glide:glide:${glide_need_version}"
// api "com.github.bumptech.glide:annotations:${glide_need_version}" // api "com.github.bumptech.glide:annotations:${glide_need_version}"
...@@ -123,9 +123,10 @@ dependencies { ...@@ -123,9 +123,10 @@ dependencies {
api 'com.tencent.mm.opensdk:wechat-sdk-android-with-mta:5.3.1' api 'com.tencent.mm.opensdk:wechat-sdk-android-with-mta:5.3.1'
implementation 'androidx.appcompat:appcompat:1.2.0' implementation 'androidx.appcompat:appcompat:1.2.0'
implementation 'androidx.coordinatorlayout:coordinatorlayout:1.1.0' implementation 'androidx.coordinatorlayout:coordinatorlayout:1.1.0'
implementation(name: 'alipaySdk-15.6.4-20190611174341', ext: 'aar') // implementation(name: 'alipaySdk-15.6.4-20190611174341', ext: 'aar')
implementation 'androidx.constraintlayout:constraintlayout:2.0.4' implementation 'androidx.constraintlayout:constraintlayout:2.0.4'
//implementation 'androidx.coordinatorlayout:coordinatorlayout:1.1.0' //implementation 'androidx.coordinatorlayout:coordinatorlayout:1.1.0'
//GooglePay //GooglePay
implementation("com.android.billingclient:billing:4.1.0") implementation("com.android.billingclient:billing:4.1.0")
//PayPal支付 //PayPal支付
......
...@@ -2,24 +2,18 @@ package com.zxhl.cms.common.base; ...@@ -2,24 +2,18 @@ package com.zxhl.cms.common.base;
import android.content.Intent; import android.content.Intent;
import android.view.View; import android.view.View;
import com.umeng.socialize.PlatformConfig;
import com.umeng.socialize.UMAuthListener;
import com.umeng.socialize.UMShareAPI;
import com.umeng.socialize.UMShareConfig;
import com.umeng.socialize.bean.SHARE_MEDIA;
import com.zxhl.cms.R; import com.zxhl.cms.R;
import com.zxhl.cms.common.Constant; import com.zxhl.cms.common.Constant;
import com.zxhl.cms.widget.LoadingDialog; import com.zxhl.cms.widget.LoadingDialog;
import java.util.Map;
/** /**
* Created by gaoleichao on 2018/6/20. * Created by gaoleichao on 2018/6/20.
* 上传Google 已废弃
*/ */
public abstract class WxImpl extends BaseActivity implements UMAuthListener { public abstract class WxImpl extends BaseActivity{
protected UMShareAPI mShareAPI;
protected LoadingDialog mLoading; protected LoadingDialog mLoading;
@Override @Override
...@@ -30,7 +24,6 @@ public abstract class WxImpl extends BaseActivity implements UMAuthListener { ...@@ -30,7 +24,6 @@ public abstract class WxImpl extends BaseActivity implements UMAuthListener {
@Override @Override
public void init() { public void init() {
// PlatformConfig.setWeixin(Constant.Key.WX_LOGIN_APP_ID, Constant.Key.WX_LOGIN_KEY); // PlatformConfig.setWeixin(Constant.Key.WX_LOGIN_APP_ID, Constant.Key.WX_LOGIN_KEY);
mShareAPI = UMShareAPI.get(getApplicationContext());
mLoading = LoadingDialog.getLoadingDialog(this, getString(R.string.wait_ing), false, false); mLoading = LoadingDialog.getLoadingDialog(this, getString(R.string.wait_ing), false, false);
} }
...@@ -43,53 +36,13 @@ public abstract class WxImpl extends BaseActivity implements UMAuthListener { ...@@ -43,53 +36,13 @@ public abstract class WxImpl extends BaseActivity implements UMAuthListener {
protected void onWxLogin() { protected void onWxLogin() {
mLoading.setLoading(getString(R.string.login_ing)); mLoading.setLoading(getString(R.string.login_ing));
mLoading.show(); mLoading.show();
UMShareConfig config = new UMShareConfig();
config.isNeedAuthOnGetUserInfo(true);
mShareAPI.setShareConfig(config);
mShareAPI.getPlatformInfo(this, SHARE_MEDIA.WEIXIN, this);
} }
protected void onAuth() { protected void onAuth() {
mLoading.setLoading(getString(R.string.auth_ing)); mLoading.setLoading(getString(R.string.auth_ing));
mLoading.show(); mLoading.show();
UMShareConfig config = new UMShareConfig();
config.isNeedAuthOnGetUserInfo(true);
mShareAPI.getPlatformInfo(this, SHARE_MEDIA.WEIXIN, this);
}
@Override
public void onStart(SHARE_MEDIA share_media) {
}
@Override
public void onComplete(SHARE_MEDIA share_media, int i, Map<String, String> data) {
onWxSuccess(data.get("access_token"), data.get("openid"));
}
@Override
public void onError(SHARE_MEDIA share_media, int i, Throwable throwable) {
mLoading.setResult(false, "没有安装微信", 1000);
}
@Override
public void onCancel(SHARE_MEDIA share_media, int i) {
mLoading.setResult(false, "授权取消", 1000);
} }
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
try {
UMShareAPI.get(this).onActivityResult(requestCode, resultCode, data);
}catch (Exception ex){
}
}
public abstract void onWxSuccess(String token, String openid); public abstract void onWxSuccess(String token, String openid);
} }
...@@ -3,20 +3,17 @@ package com.zxhl.cms.pay ...@@ -3,20 +3,17 @@ package com.zxhl.cms.pay
import android.app.Activity import android.app.Activity
import android.text.TextUtils import android.text.TextUtils
import android.util.Log import android.util.Log
import com.zxhl.cms.AppContext
import com.zxhl.cms.net.ApiClient import com.zxhl.cms.net.ApiClient
import com.zxhl.cms.net.RxSchedulers import com.zxhl.cms.net.RxSchedulers
import com.zxhl.cms.net.SettingPreference import com.zxhl.cms.net.SettingPreference
import com.zxhl.cms.net.callback.BaseObserver import com.zxhl.cms.net.callback.BaseObserver
import com.zxhl.cms.net.model.box.AppInEntity import com.zxhl.cms.net.model.box.AppInEntity
import com.zxhl.cms.net.model.box.BoxInfoEntity
import com.zxhl.cms.net.model.box.VerifacationEntity import com.zxhl.cms.net.model.box.VerifacationEntity
import com.zxhl.cms.net.model.uc.AliPayEntity import com.zxhl.cms.net.model.uc.AliPayEntity
import com.zxhl.cms.net.model.uc.PayMinEntity import com.zxhl.cms.net.model.uc.PayMinEntity
import com.zxhl.cms.net.model.uc.PayVerifyEntity import com.zxhl.cms.net.model.uc.PayVerifyEntity
import com.zxhl.cms.net.model.uc.WeChatPayEntity import com.zxhl.cms.net.model.uc.WeChatPayEntity
import com.zxhl.cms.net.model.video.MemberEntity import com.zxhl.cms.net.model.video.MemberEntity
import com.zxhl.cms.pay.alipay.AlipayServer
import com.zxhl.cms.utils.EventUtils import com.zxhl.cms.utils.EventUtils
import com.zxhl.cms.utils.UserDataUtils import com.zxhl.cms.utils.UserDataUtils
import com.zxhl.cms.utils.WeChatPay import com.zxhl.cms.utils.WeChatPay
...@@ -135,7 +132,7 @@ class PayPresenter : PayContract.Presenter { ...@@ -135,7 +132,7 @@ class PayPresenter : PayContract.Presenter {
override fun onSuccess(result: AliPayEntity?) { override fun onSuccess(result: AliPayEntity?) {
if (result != null) { if (result != null) {
mView?.setOrderNo(result?.outTradeNo) mView?.setOrderNo(result?.outTradeNo)
AlipayServer.payV2(activity, result.wakeup!!) // AlipayServer.payV2(activity, result.wakeup!!)
mView?.requestOrderSuc() mView?.requestOrderSuc()
} else { } else {
EventUtils.onEvent("member_page_pay_get_order_fail") EventUtils.onEvent("member_page_pay_get_order_fail")
...@@ -210,7 +207,7 @@ class PayPresenter : PayContract.Presenter { ...@@ -210,7 +207,7 @@ class PayPresenter : PayContract.Presenter {
override fun onSuccess(result: AliPayEntity?) { override fun onSuccess(result: AliPayEntity?) {
if (result != null) { if (result != null) {
mView?.setOrderNo(result?.outTradeNo) mView?.setOrderNo(result?.outTradeNo)
AlipayServer.payV2(activity, result.wakeup!!) // AlipayServer.payV2(activity, result.wakeup!!)
mView?.requestOrderSuc() mView?.requestOrderSuc()
} else { } else {
EventUtils.onEvent("member_page_pay_get_order_fail") EventUtils.onEvent("member_page_pay_get_order_fail")
......
package com.zxhl.cms.pay.alipay
import android.Manifest
import android.annotation.SuppressLint
import android.app.Activity
import android.content.pm.PackageManager
import android.os.Handler
import android.os.Message
import android.text.TextUtils
import android.util.Log
import androidx.core.app.ActivityCompat
import androidx.core.content.ContextCompat
import com.alipay.sdk.app.PayTask
import com.zxhl.cms.common.Constant
import com.zxhl.cms.utils.RxBus
import com.zxhl.novel.utils.server.PayResultEntity
/**
* 支付宝支付
* @author lbm
*
*/
object AlipayServer {
private val SDK_PAY_FLAG = 1
private val SDK_AUTH_FLAG = 2
// var activity: Activity? = null
/**
* 获取权限使用的 RequestCode
*/
private val PERMISSIONS_REQUEST_CODE = 1002
@SuppressLint("HandlerLeak")
private val mHandler = object : Handler() {
override fun handleMessage(msg: Message) {
when (msg.what) {
SDK_PAY_FLAG -> {
val payResult = PayResult(msg.obj as Map<String, String>)
println("payResult:$payResult")
/**
* payResult:resultStatus={9000};memo={};result={{"alipay_trade_app_pay_response":
* {"code":"10000","msg":"Success","app_id":"2019070565716816","auth_app_id":"2019070565716816",
* "charset":"utf-8","timestamp":"2019-07-09 20:46:00","out_trade_no":"1148573956964810752","
* total_amount":"0.01","trade_no":"2019070922001462921044512553","seller_id":"2088821704449704"},
* "sign":"JtMmew6Ew0ZRHd+FmGuHhLGDEgYaklFCAMp8RZX2/e8qhps/p51sBL4qtr1fMYWeUV5pHK/KyTVFs8C4g/ElUNCFr
* NZ8di2q6kCyNDLIMpaykQrdJIIjQTPHv2xbeCkGP3CWXkhZL6yVw4A7m8taxmiJ1jGL+vOlGUsWxvtCPXGCxFWn69g76T/mj2
* GhQc5F8E11iL2fqFYQ3rXsliUd4lOoylp4rH4BwldFLvmFouuW95awtoZGBmmtARzm3VMVPZY8b4Llkz8v/8BolLtN0oR47OjO4pI
* s92Egp78VoeNCT0Tb8OyLUmYTu9AP5mmxci808eMQ/KmSII5EXNtMHQ==","sign_type":"RSA2"}}
*/
val resultInfo = payResult.result// 同步返回需要验证的信息
val resultStatus = payResult.resultStatus
// 判断resultStatus 为9000则代表支付成功
if (TextUtils.equals(resultStatus, "9000")) {
// 该笔订单是否真实支付成功,需要依赖服务端的异步通知。
try {
// var obj = JSONObject(resultInfo)
// var tradeOrder = obj.getString("out_trade_no")
// var order = obj.getString("trade_no")
// var authAppId = obj.getString("auth_app_id")
result(true,resultInfo)
}catch (e:Exception){
result(false,resultStatus)
}
} else {
// 该笔订单真实的支付结果,需要依赖服务端的异步通知。
result(false,resultStatus)
}
}
SDK_AUTH_FLAG -> {
val authResult = AuthResult(msg.obj as Map<String, String>, true)
val resultStatus = authResult.resultStatus
// 判断resultStatus 为“9000”且result_code
// 为“200”则代表授权成功,具体状态码代表含义可参考授权接口文档
if (TextUtils.equals(resultStatus, "9000") && TextUtils.equals(authResult.resultCode, "200")) {
// 获取alipay_open_id,调支付时作为参数extern_token 的value
// 传入,则支付账户为该授权账户
// showAlert(PayDemoActivity.this, getString(R.string.auth_success) + authResult);
println("resultStatus")
} else {
// 其他状态值则为授权失败
// showAlert(PayDemoActivity.this, getString(R.string.auth_failed) + authResult);
}
}
else -> {
result(false,msg?.toString())
}
}
}
}
fun result(isPaysuc:Boolean,txt:String){
var entity = PayResultEntity()
entity.isPaySuc = isPaysuc
entity.txt = txt
entity.payType = 1//支付宝支付类型
RxBus.get().post(Constant.PAY_RESULT,entity)
// verifyPay(txt,1)
}
/**
* 检查支付宝 SDK 所需的权限,并在必要的时候动态获取。
* 在 targetSDK = 23 以上,READ_PHONE_STATE 和 WRITE_EXTERNAL_STORAGE 权限需要应用在运行时获取。
* 如果接入支付宝 SDK 的应用 targetSdk 在 23 以下,可以省略这个步骤。
*/
fun requestPermission(activity: Activity) {
// Here, thisActivity is the current activity
if (ContextCompat.checkSelfPermission(activity, Manifest.permission.READ_PHONE_STATE) != PackageManager.PERMISSION_GRANTED || ContextCompat.checkSelfPermission(activity, Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) {
ActivityCompat.requestPermissions(activity,
arrayOf(Manifest.permission.READ_PHONE_STATE, Manifest.permission.WRITE_EXTERNAL_STORAGE), PERMISSIONS_REQUEST_CODE)
} else {
// showToast(this, getString(R.string.permission_already_granted));
}
}
/**
* 权限获取回调
*/
fun onRequestPermissionsResult(activity: Activity, requestCode: Int, permissions: Array<String>, grantResults: IntArray) {
when (requestCode) {
PERMISSIONS_REQUEST_CODE -> {
// 用户取消了权限弹窗
if (grantResults.size == 0) {
// showToast(this, getString(R.string.permission_rejected));
return
}
// 用户拒绝了某些权限
for (x in grantResults) {
if (x == PackageManager.PERMISSION_DENIED) {
// showToast(this, getString(R.string.permission_rejected));
return
}
}
// 所需的权限均正常获取
// showToast(this, getString(R.string.permission_granted));
}
}
}
/**
* 支付宝支付
*/
fun payV2(activity: Activity?, url: String) {
// this.activity = activity
val payRunnable = Runnable {
val alipay = PayTask(activity)
val result = alipay.payV2(url, true)
Log.i("msp", result.toString())
val msg = Message()
msg.what = SDK_PAY_FLAG
msg.obj = result
mHandler.sendMessage(msg)
}
// 必须异步调用
val payThread = Thread(payRunnable)
payThread.start()
}
}
package com.zxhl.cms.pay.alipay; import java.util.Map; import android.text.TextUtils; public class AuthResult { private String resultStatus; private String result; private String memo; private String resultCode; private String authCode; private String alipayOpenId; public AuthResult(Map<String, String> rawResult, boolean removeBrackets) { if (rawResult == null) { return; } for (String key : rawResult.keySet()) { if (TextUtils.equals(key, "resultStatus")) { resultStatus = rawResult.get(key); } else if (TextUtils.equals(key, "result")) { result = rawResult.get(key); } else if (TextUtils.equals(key, "memo")) { memo = rawResult.get(key); } } String[] resultValue = result.split("&"); for (String value : resultValue) { if (value.startsWith("alipay_open_id")) { alipayOpenId = removeBrackets(getValue("alipay_open_id=", value), removeBrackets); continue; } if (value.startsWith("auth_code")) { authCode = removeBrackets(getValue("auth_code=", value), removeBrackets); continue; } if (value.startsWith("result_code")) { resultCode = removeBrackets(getValue("result_code=", value), removeBrackets); continue; } } } private String removeBrackets(String str, boolean remove) { if (remove) { if (!TextUtils.isEmpty(str)) { if (str.startsWith("\"")) { str = str.replaceFirst("\"", ""); } if (str.endsWith("\"")) { str = str.substring(0, str.length() - 1); } } } return str; } @Override public String toString() { return "authCode={" + authCode + "}; resultStatus={" + resultStatus + "}; memo={" + memo + "}; result={" + result + "}"; } private String getValue(String header, String data) { return data.substring(header.length(), data.length()); } /** * @return the resultStatus */ public String getResultStatus() { return resultStatus; } /** * @return the memo */ public String getMemo() { return memo; } /** * @return the result */ public String getResult() { return result; } /** * @return the resultCode */ public String getResultCode() { return resultCode; } /** * @return the authCode */ public String getAuthCode() { return authCode; } /** * @return the alipayOpenId */ public String getAlipayOpenId() { return alipayOpenId; }}
\ No newline at end of file
package com.zxhl.cms.pay.alipay; import java.util.Map; import android.text.TextUtils; public class PayResult { private String resultStatus; private String result; private String memo; public PayResult(Map<String, String> rawResult) { if (rawResult == null) { return; } for (String key : rawResult.keySet()) { if (TextUtils.equals(key, "resultStatus")) { resultStatus = rawResult.get(key); } else if (TextUtils.equals(key, "result")) { result = rawResult.get(key); } else if (TextUtils.equals(key, "memo")) { memo = rawResult.get(key); } } } @Override public String toString() { return "resultStatus={" + resultStatus + "};memo={" + memo + "};result={" + result + "}"; } /** * @return the resultStatus */ public String getResultStatus() { return resultStatus; } /** * @return the memo */ public String getMemo() { return memo; } /** * @return the result */ public String getResult() { return result; }}
\ No newline at end of file
package com.zxhl.cms.umeng;
import android.app.Activity;
import android.text.TextUtils;
import android.widget.Toast;
import com.zxhl.cms.common.Constant;
import com.zxhl.cms.net.ApiClient;
import com.zxhl.cms.net.SettingPreference;
import com.zxhl.cms.net.callback.BaseObserver;
import com.zxhl.cms.net.model.uc.CoinEntity;
import com.zxhl.cms.umeng.callback.UmengShareCallback;
import com.zxhl.cms.utils.RxBus;
import com.zxhl.cms.utils.Utils;
import com.zxhl.cms.utils.cache.UserCacheUtils;
import com.umeng.socialize.PlatformConfig;
import com.umeng.socialize.ShareAction;
import com.umeng.socialize.UMShareAPI;
import com.umeng.socialize.bean.SHARE_MEDIA;
import com.umeng.socialize.media.UMImage;
import com.umeng.socialize.media.UMWeb;
import io.reactivex.schedulers.Schedulers;
/**
* Created by gaoleichao on 2018/5/7.
*/
public class UmengShareUtils {
public static String type = "";
public static final int NEWS_SHARE = 1;
public static final int INVITE_SHARE = 2;
public static final int AWAKE_SHARE = 3;
public static final int AD_SHARE = 4;
public static String uid;
public static String sid;
public static int mShareType;
public static void toNewsShare(Activity activity) {
}
public static void toShare(Activity activity, int share_type, SHARE_MEDIA share_media, String url, String title, String id, String icon) {
toShare(activity, share_type, share_media, url, title, id, icon, "");
}
public static void toShare(Activity activity, int share_type, SHARE_MEDIA share_media, String url, String title, String id, String icon, String desc) {
PlatformConfig.setWeixin(Constant.Key.WX_SHARE_APP_ID, Constant.Key.WX_SHARE_KEY);
if (share_media == null || TextUtils.isEmpty(url) || TextUtils.isEmpty(title)) {
Toast.makeText(activity, "请稍后,正在准备分享素材;", Toast.LENGTH_SHORT).show();
RxBus.get().post(Constant.UPDATE_SHAREDATA, true);
return;
}
mShareType = share_type;
uid = id;
if (share_media == SHARE_MEDIA.QQ) {
if (!UMShareAPI.get(activity).isInstall(activity, SHARE_MEDIA.QQ)) {
Utils.showToast(activity, "未安装QQ");
return;
}
if (TextUtils.isEmpty(Constant.Key.QQ_SHARE_APP_ID)) {
Utils.showToast(activity, "暂不支持qq分享");
return;
}
sid = "275";
type = "6";
} else if (share_media == SHARE_MEDIA.QZONE) {
if (!UMShareAPI.get(activity).isInstall(activity, SHARE_MEDIA.QQ)) {
Utils.showToast(activity, "未安装QQ");
return;
}
if (TextUtils.isEmpty(Constant.Key.QQ_SHARE_APP_ID)) {
Utils.showToast(activity, "暂不支持qq分享");
return;
}
sid = "276";
type = "5";
} else if (share_media == SHARE_MEDIA.WEIXIN_CIRCLE) {
if (!UMShareAPI.get(activity).isInstall(activity, SHARE_MEDIA.WEIXIN)) {
Utils.showToast(activity, "未安装微信");
return;
}
sid = "274";
type = "4";
} else if (share_media == SHARE_MEDIA.WEIXIN) {
if (!UMShareAPI.get(activity).isInstall(activity, SHARE_MEDIA.WEIXIN)) {
Utils.showToast(activity, "未安装微信");
return;
}
sid = "277";
type = "7";
}
ShareAction shareAction = new ShareAction(activity).setPlatform(share_media);// 传入平台
UMImage image;// 网络图片
if (share_type == UmengShareUtils.NEWS_SHARE && !TextUtils.isEmpty(UserCacheUtils.getMiniProgramImageUrl())) {
image = new UMImage(activity, icon);
shareAction.withMedia(image).setCallback(callback).share();
} else if (share_type == UmengShareUtils.INVITE_SHARE && !TextUtils.isEmpty(UserCacheUtils.getInviteImageUrl())) {
image = new UMImage(activity, UserCacheUtils.getInviteImageUrl());
shareAction.withMedia(image).setCallback(callback).share();
} else {
image = new UMImage(activity, icon);
UMWeb umWeb = new UMWeb(url);
if (share_media == SHARE_MEDIA.WEIXIN_CIRCLE) {
umWeb.setTitle(title);
} else {
umWeb.setTitle(title);
if (share_type == UmengShareUtils.AD_SHARE) {
umWeb.setDescription(desc);
} else {
umWeb.setDescription(SettingPreference.getShareTitle());
}
}
umWeb.setThumb(image);
shareAction.withMedia(umWeb).setCallback(callback).share();
}
}
public static UmengShareCallback callback = new UmengShareCallback() {
@Override
public void onSuccess(SHARE_MEDIA share_media) {
if (mShareType == INVITE_SHARE) {
saveTask();
}
}
@Override
public void onCancel() {
if (TextUtils.equals(type, "4") || TextUtils.equals(type, "7")) {
return;
}
if (mShareType == INVITE_SHARE) {
saveTask();
}
}
@Override
public void onFailure() {
}
};
public static void saveTask() {
if (TextUtils.isEmpty(type)) {
return;
}
if (TextUtils.equals("4", uid)) {
return;
}
}
}
package com.zxhl.cms.umeng.callback;
import com.umeng.socialize.UMShareListener;
import com.umeng.socialize.bean.SHARE_MEDIA;
/**
* Created by gaoleichao on 2018/5/7.
*/
public abstract class UmengShareCallback implements UMShareListener {
@Override
public void onStart(SHARE_MEDIA share_media) {
}
@Override
public void onResult(SHARE_MEDIA share_media) {
onSuccess(share_media);
}
@Override
public void onError(SHARE_MEDIA share_media, Throwable throwable) {
onFailure();
}
@Override
public void onCancel(SHARE_MEDIA share_media) {
onCancel();
}
public abstract void onSuccess(SHARE_MEDIA share_media);
public abstract void onCancel();
public abstract void onFailure();
}
...@@ -11,11 +11,6 @@ import cn.sharesdk.framework.ShareSDK ...@@ -11,11 +11,6 @@ import cn.sharesdk.framework.ShareSDK
import cn.sharesdk.google.GooglePlus import cn.sharesdk.google.GooglePlus
import com.google.gson.Gson import com.google.gson.Gson
import com.google.gson.JsonObject import com.google.gson.JsonObject
import com.mob.MobSDK
import com.umeng.socialize.UMAuthListener
import com.umeng.socialize.UMShareAPI
import com.umeng.socialize.UMShareListener
import com.umeng.socialize.bean.SHARE_MEDIA
import com.zxhl.cms.AppContext import com.zxhl.cms.AppContext
import com.zxhl.cms.net.ApiClient import com.zxhl.cms.net.ApiClient
import com.zxhl.cms.net.RxSchedulers import com.zxhl.cms.net.RxSchedulers
...@@ -65,37 +60,37 @@ class WeChatUtils { ...@@ -65,37 +60,37 @@ class WeChatUtils {
Log.e("MXL", "微信登录") Log.e("MXL", "微信登录")
lottery = str lottery = str
UMShareAPI.get(activity) // UMShareAPI.get(activity)
.getPlatformInfo(activity, SHARE_MEDIA.WEIXIN, object : // .getPlatformInfo(activity, SHARE_MEDIA.WEIXIN, object :
UMAuthListener { // UMAuthListener {
override fun onStart(share_media: SHARE_MEDIA) {} // override fun onStart(share_media: SHARE_MEDIA) {}
//
override fun onComplete( // override fun onComplete(
share_media: SHARE_MEDIA, // share_media: SHARE_MEDIA,
i: Int, // i: Int,
map: Map<String, String> // map: Map<String, String>
) { // ) {
val uid = map["uid"] // val uid = map["uid"]
val access_token = map["access_token"] // val access_token = map["access_token"]
val openid = map["openid"] //微博没有 // val openid = map["openid"] //微博没有
bindWx(access_token.toString(), openid.toString(), str) // bindWx(access_token.toString(), openid.toString(), str)
} // }
//
override fun onError(share_media: SHARE_MEDIA, i: Int, throwable: Throwable) { // override fun onError(share_media: SHARE_MEDIA, i: Int, throwable: Throwable) {
Log.e("MXL", "i" + i + throwable.message) // Log.e("MXL", "i" + i + throwable.message)
callBack.loginSuccess(lottery) // callBack.loginSuccess(lottery)
Toast.makeText( // Toast.makeText(
AppContext.get(), // AppContext.get(),
"登录出错,请稍后重试" + i + throwable.message, // "登录出错,请稍后重试" + i + throwable.message,
Toast.LENGTH_SHORT // Toast.LENGTH_SHORT
).show() // ).show()
} // }
//
override fun onCancel(share_media: SHARE_MEDIA, i: Int) { // override fun onCancel(share_media: SHARE_MEDIA, i: Int) {
callBack.loginSuccess(lottery) // callBack.loginSuccess(lottery)
Toast.makeText(AppContext.get(), "登录已取消", Toast.LENGTH_SHORT).show() // Toast.makeText(AppContext.get(), "登录已取消", Toast.LENGTH_SHORT).show()
} // }
}) // })
} }
fun getShareContent(context: Context?) { fun getShareContent(context: Context?) {
...@@ -158,43 +153,6 @@ class WeChatUtils { ...@@ -158,43 +153,6 @@ class WeChatUtils {
} }
private val shareListener: UMShareListener =
object : UMShareListener {
/**
* @descrption 分享开始的回调
* @param platform 平台类型
*/
override fun onStart(platform: SHARE_MEDIA) {}
/**
* @descrption 分享成功的回调
* @param platform 平台类型
*/
override fun onResult(platform: SHARE_MEDIA) {
//toast吐司
Toast.makeText(AppContext.get(), "分享成功", Toast.LENGTH_SHORT).show()
}
/**
* @descrption 分享失败的回调
* @param platform 平台类型
* @param t 错误原因
*/
override fun onError(
platform: SHARE_MEDIA,
t: Throwable
) {
Toast.makeText(AppContext.get(), "分享失败", Toast.LENGTH_SHORT).show()
}
/**
* @descrption 分享取消的回调
* @param platform 平台类型
*/
override fun onCancel(platform: SHARE_MEDIA) {
Utils.showToast(AppContext.get(), "分享取消")
}
}
fun FackBooklogin() { fun FackBooklogin() {
val plat = ShareSDK.getPlatform(Facebook.NAME) val plat = ShareSDK.getPlatform(Facebook.NAME)
......
...@@ -19,7 +19,6 @@ import androidx.viewpager.widget.ViewPager ...@@ -19,7 +19,6 @@ import androidx.viewpager.widget.ViewPager
import com.bumptech.glide.Glide import com.bumptech.glide.Glide
import com.bumptech.glide.load.resource.bitmap.CircleCrop import com.bumptech.glide.load.resource.bitmap.CircleCrop
import com.bumptech.glide.request.RequestOptions import com.bumptech.glide.request.RequestOptions
import com.umeng.socialize.UMShareAPI
import com.zxhl.cms.AppContext import com.zxhl.cms.AppContext
import com.zxhl.cms.common.Constant import com.zxhl.cms.common.Constant
import com.zxhl.cms.common.NetConfig import com.zxhl.cms.common.NetConfig
...@@ -424,7 +423,6 @@ class GoodsDetailActivity : BaseActivity(), GoodsDetailContract.View, ...@@ -424,7 +423,6 @@ class GoodsDetailActivity : BaseActivity(), GoodsDetailContract.View,
override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
super.onActivityResult(requestCode, resultCode, data) super.onActivityResult(requestCode, resultCode, data)
try { try {
UMShareAPI.get(this).onActivityResult(requestCode, resultCode, data)
} catch (ex: Exception) { } catch (ex: Exception) {
} }
} }
......
...@@ -13,7 +13,6 @@ import android.view.View ...@@ -13,7 +13,6 @@ import android.view.View
import androidx.recyclerview.widget.GridLayoutManager import androidx.recyclerview.widget.GridLayoutManager
import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.LinearLayoutManager
import androidx.viewpager.widget.ViewPager import androidx.viewpager.widget.ViewPager
import com.umeng.socialize.UMShareAPI
import com.zxhl.cms.AppContext import com.zxhl.cms.AppContext
import com.zxhl.cms.common.Constant import com.zxhl.cms.common.Constant
import com.zxhl.cms.common.base.BaseActivity import com.zxhl.cms.common.base.BaseActivity
...@@ -457,7 +456,6 @@ class NewBoxGoodsDetailActivity : BaseActivity(), GoodsDetailContract.View, ...@@ -457,7 +456,6 @@ class NewBoxGoodsDetailActivity : BaseActivity(), GoodsDetailContract.View,
override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
super.onActivityResult(requestCode, resultCode, data) super.onActivityResult(requestCode, resultCode, data)
try { try {
UMShareAPI.get(this).onActivityResult(requestCode, resultCode, data)
} catch (ex: Exception) { } catch (ex: Exception) {
} }
} }
......
...@@ -7,7 +7,6 @@ import android.view.View ...@@ -7,7 +7,6 @@ import android.view.View
import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.LinearLayoutManager
import androidx.recyclerview.widget.RecyclerView import androidx.recyclerview.widget.RecyclerView
import androidx.recyclerview.widget.SimpleItemAnimator import androidx.recyclerview.widget.SimpleItemAnimator
import com.umeng.socialize.UMShareAPI
import com.zxhl.cms.common.Constant import com.zxhl.cms.common.Constant
import com.zxhl.cms.common.base.BaseFragment import com.zxhl.cms.common.base.BaseFragment
import com.zxhl.cms.net.SettingPreference import com.zxhl.cms.net.SettingPreference
...@@ -345,7 +344,6 @@ class RecycledFragment : BaseFragment(), WareHouseContract.View, ...@@ -345,7 +344,6 @@ class RecycledFragment : BaseFragment(), WareHouseContract.View,
override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
super.onActivityResult(requestCode, resultCode, data) super.onActivityResult(requestCode, resultCode, data)
try { try {
UMShareAPI.get(mActivity).onActivityResult(requestCode, resultCode, data)
} catch (ex: Exception) { } catch (ex: Exception) {
} }
} }
......
...@@ -7,7 +7,6 @@ import android.view.View ...@@ -7,7 +7,6 @@ import android.view.View
import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.LinearLayoutManager
import androidx.recyclerview.widget.RecyclerView import androidx.recyclerview.widget.RecyclerView
import androidx.recyclerview.widget.SimpleItemAnimator import androidx.recyclerview.widget.SimpleItemAnimator
import com.umeng.socialize.UMShareAPI
import com.zxhl.cms.common.Constant import com.zxhl.cms.common.Constant
import com.zxhl.cms.common.base.BaseFragment import com.zxhl.cms.common.base.BaseFragment
import com.zxhl.cms.net.SettingPreference import com.zxhl.cms.net.SettingPreference
...@@ -381,7 +380,6 @@ class TobePickUpFragment : BaseFragment(), WareHouseContract.View, ...@@ -381,7 +380,6 @@ class TobePickUpFragment : BaseFragment(), WareHouseContract.View,
override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
super.onActivityResult(requestCode, resultCode, data) super.onActivityResult(requestCode, resultCode, data)
try { try {
UMShareAPI.get(mActivity).onActivityResult(requestCode, resultCode, data)
} catch (ex: Exception) { } catch (ex: Exception) {
} }
} }
......
...@@ -13,7 +13,6 @@ import android.widget.ImageView ...@@ -13,7 +13,6 @@ import android.widget.ImageView
import android.widget.LinearLayout import android.widget.LinearLayout
import android.widget.TextView import android.widget.TextView
import androidx.core.content.ContextCompat import androidx.core.content.ContextCompat
import com.umeng.socialize.utils.DeviceConfigInternal.context
import com.zxhl.cms.AppContext import com.zxhl.cms.AppContext
import com.zxhl.cms.net.SettingPreference import com.zxhl.cms.net.SettingPreference
import com.zxhl.cms.utils.EventUtils import com.zxhl.cms.utils.EventUtils
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment