Commit bb38ab0f authored by mengcuiguang's avatar mengcuiguang

修改登录方式,添加banner,解决冲突

parent 3c5b8251
......@@ -9,8 +9,8 @@ android {
applicationId "com.mints.goodmoney"
minSdkVersion rootProject.ext.androidMinSdkVersion
targetSdkVersion rootProject.ext.androidTargetSdkVersion
versionCode 4
versionName "1.0.3"
versionCode 5
versionName "1.0.4"
flavorDimensions "default"
// dex突破65535的限制
......
......@@ -122,7 +122,13 @@
android:name="com.mints.library.base.BaseWebActivity"
android:theme="@style/AppTheme.NoneTranslucent" />
<activity
android:name=".ui.activitys.LoginActivity"
android:name=".ui.activitys.BindMobileActivity"
android:screenOrientation="portrait" />
<activity
android:name=".ui.activitys.MobileLoginActivity"
android:screenOrientation="portrait" />
<activity
android:name=".ui.activitys.WxLoginActivity"
android:configChanges="orientation|screenSize|keyboardHidden"
android:launchMode="singleTop" />
<activity
......@@ -248,20 +254,6 @@
</provider>
<!-- 优量汇广告 -->
<!-- <provider-->
<!-- android:name="com.qq.e.comm.GDTFileProvider"-->
<!-- android:authorities="${applicationId}.gdt.fileprovider"-->
<!-- android:exported="false"-->
<!-- android:grantUriPermissions="true"-->
<!-- >-->
<!-- <meta-data-->
<!-- android:name="android.support.FILE_PROVIDER_PATHS"-->
<!-- android:resource="@xml/gdt_file_path"-->
<!-- />-->
<!-- </provider>-->
<!-- 鱼丸盒子广告 -->
<provider
android:name="com.component.dly.xzzq_ywsdk.YwFileProvider"
......
package com.mints.goodmoney.ad.banner
import android.view.View
import android.widget.FrameLayout
import com.bytedance.sdk.openadsdk.AdSlot
import com.bytedance.sdk.openadsdk.TTAdNative
import com.bytedance.sdk.openadsdk.TTNativeExpressAd
import com.mints.goodmoney.MintsApplication
import com.mints.goodmoney.manager.TtCsjAdManager
/**
* banner管理
*/
object BannerManager {
private var adNative: TTAdNative? = null
private var mTTAd: TTNativeExpressAd? = null
fun init() {
adNative = TtCsjAdManager.get().createAdNative(MintsApplication.getContext())
}
/**
* 获取穿山甲banner
*/
fun getTtBanner(codeId: String, frameLayout: FrameLayout?, viewWidth: Float, viewHeight: Float) {
adNative?.let {
val adSlot = AdSlot.Builder()
.setCodeId(codeId) //广告位id
.setSupportDeepLink(true)
.setAdCount(1) //请求广告数量为1到3条
.setExpressViewAcceptedSize(viewWidth, viewHeight) //期望模板广告view的size,单位dp
.setImageAcceptedSize(640, 320) //这个参数设置即可,不影响模板广告的size
.build()
it.loadBannerExpressAd(adSlot, object : TTAdNative.NativeExpressAdListener {
override fun onNativeExpressAdLoad(ads: MutableList<TTNativeExpressAd>?) {
if (ads == null || ads!!.size == 0) return
mTTAd = ads[0]
bindAdListener(frameLayout)
mTTAd?.render()
}
override fun onError(code: Int, msg: String) {
frameLayout?.removeAllViews()
}
})
}
}
private fun bindAdListener(frameLayout: FrameLayout?) {
mTTAd?.let {
it.setExpressInteractionListener(object : TTNativeExpressAd.ExpressAdInteractionListener {
override fun onAdClicked(p0: View?, p1: Int) {
}
override fun onAdShow(p0: View?, p1: Int) {
}
override fun onRenderSuccess(view: View, p1: Float, p2: Float) {
frameLayout?.let {
it.removeAllViews()
it.addView(view)
}
}
override fun onRenderFail(p0: View?, p1: String?, p2: Int) {
}
})
}
}
fun onDestroy() {
mTTAd?.let {
it.setExpressInteractionListener(null)
it.destroy()
mTTAd = null
}
adNative = null
}
}
\ No newline at end of file
......@@ -16,6 +16,9 @@ public class TtCsjAdManager {
public static final String TT_AD_APPID = "5113521";
public static final String TT_AD_NAME = Constant.MINTS_APP_NAME;
/*banner*/
public static final String TT_AD_BANNER_MY = "945653342";// 个人中心
/*激励视频*/
public static final String TT_AD_VEDIO_MAIN_DEV = "945561938";// 开发使用
public static final String TT_AD_VEDIO_DRINK = "945562032";//喝水打卡
......@@ -60,7 +63,7 @@ public class TtCsjAdManager {
}
}
public static String getVersion(){
public static String getVersion() {
return TTAdSdk.getAdManager().getSDKVersion();
}
......
......@@ -49,6 +49,7 @@ class LoginPresenter : BasePresenter<LoginView>() {
val message: String = baseResponse.getMessage()
when (code) {
200 -> {
}
else -> {
view.showToast(message)
......
......@@ -5,4 +5,5 @@ interface LoginView : BaseView {
* 登录成功
*/
fun loginSuc()
fun sendCodeSuc()
}
\ No newline at end of file
......@@ -4,12 +4,10 @@ import android.app.Activity;
import android.content.Intent;
import com.google.gson.Gson;
import com.mints.goodmoney.MintsApplication;
import com.mints.goodmoney.common.Constant;
import com.mints.goodmoney.manager.UserManager;
import com.mints.goodmoney.mvp.model.BaseResponse;
import com.mints.goodmoney.ui.activitys.LoginActivity;
import com.mints.goodmoney.utils.DeviceUuidFactory;
import com.mints.goodmoney.ui.activitys.WxLoginActivity;
import com.mints.goodmoney.utils.ForegroundOrBackground;
import com.mints.library.utils.TLog;
......@@ -20,7 +18,6 @@ import java.io.Writer;
import java.lang.annotation.Annotation;
import java.lang.reflect.Type;
import java.nio.charset.Charset;
import java.util.HashMap;
import okhttp3.MediaType;
import okhttp3.RequestBody;
......@@ -106,7 +103,7 @@ public class GsonConverterFactory extends Converter.Factory {
Activity forwardActivity = ForegroundOrBackground.getApp_activity();
if (forwardActivity != null) {
if (!forwardActivity.isFinishing()) {
forwardActivity.startActivity(new Intent(forwardActivity, LoginActivity.class));
forwardActivity.startActivity(new Intent(forwardActivity, WxLoginActivity.class));
}
}
} catch (Exception e) {
......
......@@ -171,14 +171,6 @@ public interface LoanService {
@POST("api/getCoinMsg")
Observable<BaseResponse<JsonObject>> getCoinMsg();
/**
* 穿山甲回调确认
*
* @return
*/
@POST("api/checkCoinRecordByTid")
Observable<BaseResponse<Object>> checkCoinRecordByTid(@Body Map<String, Object> vo);
/**
* 调用事件
*
......@@ -243,22 +235,6 @@ public interface LoanService {
@POST("api/getCoinRecords")
Observable<BaseResponse<GoldRecordBean>> getCoinRecords();
/**
* 世界人民排行信息
*
* @return
*/
@POST("api/getLeaders")
Observable<BaseResponse<FriendsTaskBean.FriendsBean>> getLeaders();
/**
* 好友任务信息
*
* @return
*/
@POST("api/getFriendsMsg")
Observable<BaseResponse<FriendsTaskBean>> getFriendsMsg();
/*
* 首页获取喝水打卡信息
*
......
......@@ -259,7 +259,7 @@ class AwardActivity : BaseActivity(), AwardView, View.OnClickListener {
awardVedio()
}
Constant.CARRIER_NEW_VISITOR -> {
readyGoThenKill(LoginActivity::class.java)
readyGoThenKill(WxLoginActivity::class.java)
}
else -> {
finish()
......
package com.mints.goodmoney.ui.activitys
import android.Manifest
import android.os.Bundle
import android.text.TextUtils
import android.view.View
import com.mints.goodmoney.R
import com.mints.goodmoney.common.Constant
import com.mints.goodmoney.manager.UserManager
import com.mints.goodmoney.manager.YwhzManager
import com.mints.goodmoney.mvp.presenters.LoginPresenter
import com.mints.goodmoney.mvp.views.LoginView
import com.mints.goodmoney.ui.activitys.base.BaseActivity
import com.mints.goodmoney.utils.BackInputUtil
import com.mints.goodmoney.utils.LogUtil
import com.mints.library.utils.nodoubleclick.AntiShake
import com.tbruyelle.rxpermissions.RxPermissions
import kotlinx.android.synthetic.main.activity_bind_mobile.*
import kotlinx.android.synthetic.main.header_layout.*
/**
* 描述:绑定手机号
* 作者:孟崔广
* 时间:2020/9/22 13:55
*/
class BindMobileActivity : BaseActivity()
, LoginView, View.OnClickListener {
private val loginPresenter by lazy { LoginPresenter() }
private var mobile: String? = null
override fun initViewsAndEvents() {
loginPresenter.attachView(this)
initView()
initListener()
}
override fun getContentViewLayoutID() = R.layout.activity_bind_mobile
override fun isApplyKitKatTranslucency() = false
override fun onDestroy() {
super.onDestroy()
loginPresenter.detachView()
}
override fun onClick(v: View?) {
if (AntiShake.check(v?.id)) return
when (v?.id) {
R.id.iv_left_icon -> {
finish()
}
R.id.tvLoginSendcode -> {
var mobile = etLoginMobile.getText().toString().trim()
if (mobile.length < 13) {
showToast("请输入手机号")
return
}
sendCodeThread()
mobile = mobile.replace(" ".toRegex(), "")
loginPresenter.sendMobileCode(mobile)
}
R.id.tvLoginNext -> {
var mobile = etLoginMobile.getText().toString().trim()
if (mobile.length < 13) {
showToast("请输入手机号")
return
}
var code = etLoginCode.getText().toString().trim()
if (code.length < 4) {
showToast("请输入验证码")
return
}
RxPermissions(this@BindMobileActivity)
.request(Manifest.permission.READ_PHONE_STATE)
.subscribe { granted: Boolean ->
if (granted) {
mobile = mobile.replace(" ".toRegex(), "")
loginPresenter.bindingMobile(mobile, code)
} else {
showMissingPermissionDialog("设备")
}
}
}
}
}
override fun loginSuc() {
showToast("绑定成功")
progressDialog?.dismiss()
finish()
}
override fun sendCodeSuc() {
}
private fun initView() {
tv_title.text = "绑定手机号"
iv_left_icon.visibility = View.VISIBLE
iv_left_icon.setImageResource(R.mipmap.ic_arrow_back)
BackInputUtil.phoneNumAddSpace(etLoginMobile)
mobile = UserManager.getInstance().mobile
if (!TextUtils.isEmpty(mobile)) {
etLoginMobile.setText(mobile)
etLoginMobile.setSelection(mobile!!.length + 2)
}
}
private fun initListener() {
iv_left_icon.setOnClickListener(this)
tvLoginSendcode.setOnClickListener(this)
tvLoginNext.setOnClickListener(this)
}
var num = 0
var run: Runnable? = null
fun sendCodeThread() {
num = 60
tvLoginSendcode?.let {
it.setEnabled(false)
it.setText("($num)重新获取")
run = object : Runnable {
override fun run() {
num--
if (num == 0) {
it.setText("重新获取")
it.setEnabled(true)
} else {
it.setText("($num)重新获取")
it.postDelayed(this, 1000)
}
}
}
it.postDelayed(run, 1000)
}
}
}
......@@ -2,6 +2,7 @@ package com.mints.goodmoney.ui.activitys
import android.os.Bundle
import android.text.TextUtils
import android.text.style.ClickableSpan
import android.view.View
import androidx.recyclerview.widget.GridLayoutManager
import cn.sharesdk.framework.ShareSDK
......@@ -84,7 +85,7 @@ class DrawcashActivity : BaseActivity(),
R.id.tv_right_subtitle -> {
// 是否登录
if (!userManager.userIsLogin()) {
readyGo(LoginActivity::class.java)
readyGo(WxLoginActivity::class.java)
return
}
......@@ -118,15 +119,13 @@ class DrawcashActivity : BaseActivity(),
// 是否登录
if (!userManager.userIsLogin()) {
readyGo(LoginActivity::class.java)
readyGo(WxLoginActivity::class.java)
return
}
// 是否绑定手机号
if (TextUtils.isEmpty(userManager.mobile)) {
val bundle = Bundle()
bundle.putBoolean(Constant.LOGIN_FLAG, true)
readyGo(LoginActivity::class.java, bundle)
readyGo(BindMobileActivity::class.java)
return
}
......@@ -144,7 +143,6 @@ class DrawcashActivity : BaseActivity(),
override fun getUserTaskMsgSuc(data: DrawcashBean) {
userConfig = data
tvDrawcashExplain.text = data.drawcashRule
tvDrawcashHint.text = data.drawcashHint
tvDrawcashGold.text = CommonUtils.formatString(data.coin.toString())
......
......@@ -16,7 +16,7 @@ import kotlinx.android.synthetic.main.activity_drawcash_record.*
import kotlinx.android.synthetic.main.header_layout.*
/**
* 描述:提现几率
* 描述:提现记录
* 作者:孟崔广
* 时间:2020/10/15 15:48
* 邮箱:mengcga@163.com
......
......@@ -47,7 +47,7 @@ class GuideActivity : BaseActivity() {
val channel = CommonUtils.getAppMetaData(MintsApplication.getContext(), "CHANNEL_NAME")
if (TextUtils.equals(channel, Constant.CHANNEL_SHARE) && !UserManager.getInstance().userIsLogin()) {
readyGo(LoginActivity::class.java)
readyGo(WxLoginActivity::class.java)
} else {
readyGoThenKill(MainActivity::class.java)
}
......
package com.mints.goodmoney.ui.activitys
import android.Manifest
import android.text.TextUtils
import android.view.View
import com.mints.goodmoney.R
import com.mints.goodmoney.manager.UserManager
import com.mints.goodmoney.manager.YwhzManager
import com.mints.goodmoney.mvp.presenters.LoginPresenter
import com.mints.goodmoney.mvp.views.LoginView
import com.mints.goodmoney.ui.activitys.base.BaseActivity
import com.mints.goodmoney.utils.BackInputUtil
import com.mints.goodmoney.utils.LogUtil
import com.mints.library.utils.nodoubleclick.AntiShake
import com.tbruyelle.rxpermissions.RxPermissions
import kotlinx.android.synthetic.main.activity_bind_mobile.*
import kotlinx.android.synthetic.main.header_layout.*
/**
* 描述:手机号登录
* 作者:孟崔广
* 时间:2020/12/2 14:21
*/
class MobileLoginActivity : BaseActivity()
, LoginView, View.OnClickListener {
private val loginPresenter by lazy { LoginPresenter() }
private var mobile: String? = null
override fun initViewsAndEvents() {
loginPresenter.attachView(this)
initView()
initListener()
}
override fun getContentViewLayoutID() = R.layout.activity_mobile_login
override fun isApplyKitKatTranslucency() = false
override fun onDestroy() {
super.onDestroy()
loginPresenter.detachView()
}
override fun onClick(v: View?) {
if (AntiShake.check(v?.id)) return
when (v?.id) {
R.id.iv_left_icon -> {
finish()
}
R.id.tvLoginSendcode -> {
var mobile = etLoginMobile.getText().toString().trim()
if (mobile.length < 13) {
showToast("请输入手机号")
return
}
// sendCodeThread()
mobile = mobile.replace(" ".toRegex(), "")
loginPresenter.sendMobileCode(mobile)
}
R.id.tvLoginNext -> {
var mobile = etLoginMobile.getText().toString().trim()
if (mobile.length < 13) {
showToast("请输入手机号")
return
}
var code = etLoginCode.getText().toString().trim()
if (code.length < 4) {
showToast("请输入验证码")
return
}
RxPermissions(this@MobileLoginActivity)
.request(Manifest.permission.READ_PHONE_STATE)
.subscribe { granted: Boolean ->
if (granted) {
mobile = mobile.replace(" ".toRegex(), "")
// 登录
loginPresenter.login(mobile, code)
} else {
showMissingPermissionDialog("设备")
}
}
}
}
}
override fun loginSuc() {
try {
// 登录成功初始化鱼玩盒子userid
YwhzManager.init(baseApplication)
} catch (e: Exception) {
}
// false-登录 true-绑定手机号
showToast("登录成功")
progressDialog?.dismiss()
readyGo(MainActivity::class.java)
}
override fun sendCodeSuc() {
if (!isFinishing()) {
sendCodeThread()
}
}
private fun initView() {
tv_title.text = "手机号登录"
iv_left_icon.visibility = View.VISIBLE
iv_left_icon.setImageResource(R.mipmap.ic_arrow_back)
BackInputUtil.phoneNumAddSpace(etLoginMobile)
mobile = UserManager.getInstance().mobile
if (!TextUtils.isEmpty(mobile)) {
etLoginMobile.setText(mobile)
etLoginMobile.setSelection(mobile!!.length + 2)
}
}
private fun initListener() {
iv_left_icon.setOnClickListener(this)
tvLoginSendcode.setOnClickListener(this)
tvLoginNext.setOnClickListener(this)
}
var num = 0
var run: Runnable? = null
fun sendCodeThread() {
num = 60
tvLoginSendcode?.let {
it.setEnabled(false)
it.setText("($num)重新获取")
run = object : Runnable {
override fun run() {
num--
LogUtil.d("login", "login num:" + num)
if (num == 0) {
it.setText("重新获取")
it.setEnabled(true)
} else {
it.setText("($num)重新获取")
it.postDelayed(this, 1000)
}
}
}
it.postDelayed(run, 1000)
}
}
}
......@@ -152,10 +152,13 @@ class SettingsActivity : BaseActivity(), View.OnClickListener, OnLoginListener,
override fun onClick(v: View?) {
when (v?.id) {
R.id.item_phone -> {
if (!userManager.userIsLogin()) {
readyGo(WxLoginActivity::class.java)
return
}
if (userManager.mobile.isEmpty()) {
val bundle = Bundle()
bundle.putBoolean(Constant.LOGIN_FLAG, true)
readyGo(LoginActivity::class.java, bundle)
readyGo(BindMobileActivity::class.java)
}
}
// R.id.item_wechat -> {
......
......@@ -198,7 +198,7 @@ class SplashYlhActivity : BaseActivity(), SplashADListener {
} else {
val channel = CommonUtils.getAppMetaData(MintsApplication.getContext(), "CHANNEL_NAME")
if (TextUtils.equals(channel, Constant.CHANNEL_SHARE) && !UserManager.getInstance().userIsLogin()) {
readyGo(LoginActivity::class.java)
readyGo(WxLoginActivity::class.java)
} else {
readyGoThenKill(MainActivity::class.java)
}
......
......@@ -72,7 +72,7 @@ class DrawcashRecordAdapter(context: Context, invitedData: MutableList<DrawcashR
viewHolder.tv_drawcashrecord_status.text = "已提现"
viewHolder.tv_drawcashrecord_status.setTextColor(ContextCompat.getColor(mContext, R.color.main_nor_color))
}
3 -> {
3, 4 -> {
viewHolder.tv_drawcashrecord_status.text = "提现失败"
viewHolder.tv_drawcashrecord_status.setTextColor(ContextCompat.getColor(mContext, R.color.tv_message_recente_money))
}
......
......@@ -22,7 +22,6 @@ import com.mints.goodmoney.mvp.presenters.FriendsPresenter
import com.mints.goodmoney.mvp.views.FriendsView
import com.mints.goodmoney.ui.activitys.DrawcashActivity
import com.mints.goodmoney.ui.activitys.FriendsActivity
import com.mints.goodmoney.ui.activitys.LoginActivity
import com.mints.goodmoney.ui.adapter.FriendsPagerAdapter
import com.mints.goodmoney.ui.adapter.InvitedAdapter
import com.mints.goodmoney.ui.fragment.base.BaseFragment
......
......@@ -5,7 +5,7 @@ import androidx.viewpager.widget.ViewPager
import com.androidkun.xtablayout.XTabLayout
import com.mints.goodmoney.R
import com.mints.goodmoney.manager.UserManager
import com.mints.goodmoney.ui.activitys.LoginActivity
import com.mints.goodmoney.ui.activitys.WxLoginActivity
import com.mints.goodmoney.ui.adapter.MessageFragAdapter
import com.mints.goodmoney.ui.fragment.base.BaseFragment
import kotlinx.android.synthetic.main.fragment_main_money.*
......@@ -83,7 +83,7 @@ class MoneyFragment : BaseFragment(), XTabLayout.OnTabSelectedListener {
override fun onTabSelected(tab: XTabLayout.Tab) {
if (tab.position == 2) {
if (!UserManager.getInstance().userIsLogin()) {
readyGo(LoginActivity::class.java)
readyGo(WxLoginActivity::class.java)
vpFragmentMoney.currentItem = if (curPosition == 2) 0 else curPosition
return
}
......
......@@ -17,6 +17,7 @@ import cn.sharesdk.wechat.friends.Wechat
import com.component.dly.xzzq_ywsdk.YwSDK_WebActivity.Companion.open
import com.mints.goodmoney.BuildConfig
import com.mints.goodmoney.R
import com.mints.goodmoney.ad.banner.BannerManager
import com.mints.goodmoney.ad.video.VedioAdingManager
import com.mints.goodmoney.common.AppConfig
import com.mints.goodmoney.common.Constant
......@@ -89,6 +90,7 @@ class MyFragment : BaseFragment(), MyView, OnItemChildClickListener, OnRefreshLi
myPresenter.attachView(this)
srl_my.setOnRefreshListener(this)
BannerManager.init()
vedioAdingManager = VedioAdingManager.getInstance(activity)
initView()
......@@ -151,16 +153,23 @@ class MyFragment : BaseFragment(), MyView, OnItemChildClickListener, OnRefreshLi
override fun onResume() {
super.onResume()
if (AppConfig.fragmentClickFlag == Constant.FRAGMENT_CLICK_MY) {
if (!TextUtils.isEmpty(userManager.userID)) {
myPresenter.getAutoUserHallBaseMsg()
} else {
// 游客登录
myPresenter.userLogin()
}
// 防止banner刷新太快
if (AntiShake.check(fl_my_banner?.id)) return
BannerManager.getTtBanner(TtCsjAdManager.TT_AD_BANNER_MY, fl_my_banner, 560f, 160f)
}
}
override fun onDestroyView() {
fl_my_banner?.removeAllViews()
item_clock_signview.onDestory()
super.onDestroyView()
}
......@@ -168,6 +177,7 @@ class MyFragment : BaseFragment(), MyView, OnItemChildClickListener, OnRefreshLi
override fun onDestroy() {
super.onDestroy()
BxmManager.onDestory()
BannerManager.onDestroy()
myPresenter.detachView()
}
......@@ -440,7 +450,7 @@ class MyFragment : BaseFragment(), MyView, OnItemChildClickListener, OnRefreshLi
when (taskBean.otherConfig.status) {
0 -> {
if (!userManager.userIsLogin()) {
readyGo(LoginActivity::class.java)
readyGo(WxLoginActivity::class.java)
return
}
......@@ -473,7 +483,7 @@ class MyFragment : BaseFragment(), MyView, OnItemChildClickListener, OnRefreshLi
}
2 -> {
if (!userManager.userIsLogin()) {
readyGo(LoginActivity::class.java)
readyGo(WxLoginActivity::class.java)
}
if (!ps.getBoolean(Constant.FIRST_SHARE_MY, false)) {
......@@ -536,7 +546,7 @@ class MyFragment : BaseFragment(), MyView, OnItemChildClickListener, OnRefreshLi
// 试玩平台
MainMyAdapter.TO_YWHZ -> {
if (!userManager.userIsLogin()) {
readyGo(LoginActivity::class.java)
readyGo(WxLoginActivity::class.java)
return
}
......@@ -563,7 +573,7 @@ class MyFragment : BaseFragment(), MyView, OnItemChildClickListener, OnRefreshLi
when (v?.id) {
R.id.ll_my_login -> {
if (!userManager.userIsLogin()) {
readyGo(LoginActivity::class.java)
readyGo(WxLoginActivity::class.java)
}
}
R.id.iv_right_icon2 -> {
......@@ -576,7 +586,7 @@ class MyFragment : BaseFragment(), MyView, OnItemChildClickListener, OnRefreshLi
}
R.id.item_title_id -> {
if (!userManager.userIsLogin()) {
readyGo(LoginActivity::class.java)
readyGo(WxLoginActivity::class.java)
}
}
R.id.iv_right_icon -> {
......
......@@ -13,9 +13,10 @@ import android.widget.RelativeLayout
import android.widget.TextView
import androidx.core.content.ContextCompat
import cn.sharesdk.framework.Platform
import cn.sharesdk.framework.Platform.ShareParams
import cn.sharesdk.framework.ShareSDK
import cn.sharesdk.wechat.favorite.WechatFavorite
import cn.sharesdk.wechat.friends.Wechat
import cn.sharesdk.wechat.moments.WechatMoments
import com.mints.goodmoney.MintsApplication
import com.mints.goodmoney.R
import com.mints.goodmoney.common.Constant
......@@ -34,6 +35,9 @@ class ShareDialog(context: Context) :
private val rlView: RelativeLayout
private val tvDialogShareNext: TextView
private val wechat by lazy { ShareSDK.getPlatform(Wechat.NAME) }
private val wechatMoments by lazy { ShareSDK.getPlatform(WechatMoments.NAME) }
init {
setContentView(R.layout.dialog_share)
// 设置window属性
......@@ -84,15 +88,14 @@ class ShareDialog(context: Context) :
rlView.buildDrawingCache()
val bitmap: Bitmap = rlView.drawingCache
val wechatSp = Platform.ShareParams()
val wechatSp = ShareParams()
wechatSp.shareType = Platform.SHARE_IMAGE
wechatSp.title = Constant.SHARE_TITLE
wechatSp.text = Constant.SHARE_CONTENT
wechatSp.imageData = bitmap
wechatSp.url = Constant.SHARE_URL
val wechat = ShareSDK.getPlatform(Wechat.NAME)
if (wechat.isClientValid) {
// 执行图文分享
wechat.share(wechatSp)
} else {
ToastUtil.show(MintsApplication.getContext(), "请先安装微信")
......@@ -100,16 +103,16 @@ class ShareDialog(context: Context) :
}
private fun shareWechatFavoite() {
val wechatSp = Platform.ShareParams()
rlView.isDrawingCacheEnabled = true
rlView.drawingCacheQuality = View.DRAWING_CACHE_QUALITY_HIGH
rlView.buildDrawingCache()
val bitmap: Bitmap = rlView.drawingCache
val wechatSp = ShareParams()
wechatSp.shareType = Platform.SHARE_IMAGE
wechatSp.title = Constant.SHARE_TITLE
wechatSp.text = Constant.SHARE_CONTENT
wechatSp.imageData = ImageUtil.drawableToBitmap(ContextCompat.getDrawable(context, R.mipmap.bg_eat))
wechatSp.url = Constant.SHARE_URL
val wechat = ShareSDK.getPlatform(WechatFavorite.NAME)
if (wechat.isClientValid) {
// 执行图文分享
wechat.share(wechatSp)
wechatSp.imageData = bitmap
if (wechatMoments.isClientValid) {
wechatMoments.share(wechatSp)
} else {
ToastUtil.show(MintsApplication.getContext(), "请先安装微信")
}
......
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<!-- 填充的颜色 -->
<solid android:color="@color/loan_green" />
<!-- 设置按钮的四个角为弧形 -->
<!-- android:radius 弧形的半径 -->
<corners android:radius="30dip" />
</shape>
\ No newline at end of file
......@@ -5,16 +5,7 @@
android:background="@color/white"
android:orientation="vertical">
<ImageView
android:id="@+id/ivLoginBack"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingLeft="25dp"
android:paddingTop="40dp"
android:paddingRight="25dp"
android:paddingBottom="10dp"
android:scaleType="center"
android:src="@mipmap/ic_activity_quit" />
<include layout="@layout/header_layout" />
<com.mints.goodmoney.ui.widgets.ElasticScrollView
android:layout_width="match_parent"
......@@ -132,77 +123,10 @@
android:layout_marginRight="40dp"
android:background="@drawable/shape_main"
android:gravity="center"
android:text="立即登录"
android:text="绑定手机号"
android:textColor="@color/white"
android:textSize="14sp" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="15dp"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="30dp"
android:layout_marginRight="30dp"
android:paddingTop="15dp"
android:paddingBottom="6dp"
android:text="《用户注册协议》、《用户隐私协议》与您的利益切身相关。请您注册前务必仔细阅读!点击按钮即表示您同意并愿意遵守好赚钱"
android:textColor="@color/product_hint_text"
android:textSize="12sp" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:orientation="horizontal">
<TextView
android:id="@+id/tvLoginAgreement"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingLeft="4dp"
android:paddingRight="2dp"
android:text="《用户注册协议》"
android:textColor="@color/main_mints"
android:textSize="12sp" />
<TextView
android:id="@+id/tvLoginPolicy"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingLeft="2dp"
android:paddingRight="2dp"
android:text="《用户隐私协议》"
android:textColor="@color/main_mints"
android:textSize="12sp" />
</LinearLayout>
</LinearLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1">
<TextView
android:id="@+id/tvLoginWx"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="60dp"
android:layout_marginBottom="50dp"
android:drawableTop="@mipmap/ic_wx_login"
android:drawablePadding="8dp"
android:text="微信一键登录"
android:textColor="@color/black"
android:textSize="14sp" />
</RelativeLayout>
</LinearLayout>
</com.mints.goodmoney.ui.widgets.ElasticScrollView>
......
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/white"
android:orientation="vertical">
<include layout="@layout/header_layout" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dp"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="30dp"
android:layout_marginTop="30dp"
android:layout_marginRight="30dp"
android:orientation="horizontal">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="手机号:" />
<com.mints.goodmoney.ui.widgets.ClearEditText
android:id="@+id/etLoginMobile"
android:layout_width="match_parent"
android:layout_height="50dp"
android:layout_marginLeft="20dp"
android:layout_marginRight="30dp"
android:background="@null"
android:gravity="center_vertical"
android:hint="请输入手机号"
android:inputType="number"
android:maxLength="13"
android:maxLines="1"
android:textColor="@color/product_text"
android:textColorHint="@color/main_nor_color"
android:textSize="12sp" />
</LinearLayout>
<View
style="@style/line_3"
android:layout_marginLeft="30dp"
android:layout_marginRight="30dp" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="30dp"
android:layout_marginTop="10dp"
android:orientation="horizontal">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="验证码:" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="50dp"
android:layout_marginLeft="20dp"
android:layout_marginRight="30dp">
<com.mints.goodmoney.ui.widgets.ClearEditText
android:id="@+id/etLoginCode"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_centerVertical="true"
android:layout_marginRight="120dp"
android:background="@null"
android:hint="请输入验证码"
android:inputType="number"
android:maxLength="4"
android:maxLines="1"
android:textColor="@color/product_text"
android:textColorHint="@color/main_nor_color"
android:textSize="12sp" />
<TextView
android:id="@+id/tvLoginSendcode"
android:layout_width="100dp"
android:layout_height="30dp"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:gravity="center"
android:text="发送验证码"
android:textColor="@color/main_mints"
android:textSize="12sp" />
</RelativeLayout>
</LinearLayout>
<View
style="@style/line_3"
android:layout_marginLeft="30dp"
android:layout_marginRight="30dp" />
<TextView
android:id="@+id/tvLoginNext"
android:layout_width="match_parent"
android:layout_height="50dp"
android:layout_gravity="center_horizontal"
android:layout_marginLeft="40dp"
android:layout_marginTop="30dp"
android:layout_marginRight="40dp"
android:background="@drawable/shape_main"
android:gravity="center"
android:text="立即登录"
android:textColor="@color/white"
android:textSize="14sp" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="20dp"
android:layout_marginTop="20dp"
android:layout_marginRight="20dp"
android:text="你需要先用微信登录,在【个人中心】-【设置】中绑定手机号码,才能使用手机号登录" />
</LinearLayout>
</LinearLayout>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/white"
android:orientation="vertical">
<ImageView
android:id="@+id/ivLoginBack"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingLeft="25dp"
android:paddingTop="40dp"
android:paddingRight="25dp"
android:paddingBottom="10dp"
android:scaleType="center"
android:src="@mipmap/ic_activity_quit" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<ImageView
android:layout_width="70dp"
android:layout_height="70dp"
android:layout_centerHorizontal="true"
android:layout_marginTop="50dp"
android:src="@mipmap/ic_launcher" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_marginBottom="30dp"
android:orientation="vertical">
<RelativeLayout
android:id="@+id/rlLoginWx"
android:layout_width="match_parent"
android:layout_height="52dp"
android:layout_gravity="center_horizontal"
android:layout_marginLeft="40dp"
android:layout_marginTop="230dp"
android:layout_marginRight="40dp"
android:background="@drawable/shape_green">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:drawableLeft="@mipmap/ic_wx_white_login"
android:drawablePadding="10dp"
android:gravity="center_vertical"
android:text="微信登录"
android:textColor="@color/white"
android:textSize="14sp" />
</RelativeLayout>
<TextView
android:id="@+id/tvLoginMobile"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:padding="24dp"
android:text="其他登录方式"
android:textColor="@color/gray"
android:textSize="14sp" />
<TextView
android:id="@+id/tvLoginAgreement"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="30dp"
android:layout_marginRight="30dp"
android:layout_gravity="center_horizontal"
android:textColor="@color/product_hint_text"
android:textSize="12sp" />
</LinearLayout>
</RelativeLayout>
</LinearLayout>
\ No newline at end of file
......@@ -35,6 +35,12 @@
<include layout="@layout/item_fragment_main_my_clock" />
<FrameLayout
android:id="@+id/fl_my_banner"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"/>
<include
android:id="@+id/divider_hot"
layout="@layout/item_divider_gray"
......
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