33
This commit is contained in:
@@ -0,0 +1,379 @@
|
||||
package cn.shangyu.gdxzExpert.activity;
|
||||
|
||||
import android.app.AlertDialog;
|
||||
import android.graphics.Color;
|
||||
import android.text.Html;
|
||||
import android.util.Log;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.Window;
|
||||
import android.view.WindowManager;
|
||||
import android.widget.Button;
|
||||
import android.widget.RelativeLayout;
|
||||
import android.widget.TextView;
|
||||
|
||||
import com.gyf.immersionbar.ImmersionBar;
|
||||
import com.umeng.socialize.UMAuthListener;
|
||||
import com.umeng.socialize.UMShareAPI;
|
||||
import com.umeng.socialize.bean.SHARE_MEDIA;
|
||||
|
||||
import org.json.JSONException;
|
||||
import org.json.JSONObject;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
import cn.shangyu.gdxzExpert.R;
|
||||
import cn.shangyu.gdxzExpert.base.BaseActivity;
|
||||
import cn.shangyu.gdxzExpert.http.OnCallBackFromNet;
|
||||
import cn.shangyu.gdxzExpert.ui.CustomProgressDialog;
|
||||
import cn.shangyu.gdxzExpert.utils.CommonUtil;
|
||||
import cn.shangyu.gdxzExpert.utils.SharePrefUtil;
|
||||
import cn.shangyu.gdxzExpert.utils.StringUtil;
|
||||
import cn.shangyu.gdxzExpert.utils.ToastUtil;
|
||||
import cn.shangyu.gdxzExpert.utils.UIUtils;
|
||||
import cn.shangyu.gdxzExpert.utils.Url;
|
||||
import cn.shangyu.gdxzExpert.widget.LoadingPage;
|
||||
|
||||
//import cn.shangyu.gdxzExpert.utils.SharePrefUtil;
|
||||
|
||||
public class BindWeChatActivity extends BaseActivity implements OnCallBackFromNet {
|
||||
|
||||
private BindWeChatActivity ctx;
|
||||
private String openid;
|
||||
private String unionid ="";
|
||||
private static final int ISBOUNDWECHATBYUUID = 200;
|
||||
private static final int ADDWECHATEXPERT = 201;
|
||||
private static final int DELWECHATEXPERT = 202;
|
||||
private TextView bind_state;
|
||||
private TextView we_name;
|
||||
private CustomProgressDialog pd;
|
||||
private AlertDialog dialog4;//提示解绑
|
||||
private TextView tip_tv;
|
||||
@Override
|
||||
public void setTitle() {
|
||||
|
||||
ctx=this;
|
||||
// layout_top.setBackgroundColor(BindWeChatActivity.this.getResources().getColor(
|
||||
// R.color.top_bg));
|
||||
top_title.setText("微信关联");
|
||||
if(CommonUtil.BigModule())
|
||||
{
|
||||
top_title.setTextSize(23);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public View onCreateSuccessedView() {
|
||||
ImmersionBar.with(this).keyboardEnable(true).statusBarDarkFont(true).titleBar(mToolbar).init();
|
||||
View view;
|
||||
if(CommonUtil.BigModule())
|
||||
{
|
||||
view= UIUtils.inflate(R.layout.activity_bind_we_chat_big);
|
||||
}
|
||||
else
|
||||
{
|
||||
view= UIUtils.inflate(R.layout.activity_bind_we_chat);
|
||||
}
|
||||
bind_state=view.findViewById(R.id.bind_state);
|
||||
we_name=view.findViewById(R.id.we_name);
|
||||
tip_tv=view.findViewById(R.id.tip_tv);
|
||||
bind_state.setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
if ("绑定".equals(bind_state.getText().toString())){
|
||||
BindWX();
|
||||
}
|
||||
else {
|
||||
|
||||
LayoutInflater inflater = LayoutInflater.from(BindWeChatActivity.this);
|
||||
RelativeLayout layout = (RelativeLayout) inflater.inflate(R.layout.dialog_notification, null);
|
||||
dialog4 = new AlertDialog.Builder(
|
||||
BindWeChatActivity.this).create();
|
||||
TextView tv_tishi = layout.findViewById(R.id.tv_tishi);
|
||||
tv_tishi.setText("您确定要解绑微信吗?");
|
||||
Button btn_sure = (Button) layout.findViewById(R.id.btn_sure);
|
||||
Button btn_cancel = (Button) layout.findViewById(R.id.btn_cancel);
|
||||
dialog4.show();
|
||||
Window window =dialog4.getWindow();
|
||||
// window.setGravity(Gravity.CENTER);
|
||||
WindowManager.LayoutParams layoutParams = window.getAttributes();
|
||||
layoutParams.width = WindowManager.LayoutParams.MATCH_PARENT;
|
||||
layoutParams.height = WindowManager.LayoutParams.WRAP_CONTENT;
|
||||
window.setAttributes(layoutParams);
|
||||
|
||||
dialog4.getWindow().setContentView(layout);
|
||||
|
||||
btn_cancel.setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
// TODO Auto-generated method stub
|
||||
dialog4.dismiss();
|
||||
|
||||
}
|
||||
});
|
||||
btn_sure.setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
|
||||
dialog4.dismiss();
|
||||
UnBindWX();
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
});
|
||||
// if(SharePrefUtil.getString(ctx, "bind_state", "绑定").equals("绑定"))
|
||||
// {
|
||||
// bind_state.setText("绑定");
|
||||
// bind_state.setTextColor(Color.WHITE);
|
||||
// bind_state.setBackground(getResources().getDrawable(R.drawable.btn_all_wecchat));
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// bind_state.setText("解绑");
|
||||
// bind_state.setTextColor(getResources().getColor(R.color.c999999));
|
||||
// bind_state.setBackground(getResources().getDrawable(R.drawable.btn_all_nine));
|
||||
// }
|
||||
if (!UIUtils.isNetWorkConnected(ctx)) {
|
||||
ToastUtil.showToast("网络不可用,请连接网络再试");
|
||||
}
|
||||
String str7 = "<font color=\"#000000\">操作说明:</font><br><font color=\"#999999\">1.肝胆相照注册账号与微信绑定,肝胆相照相关直播、视频无忧随心看</font>" +
|
||||
"<br><font color=\"#999999\">2.仅需操作一次,后续通过微信观看直播、视频无需额外操作,立即进入</font>" +
|
||||
"<br><br><font color=\"#999999\">若您有任何疑问或需要我们协助,请与您的小助手联系或直接微信联系</font>" +
|
||||
"<font color=\"#FC1A1A\">igandan1000</font>";
|
||||
tip_tv.setText(Html.fromHtml(str7));
|
||||
pd = new CustomProgressDialog(this, "请稍候");
|
||||
pd.show();
|
||||
isBoundWechatByUuid();
|
||||
return view;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onResume() {
|
||||
super.onResume();
|
||||
needreportPage("微信关联");
|
||||
}
|
||||
|
||||
@Override
|
||||
public LoadingPage.ResultState onLoad() {
|
||||
return LoadingPage.ResultState.STATE_SUCCESSED;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void processClick(View v) {
|
||||
|
||||
}
|
||||
//判断用户是否绑定过微信
|
||||
private void isBoundWechatByUuid() {
|
||||
Map<String,String> map = new HashMap<>();
|
||||
|
||||
sendJsonPostParamtoNetSignMD5(Url.isBoundWechatByUuid,map,ISBOUNDWECHATBYUUID,this);
|
||||
}
|
||||
private UMAuthListener umAuthListener = new UMAuthListener() {
|
||||
@Override
|
||||
public void onStart(SHARE_MEDIA platform) {
|
||||
//授权开始的回调
|
||||
}
|
||||
@Override
|
||||
public void onComplete(SHARE_MEDIA platform, int action, Map<String, String> data) {
|
||||
// Toast.makeText(getApplicationContext(), "Authorize succeed", Toast.LENGTH_SHORT).show();
|
||||
|
||||
if(data.get("name")!=null)
|
||||
{
|
||||
data.put("nickname",data.get("name").replaceAll(" +",""));
|
||||
data.put("screen_name",data.get("name").replaceAll(" +",""));
|
||||
data.put("name",data.get("name").replaceAll(" +",""));
|
||||
}
|
||||
|
||||
openid = data.get("openid");
|
||||
|
||||
|
||||
unionid = data.get("unionid");
|
||||
if(!StringUtil.isEmpty(unionid))
|
||||
SharePrefUtil.saveString(BindWeChatActivity.this,"unionid_wechat",unionid);
|
||||
Log.d("gdxzwe","参数"+data.toString());
|
||||
|
||||
// String gender = data.get("gender");
|
||||
// String iconurl = data.get("iconurl");
|
||||
// String city = data.get("city");
|
||||
// String prvinice = data.get("prvinice");
|
||||
// String country = data.get("country");
|
||||
// String privilege = data.get("privilege");
|
||||
|
||||
// Log.d("gdxzwe","name = "+name);
|
||||
// LogUtil.i("openid = "+openid);
|
||||
// LogUtil.i("gender = "+gender);
|
||||
// LogUtil.i("iconurl = "+iconurl);
|
||||
// LogUtil.i("city = "+city);
|
||||
// LogUtil.i("prvinice = "+prvinice);
|
||||
// LogUtil.i("country = "+country);
|
||||
// LogUtil.i("data = "+data.toString());
|
||||
// {country=中国,
|
||||
// unionid=oCwO1wOWbP4RqmG7m5KnSdhLnyzg,
|
||||
// gender=男,
|
||||
// city=,
|
||||
// openid=odr10s9qElmuO4O0GVE_i7RXuJfU,
|
||||
// language=zh_CN,
|
||||
// profile_image_url=http://thirdwx.qlogo.cn/mmopen/vi_32/t7KAzibDicb1pRq7VvLct5XGT7SJmTMlawIO9teLSqad0VVljEC1l9HMcibyWKxy07DJlbHkj620hcD6W8d5NXykg/132,
|
||||
// accessToken=36_YNuIDu65cbK53Eat1CDec0IX8kGRTZePWZZvcEC-7clvoy2SC1qXVAf99RGlX3QyGzqy9sDFGJkyLB1R4YcaRn5f6EFWK6QFAVRQ5LlXg9M,
|
||||
// access_token=36_YNuIDu65cbK53Eat1CDec0IX8kGRTZePWZZvcEC-7clvoy2SC1qXVAf99RGlX3QyGzqy9sDFGJkyLB1R4YcaRn5f6EFWK6QFAVRQ5LlXg9M,
|
||||
// uid=oCwO1wOWbP4RqmG7m5KnSdhLnyzg,
|
||||
// province=,
|
||||
// screen_name=12355,
|
||||
// name=12355,
|
||||
// iconurl=http://thirdwx.qlogo.cn/mmopen/vi_32/t7KAzibDicb1pRq7VvLct5XGT7SJmTMlawIO9teLSqad0VVljEC1l9HMcibyWKxy07DJlbHkj620hcD6W8d5NXykg/132,
|
||||
// expiration=1597635314447,
|
||||
// expires_in=1597635314447,
|
||||
// refreshToken=36_182iVW8iB03NQUXg7ktFTi0Zj4Z6SurQv9MZyYuB1rr3fHcOE-lFqD2Ue6k9X3-JC4BcsmdxqNuFi5vX69_hATi3JKj78g8xi6-xS1udCTI}
|
||||
|
||||
sendJsonPostParamtoNetSignMD5(Url.addWechatExpert,data,ADDWECHATEXPERT,BindWeChatActivity.this);
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onError(SHARE_MEDIA platform, int action, Throwable t) {
|
||||
// Toast.makeText( getApplicationContext(), "Authorize fail", Toast.LENGTH_SHORT).show();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onCancel(SHARE_MEDIA platform, int action) {
|
||||
// Toast.makeText( getApplicationContext(), "Authorize cancel", Toast.LENGTH_SHORT).show();
|
||||
}
|
||||
};
|
||||
private void UnBindWX() {
|
||||
UMShareAPI.get(this).deleteOauth(this, SHARE_MEDIA.WEIXIN, new UMAuthListener() {
|
||||
@Override
|
||||
public void onStart(SHARE_MEDIA share_media) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onComplete(SHARE_MEDIA share_media, int i, Map<String, String> map) {
|
||||
unionid=SharePrefUtil.getString(BindWeChatActivity.this,"unionid_wechat", "");
|
||||
Map<String,String> map1 = new HashMap<>();
|
||||
map1.put("unionid",unionid);
|
||||
sendJsonPostParamtoNetSignMD5(Url.delWechatExpert,map1,DELWECHATEXPERT,BindWeChatActivity.this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onError(SHARE_MEDIA share_media, int i, Throwable throwable) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onCancel(SHARE_MEDIA share_media, int i) {
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
//微信登陆信息
|
||||
private void BindWX(){
|
||||
|
||||
UMShareAPI.get(this).getPlatformInfo(this, SHARE_MEDIA.WEIXIN, umAuthListener);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onCallbackFromThread(String resultJson) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onCallBackFromThread(String resultJson, int resultCode) {
|
||||
Log.d("gdxzwe",resultJson);
|
||||
pd.dismiss();
|
||||
switch (resultCode){
|
||||
case ISBOUNDWECHATBYUUID:
|
||||
try {
|
||||
|
||||
JSONObject jsonObject1 = new JSONObject(resultJson);
|
||||
String code1 = jsonObject1.getString("code");
|
||||
if ("200".equals(code1)){
|
||||
int isBound = jsonObject1.getInt("isBound");
|
||||
if (isBound==0){
|
||||
|
||||
we_name.setText("未绑定微信");
|
||||
bind_state.setText("绑定");
|
||||
bind_state.setTextColor(Color.WHITE);
|
||||
bind_state.setBackground(getResources().getDrawable(R.drawable.btn_all_wecchat));
|
||||
// SharePrefUtil.saveString(BindWeChatActivity.this,
|
||||
// "bind_state", "绑定");
|
||||
SharePrefUtil.saveString(BindWeChatActivity.this,"isbound_wechat","no");
|
||||
}else {
|
||||
String name=jsonObject1.getString("nickname");
|
||||
if(name!=null)
|
||||
we_name.setText(name);
|
||||
bind_state.setText("解绑");
|
||||
unionid=jsonObject1.getString("unionid");
|
||||
if(!StringUtil.isEmpty(unionid))
|
||||
SharePrefUtil.saveString(BindWeChatActivity.this,"unionid_wechat",unionid);
|
||||
SharePrefUtil.saveString(BindWeChatActivity.this,"isbound_wechat","yes");
|
||||
bind_state.setTextColor(getResources().getColor(R.color.c999999));
|
||||
bind_state.setBackground(getResources().getDrawable(R.drawable.btn_all_nine));
|
||||
// SharePrefUtil.saveString(BindWeChatActivity.this,
|
||||
// "bind_state", "解绑");
|
||||
openid = jsonObject1.getString("openid");
|
||||
}
|
||||
}else {
|
||||
ToastUtil.showMessage(jsonObject1.getString("message"));
|
||||
}
|
||||
|
||||
|
||||
} catch (JSONException e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
|
||||
}
|
||||
break;
|
||||
case ADDWECHATEXPERT:
|
||||
|
||||
JSONObject jsonObject2 = null;
|
||||
try {
|
||||
jsonObject2 = new JSONObject(resultJson);
|
||||
String code1 = jsonObject2.getString("code");
|
||||
if ("200".equals(code1)){
|
||||
String name=jsonObject2.getString("nickname");
|
||||
if(name!=null)
|
||||
we_name.setText(name);
|
||||
bind_state.setText("解绑");
|
||||
bind_state.setTextColor(getResources().getColor(R.color.c999999));
|
||||
bind_state.setBackground(getResources().getDrawable(R.drawable.btn_all_nine));
|
||||
SharePrefUtil.saveString(BindWeChatActivity.this,"isbound_wechat","yes");
|
||||
// SharePrefUtil.saveString(BindWeChatActivity.this,
|
||||
// "bind_state", "解绑");
|
||||
}
|
||||
ToastUtil.showMessage(jsonObject2.getString("message"));
|
||||
|
||||
} catch (JSONException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
break;
|
||||
case DELWECHATEXPERT:
|
||||
|
||||
try {
|
||||
JSONObject jsonObject3 = new JSONObject(resultJson);
|
||||
String code1 = jsonObject3.getString("code");
|
||||
if ("200".equals(code1)){
|
||||
we_name.setText("未绑定微信");
|
||||
bind_state.setText("绑定");
|
||||
bind_state.setTextColor(Color.WHITE);
|
||||
bind_state.setBackground(getResources().getDrawable(R.drawable.btn_all_wecchat));
|
||||
SharePrefUtil.saveString(BindWeChatActivity.this,"isbound_wechat","no");
|
||||
// SharePrefUtil.saveString(BindWeChatActivity.this,
|
||||
// "bind_state", "绑定");
|
||||
}
|
||||
ToastUtil.showMessage(jsonObject3.getString("message"));
|
||||
|
||||
} catch (JSONException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user