Commit 0926f4f5 authored by jyx's avatar jyx

优化清理也崩溃问题,更新动画效果

parent 77161c8b
......@@ -227,8 +227,10 @@ dependencies {
// 三方接入
// bugly
implementation 'com.tencent.bugly:crashreport:3.3.92' //其中latest.release指代最新Bugly SDK版本号,也可以指定明确的版本号,例如2.1.9
implementation 'com.tencent.bugly:nativecrashreport:3.0' //其中latest.release指代最新Bugly NDK版本号,也可以指定明确的版本号,例如3.0
implementation 'com.tencent.bugly:crashreport:3.3.92'
//其中latest.release指代最新Bugly SDK版本号,也可以指定明确的版本号,例如2.1.9
implementation 'com.tencent.bugly:nativecrashreport:3.0'
//其中latest.release指代最新Bugly NDK版本号,也可以指定明确的版本号,例如3.0
// 一览视频
implementation("com.yilan.sdk:ui:3.3.3.6") {
exclude group: 'com.yilan.sdk', module: 'yb_extra'
......
......@@ -18,6 +18,7 @@
<uses-permission android:name="android.permission.WRITE_SETTINGS" />
<uses-permission android:name="android.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS" />
<uses-permission android:name="android.permission.READ_LOGS" />
<permission android:name="com.mints.flowbox.permission.JPUSH_MESSAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
......
......@@ -8,8 +8,6 @@ import com.mints.flowbox.MintsApplication;
import com.mints.flowbox.common.AppConfig;
import com.mints.flowbox.manager.TrackManager;
import com.mints.flowbox.ui.activitys.BoostActivity;
import com.mints.flowbox.ui.activitys.ScreenActivity;
import com.mints.flowbox.utils.LogUtil;
/**
* 描述:定时器
......@@ -71,13 +69,6 @@ public class AlarmManager implements WeakHandler.IHandler {
exeActionForTime(curTime);
// 用户操作按时间增长
userActionForTime(userTime);
if (mHandler != null) {
mHandler.sendEmptyMessageDelayed(MSG1, ONE_MINTER_Interval);
} else {
init();
startTime();
}
}
}
......
......@@ -29,7 +29,9 @@ object TzManager {
"CHANNEL_NAME"
)
)
.forTest(false)
.forTest(true)
.log(true)
.verbose(true)
.build()
)
}
......
......@@ -8,10 +8,8 @@ import android.annotation.SuppressLint
import android.os.Bundle
import com.mints.flowbox.R
import com.mints.flowbox.ui.activitys.base.BaseActivity
import com.mints.library.utils.GlideUtils
import kotlinx.android.synthetic.main.activity_boost_fast.*
import kotlinx.android.synthetic.main.header_layout.*
import java.util.*
import kotlinx.android.synthetic.main.activity_boost_fast.ccav_speed
/**
*
......@@ -51,12 +49,20 @@ class BoostFastActivity : BaseActivity() {
// colorAnim.repeatCount = ValueAnimator.INFINITE
colorAnim.repeatMode = ValueAnimator.REVERSE
colorAnim.start()
ccav_speed.setCenterImageView(R.drawable.wifi_speed)
ccav_speed.startAnimation()
// Handler(Looper.getMainLooper()).postDelayed(
// {
// ccav_speed.stopAnimation()
// },
// 2000
// )
GlideUtils.loadOneTimeGif(
this@BoostFastActivity,
R.drawable.battery,
ivAnim
) {}
// GlideUtils.loadOneTimeGif(
// this@BoostFastActivity,
// R.drawable.battery,
// ivAnim
// ) {}
colorAnim.addListener(object : Animator.AnimatorListener {
override fun onAnimationStart(animation: Animator?) {}
......
......@@ -146,7 +146,7 @@ class CleanActivity : BaseActivity(), View.OnClickListener {
if (tvClean.visibility == View.VISIBLE) {
tvClean.text =
SpanUtils()
.append("检测到您的后台软件共运行\n")
.append("检测到您的后台软件共运行\n\n")
.append("" + mCleanList[0].childList.size)
.setForegroundColor(
ContextCompat.getColor(
......@@ -188,7 +188,17 @@ class CleanActivity : BaseActivity(), View.OnClickListener {
override fun run() {
runOnUiThread {
if (!isItemCleanOk || taskType == scanMax) {
// 单项清理清理完成或没有继续清理的
if (!isItemCleanOk) {
return@runOnUiThread
}
if (isItemCleanOk && taskType == scanMax) {
btnClean.pauseCycle()
btnClean.text = "清理完成"
isCleaning = false
isCleanCompleted = true
mCleanTimer?.cancel()
return@runOnUiThread
}
......@@ -219,7 +229,7 @@ class CleanActivity : BaseActivity(), View.OnClickListener {
}
if (taskType == 0) {
cleaningOperation(mContext)
// cleaningOperation(mContext)
}
if (taskType == 4) {
......@@ -233,16 +243,10 @@ class CleanActivity : BaseActivity(), View.OnClickListener {
}
taskType++
if (taskType == scanMax) {
// 防止下标越界
taskType--
btnClean.pauseCycle()
btnClean.text = "清理完成"
isCleaning = false
isCleanCompleted = true
mCleanTimer?.cancel()
}
// if (taskType == scanMax) {
// 防止下标越界
// taskType--
// }
}
}
}, 1000, 1000.toLong())
......@@ -288,11 +292,8 @@ class CleanActivity : BaseActivity(), View.OnClickListener {
}
})
// elv_clean.setOnGroupClickListener { parent, v, groupPosition, id ->
// return@setOnGroupClickListener false
// }
elv_clean.setOnChildClickListener { parent, v, groupPosition, childPosition, id ->
ToastUtils.show("此文件删除后无影响,请放心清理")
ToastUtils.show("此文件清理后无影响,请放心清理")
return@setOnChildClickListener false
}
}
......@@ -331,7 +332,7 @@ class CleanActivity : BaseActivity(), View.OnClickListener {
}
private fun initView() {
headerContainer.setBackgroundColor(Color.parseColor("#8B82DC"))
headerContainer.setBackgroundColor(Color.parseColor("#8278DC"))
line.visibility = View.GONE
if (scanMax == 1) {
tv_title.text = "一键清理"
......@@ -347,8 +348,6 @@ class CleanActivity : BaseActivity(), View.OnClickListener {
if (scanMax == 1) {
ivClean.visibility = View.GONE
tvClean.visibility = View.VISIBLE
} else {
ivClean.visibility = View.VISIBLE
tvClean.visibility = View.GONE
......
package com.mints.flowbox.ui.activitys
import android.os.Bundle
import android.os.Handler
import android.os.Looper
import android.view.View
import android.view.animation.AnimationUtils
import android.view.animation.LayoutAnimationController
import androidx.core.content.ContextCompat
import androidx.recyclerview.widget.DividerItemDecoration
import androidx.recyclerview.widget.LinearLayoutManager
import com.mints.flowbox.R
import com.mints.flowbox.ad.express.ExpressManager
import com.mints.flowbox.ad.inscreen.InsertScreenAdManager
import com.mints.flowbox.ui.activitys.base.BaseActivity
import com.mints.flowbox.ui.adapter.IncreaseAdapter
import com.mints.flowbox.utils.SpanUtils
import kotlinx.android.synthetic.main.activity_increasespeed2.*
import kotlinx.android.synthetic.main.activity_increasespeed2.fl_ad
......@@ -25,25 +32,25 @@ class Increasespeed2Activity : BaseActivity(), View.OnClickListener {
const val INCREASE2_SAFE_CHECK = "SAFE_CHECK" // 安全检测
}
private var mStringArr1 =
arrayOf(
"检测结果WiFi加密安全性",
"检查ARP网络攻击异常",
"提升DNS劫持安全性",
"部署网页防篡改",
"加固链路,避免SSL中间人攻击",
"检测是否钓鱼WiFi"
)
private var mStringArr2 =
arrayOf(
"提升信号状态稳定性",
"清理信号频段干扰",
"优化热点链接速率",
"加速关键网速节点",
"优化关键进场优先级",
"清理空闲联网进程"
)
private val mStringArr1 = mutableListOf(
"检测结果WiFi加密安全性",
"检查ARP网络攻击异常",
"提升DNS劫持安全性",
"部署网页防篡改",
"加固链路,避免SSL中间人攻击",
"检测是否钓鱼WiFi"
)
private val mStringArr2 = mutableListOf(
"提升信号状态稳定性",
"清理信号频段干扰",
"优化热点链接速率",
"加速关键网速节点",
"优化关键进场优先级",
"清理空闲联网进程"
)
private var mIncreaseAdapter: IncreaseAdapter? = null
private var insertScreenAdManager: InsertScreenAdManager? = null
......@@ -55,7 +62,15 @@ class Increasespeed2Activity : BaseActivity(), View.OnClickListener {
insertScreenAdManager = InsertScreenAdManager()
insertScreenAdManager?.loadInterstitial(this)
tv_title.text = "一键提速"
initView()
Handler(Looper.getMainLooper()).postDelayed({
// 动画结束后 展示插屏广告
insertScreenAdManager?.showInterstitial()
}, 3000)
}
private fun initView() {
tv_title.setTextColor(-0x1)
iv_left_icon.visibility = View.VISIBLE
iv_left_icon.setImageResource(R.mipmap.ic_arrow_back_white)
......@@ -67,28 +82,32 @@ class Increasespeed2Activity : BaseActivity(), View.OnClickListener {
INCREASE2_WIFI_BOOST -> {
header.visibility = View.VISIBLE
tv_title.text = "一键提速"
tv_title_1.text = SpanUtils()
.append("网速已经提升")
.append("${2 + Random.nextInt(6)}%")
.setForegroundColor(ContextCompat.getColor(this, R.color.color_FFDD0C))
.create()
tv1.text = mStringArr1[0]
tv2.text = mStringArr1[1]
tv3.text = mStringArr1[2]
tv4.text = mStringArr1[3]
tv5.text = mStringArr1[4]
tv6.text = mStringArr1[5]
mIncreaseAdapter = IncreaseAdapter(this, mStringArr2)
}
INCREASE2_SAFE_CHECK -> {
tv1.text = mStringArr2[0]
tv2.text = mStringArr2[1]
tv3.text = mStringArr2[2]
tv4.text = mStringArr2[3]
tv5.text = mStringArr2[4]
tv6.text = mStringArr2[5]
tv_title.text = "安全检测"
mIncreaseAdapter = IncreaseAdapter(this, mStringArr1)
}
}
val lac =
LayoutAnimationController(AnimationUtils.loadAnimation(this, R.anim.layout_left_in))
lac.delay = 1f
lac.order = LayoutAnimationController.ORDER_NORMAL
recycleView.layoutManager = LinearLayoutManager(this)
recycleView.layoutAnimation = lac
recycleView.addItemDecoration(DividerItemDecoration(this, DividerItemDecoration.VERTICAL))
recycleView.adapter = mIncreaseAdapter
}
override fun getBundleExtras(extras: Bundle?) {
......@@ -112,8 +131,7 @@ class Increasespeed2Activity : BaseActivity(), View.OnClickListener {
override fun onClick(v: View?) {
when (v?.id) {
R.id.iv_left_icon -> {
// finish()
insertScreenAdManager?.showInterstitial()
finish()
}
}
}
......
package com.mints.flowbox.ui.activitys
import android.os.Bundle
import android.os.Handler
import android.os.Looper
import android.text.Spannable
import android.view.View
import androidx.core.content.ContextCompat
import com.mints.flowbox.R
import com.mints.flowbox.ad.express.ExpressManager
import com.mints.flowbox.ad.inscreen.InsertScreenAdManager
import com.mints.flowbox.ad.inscreen.InsertScreenAdStatusListener
import com.mints.flowbox.common.AppConfig
import com.mints.flowbox.common.Constant
import com.mints.flowbox.manager.AppPreferencesManager
import com.mints.flowbox.ui.activitys.base.BaseActivity
import com.mints.flowbox.utils.SpanUtils
import kotlinx.android.synthetic.main.activity_increasespeed.*
......@@ -47,11 +46,18 @@ class IncreasespeedActivity : BaseActivity(), View.OnClickListener {
override fun getContentViewLayoutID() = R.layout.activity_increasespeed
override fun initViewsAndEvents() {
insertScreenAdManager = InsertScreenAdManager()
insertScreenAdManager?.loadInterstitial(this)
insertScreenAdManager?.showInterstitial()
initView()
Handler(Looper.getMainLooper()).postDelayed({
// 动画结束后 展示插屏广告
insertScreenAdManager?.showInterstitial()
}, 3000)
}
private fun initView() {
var headTitleStr = ""
val titleStr: Spannable
var infoStr = ""
......@@ -59,15 +65,15 @@ class IncreasespeedActivity : BaseActivity(), View.OnClickListener {
INCREASE_SPEED_TEST -> {
headTitleStr = "网络测速"
titleStr = SpanUtils()
.append("您的网速达到了")
.append(mSpeed + "Mbps")
.append("您的网速达到了\n")
.append(mSpeed)
.setForegroundColor(ContextCompat.getColor(this, R.color.color_FFDD0C))
.create()
infoStr = "网速飞一样快~"
infoStr = "网速飞一样快~"
}
INCREASE_JIASU -> {
AppConfig.isCanBoost = false
if (AppConfig.fakeBoostCount != 0) {
if (AppConfig.fakeBoostCount == 0) {
AppConfig.fakeBoostCount = 10 + Random.nextInt(15)
}
headTitleStr = "一键加速"
......
......@@ -28,10 +28,8 @@ import com.mints.flowbox.ui.fragment.*
import com.mints.flowbox.ui.widgets.dialog.DialogListener
import com.mints.flowbox.ui.widgets.dialog.PowerDialog
import com.mints.flowbox.utils.WifiUtils
import com.mints.library.utils.CommonUtils
import com.mints.library.utils.GlideUtils
import kotlinx.android.synthetic.main.activity_main.*
import net.grandcentrix.tray.AppPreferences
/**
* 描述:main
......
......@@ -12,15 +12,16 @@ import android.view.animation.LinearInterpolator
import androidx.core.content.ContextCompat
import com.hjq.toast.ToastUtils
import com.mints.flowbox.R
import com.mints.flowbox.ad.express.ExpressManager
import com.mints.flowbox.manager.DownloadApkManager
import com.mints.flowbox.manager.wifi.NetSpeed
import com.mints.flowbox.ui.activitys.base.BaseActivity
import com.mints.flowbox.ui.widgets.dialog.DialogListener
import com.mints.flowbox.ui.widgets.dialog.DialogUtils
import com.mints.flowbox.utils.PingNet
import com.mints.flowbox.utils.WifiUtils
import kotlinx.android.synthetic.main.activity_speed_test.*
import kotlinx.android.synthetic.main.header_layout.*
import java.util.*
private val TAG = SpeedTestActivity::class.java.simpleName
......@@ -31,9 +32,9 @@ private val TAG = SpeedTestActivity::class.java.simpleName
@SuppressLint("SetTextI18n")
class SpeedTestActivity : BaseActivity(), View.OnClickListener {
private val wifiManager by lazy {
WifiUtils.getInstance(this)
}
// private val wifiManager by lazy {
// WifiUtils.getInstance(this)
// }
private var isAnimFinished = true //播放动画控制
......@@ -42,6 +43,8 @@ class SpeedTestActivity : BaseActivity(), View.OnClickListener {
private var mRxSpeedList = mutableListOf<Float>() //是否测速完成
private var mTxSpeedList = mutableListOf<Float>() //是否测速完成
private var mTimer: Timer? = null
override fun getContentViewLayoutID() = R.layout.activity_speed_test
override fun isApplyKitKatTranslucency() = false
......@@ -50,6 +53,24 @@ class SpeedTestActivity : BaseActivity(), View.OnClickListener {
initView()
ping()
startTest()
startTimer()
}
/** 开启定时器 */
private fun startTimer() {
mTimer = Timer()
var step = 0
mTimer?.schedule(object : TimerTask() {
override fun run() {
step++
if (step == 5) {
DownloadApkManager.instance.destroy()
endTest()
}
}
}, 0, 1000)
}
private fun ping() {
......@@ -93,22 +114,6 @@ class SpeedTestActivity : BaseActivity(), View.OnClickListener {
ToastUtils.show("正在测速中...")
return
}
// 是否是wifi环境
if (wifiManager.isWifiConnected(mContext)) {
startTest()
} else {
DialogUtils.showDialog(
this,
"当前不是Wifi环境,测速可能耗费较大数据流量,您是否需要继续测速?",
"提示",
"确定测速",
object : DialogListener() {
override fun onClick(dialog: Dialog?, v: View?) {
startTest()
}
})
}
}
else -> {
}
......@@ -159,11 +164,13 @@ class SpeedTestActivity : BaseActivity(), View.OnClickListener {
btn_start.text = "正在测速"
btn_start.setBackgroundResource(R.drawable.shape_tv_gold_gury)
btn_start.setTextColor(ContextCompat.getColor(mContext, R.color.color_ccc))
btn_start.isEnabled = false
}
override fun onSpeedTestOver() {
btn_start.text = "测速完成"
btn_start.setTextColor(ContextCompat.getColor(mContext, R.color.color_main))
btn_start.setBackgroundResource(R.drawable.btn_stroke_main)
isSpeedTestOver = true
......@@ -194,38 +201,41 @@ class SpeedTestActivity : BaseActivity(), View.OnClickListener {
}
val averageRx = sum / (mRxSpeedList.size - 1)
sum = 0f
for (d in mTxSpeedList) {
sum += d
}
val averageTx: Float = sum / (mTxSpeedList.size - 1)
DialogUtils.showDialog(
this,
"您当前网络下载平均速率为" + NetSpeed.getShowStr(averageRx),
"提示",
"确定",
object : DialogListener() {
override fun onClick(dialog: Dialog?, v: View?) {
super.onClick(dialog, v)
tvRxSpeed.text = NetSpeed.getShowStr(averageRx)
tvTxSpeed.text = NetSpeed.getShowStr(averageTx)
val bundle = Bundle()
bundle.putString(
IncreasespeedActivity.INCREASE_TYPE,
IncreasespeedActivity.INCREASE_SPEED_TEST
)
bundle.putString(
IncreasespeedActivity.INCREASE_WIFI_SPEED,
"" + averageRx
)
readyGo(IncreasespeedActivity::class.java, bundle)
dialog?.dismiss()
}
})
// sum = 0f
// for (d in mTxSpeedList) {
// sum += d
// }
// val averageTx: Float = sum / (mTxSpeedList.size - 1)
// tvRxSpeed.text = NetSpeed.getShowStr(averageRx)
// tvTxSpeed.text = NetSpeed.getShowStr(averageTx)
// 预加载信息流
ExpressManager.loadExpress()
val bundle = Bundle()
bundle.putString(
IncreasespeedActivity.INCREASE_TYPE,
IncreasespeedActivity.INCREASE_SPEED_TEST
)
bundle.putString(
IncreasespeedActivity.INCREASE_WIFI_SPEED,
NetSpeed.getShowStr(averageRx)
)
readyGoThenKill(IncreasespeedActivity::class.java, bundle)
// DialogUtils.showDialog(
// this,
// "您当前网络下载平均速率为" + NetSpeed.getShowStr(averageRx),
// "提示",
// "确定",
// object : DialogListener() {
// override fun onClick(dialog: Dialog?, v: View?) {
// super.onClick(dialog, v)
//
// dialog?.dismiss()
// }
// })
}
/** 使用动画插值器更新ui */
......
package com.mints.flowbox.ui.adapter
import android.content.Context
import android.text.TextUtils
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.widget.ImageView
import android.widget.TextView
import androidx.recyclerview.widget.RecyclerView
import com.mints.flowbox.R
import com.mints.flowbox.ui.adapter.listener.OnItemClickListener
class IncreaseAdapter(val context: Context, val taskData: MutableList<String>) :
RecyclerView.Adapter<RecyclerView.ViewHolder>() {
private var mOnItemClickListener: OnItemClickListener? = null
fun setOnItemClickListener(onItemClickListener: OnItemClickListener) {
mOnItemClickListener = onItemClickListener
}
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): RecyclerView.ViewHolder {
val inflater: LayoutInflater = LayoutInflater.from(context)
return IncreaseHolder(inflater.inflate(R.layout.item_recyclerview_increase, parent, false))
}
override fun getItemCount(): Int {
return taskData.size
}
override fun onBindViewHolder(holder: RecyclerView.ViewHolder, position: Int) {
holder.itemView.setOnClickListener {
mOnItemClickListener?.onItemClick(it, position)
}
val increaseHolder = holder as IncreaseHolder
increaseHolder.tv1.text = taskData[position]
if (TextUtils.isEmpty(taskData[position])) {
increaseHolder.iv1.visibility = View.GONE
} else {
increaseHolder.iv1.visibility = View.VISIBLE
}
}
private inner class IncreaseHolder(itemView: View) : RecyclerView.ViewHolder(itemView) {
val tv1: TextView = itemView.findViewById(R.id.tv1)
val iv1: ImageView = itemView.findViewById(R.id.iv1)
}
}
\ No newline at end of file
package com.mints.flowbox.ui.adapter
import android.content.Context
import android.content.Intent
import android.graphics.Color
import android.provider.Settings
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
......@@ -30,7 +32,7 @@ class MainWifiAdapter(val context: Context, val taskData: MutableList<WifiListBe
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): RecyclerView.ViewHolder {
if (viewType == FriendsInvitedAdapter.HOLDER_TYPE_EMPTY) {
val emptyView =
LayoutInflater.from(parent.context).inflate(R.layout.item_empty, parent, false)
LayoutInflater.from(parent.context).inflate(R.layout.item_wifi_empty, parent, false)
return EmptyHolder(emptyView)
}
......@@ -55,8 +57,10 @@ class MainWifiAdapter(val context: Context, val taskData: MutableList<WifiListBe
override fun onBindViewHolder(holder: RecyclerView.ViewHolder, position: Int) {
if (holder is EmptyHolder) {
holder.itemView.findViewById<ImageView>(R.id.iv_empty)
.setImageResource(R.mipmap.ic_main_wifi_error)
holder.itemView.findViewById<Button>(R.id.btn)
.setOnClickListener {
context.startActivity(Intent(Settings.ACTION_WIFI_SETTINGS))
}
return
}
......@@ -85,7 +89,7 @@ class MainWifiAdapter(val context: Context, val taskData: MutableList<WifiListBe
private inner class WifiHolder(itemView: View) : RecyclerView.ViewHolder(itemView) {
val ivWifiSignal: ImageView = itemView.findViewById(R.id.iv_signal)
val itemWifiName: TextView = itemView.findViewById(R.id.item_wifi_name)
val btnConnect: Button = itemView.findViewById(R.id.btn_connected)
val btnConnect: TextView = itemView.findViewById(R.id.btn_connected)
}
inner class EmptyHolder(itemView: View) : RecyclerView.ViewHolder(itemView)
......
......@@ -36,6 +36,7 @@ import com.mints.flowbox.ui.widgets.seekbar.BubbleUtils
import com.mints.flowbox.utils.SpanUtils
import com.mints.flowbox.utils.SystemUtils
import com.mints.flowbox.utils.WifiUtils
import com.mints.library.net.netstatus.NetUtils
import com.mints.library.utils.nodoubleclick.AntiShake
import com.tbruyelle.rxpermissions.RxPermissions
import kotlinx.android.synthetic.main.fragment_wifi.*
......@@ -78,7 +79,7 @@ class WifiFragment : BaseFragment(), View.OnClickListener, OnItemClickListener,
if (AppConfig.fragmentClickFlag == Constant.FRAGMENT_CLICK_THREE) {
loadWifiData()
if(!TextUtils.isEmpty(UserManager.getInstance().userID)){
if (!TextUtils.isEmpty(UserManager.getInstance().userID)) {
(requireActivity() as MainActivity).refreshHall()
}
}
......@@ -88,7 +89,6 @@ class WifiFragment : BaseFragment(), View.OnClickListener, OnItemClickListener,
initRecy()
initView()
initListener()
AppConfig.fakeSaveBatteryCount = 2 + Random.nextInt(9)
}
@SuppressLint("SetTextI18n")
......@@ -276,6 +276,11 @@ class WifiFragment : BaseFragment(), View.OnClickListener, OnItemClickListener,
when (v?.id) {
R.id.tv_safe -> { // 安全检测
if (!NetUtils.isNetworkConnected(context)) {
showToast("网络异常,请检测网络")
return
}
// 预加载信息流
ExpressManager.loadExpress()
......@@ -287,6 +292,11 @@ class WifiFragment : BaseFragment(), View.OnClickListener, OnItemClickListener,
readyGo(Increasespeed2Activity::class.java, bundle)
}
R.id.tv_speed_test -> { // 网络测速
if (!NetUtils.isNetworkConnected(context)) {
showToast("网络异常,请检测网络")
return
}
// 预加载信息流
ExpressManager.loadExpress()
......@@ -327,7 +337,10 @@ class WifiFragment : BaseFragment(), View.OnClickListener, OnItemClickListener,
bundle.putInt(Constant.SCAN_TYPE, 1)
readyGo(CleanActivity::class.java, bundle)
} else {
// 一键清理
// val bundle = Bundle()
// bundle.putInt(Constant.SCAN_TYPE, 1)
// readyGo(CleanActivity::class.java, bundle)
}
}
R.id.tv_save_battery -> { // 超强省电
......@@ -384,6 +397,8 @@ class WifiFragment : BaseFragment(), View.OnClickListener, OnItemClickListener,
startActivity(Intent(Settings.ACTION_WIFI_SETTINGS))
}
// 预加载信息流
ExpressManager.loadExpress()
val bundle = Bundle()
bundle.putString(
Increasespeed2Activity.INCREASE2_TYPE,
......
......@@ -11,6 +11,7 @@ import android.view.animation.ScaleAnimation
import android.widget.FrameLayout
import android.widget.ImageView
import com.mints.flowbox.R
import com.mints.library.utils.GlideUtils
/**
* 圆形线框等动画
......@@ -22,36 +23,30 @@ class CircleCleanAnimationView @JvmOverloads constructor(
defStyleAttr: Int = 0,
defStyleRes: Int = 0
) : FrameLayout(context, attrs, defStyleAttr) {
private var paintOut //外圈画笔
: Paint? = null
private var paintIn: Paint? = null
private var paintIn2 //内圈画笔
: Paint? = null
private var bitmap: Bitmap? = null
private lateinit var paintOut: Paint //外圈画笔
private lateinit var paintIn: Paint
private lateinit var paintIn2: Paint //内圈画笔
private lateinit var bitmap: Bitmap
private var centerDrawableId = R.mipmap.ic_speed //中心图片ID
private var im_Center: ImageView? = null
private var im_in: ImageView? = null
private var im_out //中心图片控件,
: ImageView? = null
private var rotateAnimation //旋转动画
: RotateAnimation? = null
private var scaleAnimation //放大缩小动画
: ScaleAnimation? = null
private val PARENT_WIDTH = 400 //整个View的宽度
private val imageCenterWidth = 200 //中心图片的宽度
private val imageCenterHeight = 200 //中心图片的高度
private var im_out: ImageView? = null//中心图片控件
private var rotateAnimation: RotateAnimation? = null //旋转动画
private var scaleAnimation: ScaleAnimation? = null//放大缩小动画
private val imageCenterWidth = 400 //中心图片的宽度
private val imageCenterHeight = 400 //中心图片的高度
private val LineStrokeWidth = 8 //线框的宽度
private fun init(
context: Context,
attrs: AttributeSet?
) {
val typedArray =
context.obtainStyledAttributes(attrs, R.styleable.CircleAnimationView)
if (typedArray != null) {
centerDrawableId =
typedArray.getResourceId(R.styleable.CircleAnimationView_image, R.mipmap.ic_speed)
typedArray.recycle()
}
val typedArray = context.obtainStyledAttributes(attrs, R.styleable.CircleAnimationView)
centerDrawableId = typedArray.getResourceId(
R.styleable.CircleAnimationView_image,
R.mipmap.ic_speed
)
typedArray.recycle()
bitmap = BitmapFactory.decodeResource(resources, centerDrawableId)
initPaint()
initAnimation()
......@@ -63,41 +58,44 @@ class CircleCleanAnimationView @JvmOverloads constructor(
*/
private fun initPaint() {
paintOut = Paint()
paintOut!!.isAntiAlias = true //抗锯齿
paintOut!!.isDither = true //防抖
paintOut!!.style = Paint.Style.STROKE //空心圆
paintOut!!.strokeWidth = LineStrokeWidth.toFloat() //线的宽度
paintOut!!.color = Color.parseColor("#1a00aaff") // 设置圆弧的颜色
paintOut.isAntiAlias = true //抗锯齿
paintOut.isDither = true //防抖
paintOut.style = Paint.Style.STROKE //空心圆
paintOut.strokeWidth = LineStrokeWidth.toFloat() //线的宽度
paintOut.color = Color.parseColor("#10000000") // 设置圆弧的颜色
paintIn = Paint()
paintIn!!.isAntiAlias = true
paintIn!!.isDither = true
paintIn!!.style = Paint.Style.STROKE
paintIn!!.strokeWidth = LineStrokeWidth.toFloat()
paintIn.isAntiAlias = true
paintIn.isDither = true
paintIn.style = Paint.Style.STROKE
paintIn.strokeWidth = LineStrokeWidth.toFloat()
val linearGradient = LinearGradient(
0f,
0f,
0f,
200f,
Color.parseColor("#11d4ff"),
Color.parseColor("#FFDD0C"),
// Color.parseColor("#11d4ff"),
Color.parseColor("#0000b3ff"),
Shader.TileMode.MIRROR
) //渐变色
paintIn!!.shader = linearGradient
)
//渐变色
paintIn.shader = linearGradient
paintIn2 = Paint()
paintIn2!!.isAntiAlias = true
paintIn2!!.isDither = true
paintIn2!!.style = Paint.Style.STROKE
paintIn2!!.strokeWidth = LineStrokeWidth.toFloat()
paintIn2.isAntiAlias = true
paintIn2.isDither = true
paintIn2.style = Paint.Style.STROKE
paintIn2.strokeWidth = LineStrokeWidth.toFloat()
val linearGradient2 = LinearGradient(
0f,
0f,
0f,
200f,
Color.parseColor("#0000b3ff"),
Color.parseColor("#11d4ff"),
// Color.parseColor("#11d4ff"),
Color.parseColor("#7EE2FF"),
Shader.TileMode.MIRROR
) //渐变色
paintIn2!!.shader = linearGradient2
paintIn2.shader = linearGradient2
}
/**
......@@ -128,8 +126,7 @@ class CircleCleanAnimationView @JvmOverloads constructor(
* 初始化View
*/
private fun initViews() {
val layoutParams =
LayoutParams(imageCenterWidth, imageCenterHeight)
val layoutParams = LayoutParams(imageCenterWidth, imageCenterHeight)
layoutParams.gravity = Gravity.CENTER
//中心的那张图片
......@@ -139,8 +136,8 @@ class CircleCleanAnimationView @JvmOverloads constructor(
//旋转线框(内圈)
im_in = ImageView(context)
val inWidth = imageCenterWidth + 45
val inHeight = imageCenterHeight + 45
val inWidth = imageCenterWidth + 95
val inHeight = imageCenterHeight + 95
val bitmapIn = Bitmap.createBitmap(
inWidth,
inHeight,
......@@ -162,8 +159,8 @@ class CircleCleanAnimationView @JvmOverloads constructor(
//放大缩小线框
im_out = ImageView(context)
val outWidth = inWidth + 50
val outHeight = inWidth + 50
val outWidth = inWidth + 100
val outHeight = inWidth + 100
val bitmapOut = Bitmap.createBitmap(
outWidth,
outHeight,
......@@ -174,7 +171,7 @@ class CircleCleanAnimationView @JvmOverloads constructor(
outWidth / 2.toFloat(),
outHeight / 2.toFloat(),
(outWidth - LineStrokeWidth) / 2.toFloat(),
paintOut!!
paintOut
)
im_out!!.setImageBitmap(bitmapOut)
val layoutParamsOut =
......@@ -189,7 +186,8 @@ class CircleCleanAnimationView @JvmOverloads constructor(
*/
fun setCenterImageView(drawableId: Int) {
if (im_Center != null) {
im_Center!!.setImageResource(drawableId)
GlideUtils.loadImageViewGif(context, drawableId, im_Center)
// im_Center!!.setImageResource(drawableId)
}
}
......
package com.mints.flowbox.ui.widgets;
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Paint;
import android.graphics.RectF;
import android.util.AttributeSet;
import android.view.View;
import com.mints.flowbox.R;
/**
* DrawHook
* Created by Zane on 2015/3/4.
*/
public class DrawHookView extends View {
//绘制圆弧的进度值
private int progress = 0;
//线1的x轴
private int line1_x = 0;
//线1的y轴
private int line1_y = 0;
//线2的x轴
private int line2_x = 0;
//线2的y轴
private int line2_y = 0;
public DrawHookView(Context context) {
super(context);
}
public DrawHookView(Context context, AttributeSet attrs) {
super(context, attrs);
}
public DrawHookView(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
}
//绘制
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
progress++;
/**
* 绘制圆弧
*/
Paint paint = new Paint();
//设置画笔颜色
paint.setColor(getResources().getColor(R.color.white));
//设置圆弧的宽度
paint.setStrokeWidth(8);
//设置圆弧为空心
paint.setStyle(Paint.Style.STROKE);
//消除锯齿
paint.setAntiAlias(true);
//获取圆心的x坐标
int center = getWidth() / 2;
int center1 = center - getWidth() / 5;
//圆弧半径
int radius = getWidth() / 2 - 5;
//定义的圆弧的形状和大小的界限
RectF rectF = new RectF(center - radius - 1, center - radius - 1, center + radius + 1, center + radius + 1);
//根据进度画圆弧
canvas.drawArc(rectF, -180, -360 * progress / 100, false, paint);
/**
* 绘制对勾
*/
//先等圆弧画完,才话对勾
if (progress >= 100) {
if (line1_x < radius / 3) {
line1_x++;
line1_y++;
}
//画第一根线
canvas.drawLine(center1, center, center1 + line1_x, center + line1_y, paint);
if (line1_x == radius / 3) {
line2_x = line1_x;
line2_y = line1_y;
line1_x++;
line1_y++;
}
if (line1_x >= radius / 3 && line2_x <= radius) {
line2_x++;
line2_y--;
}
//画第二根线
canvas.drawLine(center1 + line1_x - 1, center + line1_y, center1 + line2_x, center + line2_y, paint);
}
//每隔10毫秒界面刷新
postInvalidateDelayed(10);
}
}
......@@ -25,7 +25,7 @@ public class CustomDialogAsApple extends BaseDialog {
private final TextView dialog_tv_title, dialog_tv_content;
private final Button dialog_btn_left, dialog_btn_right;
private final View dialog_v_line;
// private final View dialog_v_line;
public CustomDialogAsApple(Context context) {
super(context, R.style.dialog);
......@@ -50,7 +50,7 @@ public class CustomDialogAsApple extends BaseDialog {
dialog_tv_content.setMovementMethod(ScrollingMovementMethod.getInstance());
dialog_btn_left = findViewById(R.id.dialog_btn_left);
dialog_btn_right = findViewById(R.id.dialog_btn_right);
dialog_v_line = findViewById(R.id.dialog_v_line);
// dialog_v_line = findViewById(R.id.dialog_v_line);
}
public void setLeftClickListener(DialogListener listener) {
......@@ -153,10 +153,10 @@ public class CustomDialogAsApple extends BaseDialog {
dialog_btn_right.setText(s);
if (TextUtils.isEmpty(dialog_btn_left.getText())) {
dialog_btn_left.setVisibility(View.GONE);
dialog_v_line.setVisibility(View.GONE);
// dialog_v_line.setVisibility(View.GONE);
} else {
dialog_btn_right.setVisibility(View.VISIBLE);
dialog_v_line.setVisibility(View.VISIBLE);
// dialog_v_line.setVisibility(View.VISIBLE);
dialog_btn_right.setEnabled(false);
......
......@@ -103,40 +103,46 @@ public class WifiUtils {
*/
public List<ScanResult> getWifiList() {
List<ScanResult> resultList = new ArrayList<>();
if (wifiManager != null && isWifiEnable()) {
resultList.addAll(getScanList());
List<ScanResult> scanList = getScanList();
if (wifiManager != null && isWifiEnable() && scanList != null) {
resultList.addAll(scanList);
}
return resultList;
}
public List<ScanResult> getScanList() {
if (wifiManager != null) {
List<ScanResult> olist = wifiManager.getScanResults();
if (olist != null) {
List<ScanResult> nlist = new ArrayList<>();
WifiInfo info = wifiManager.getConnectionInfo();
for (int i = 0; i < olist.size(); i++) {
if (info != null && info.getBSSID().equals(olist.get(i).BSSID)) {
// 当前已连接设备不显示在列表中
continue;
}
// 该热点SSID是否已在列表中
int position = getItemPosition(nlist, olist.get(i));
if (position != -1) { // 已在列表
// 相同SSID热点,取信号强的
if (nlist.get(position).level < olist.get(i).level) {
nlist.remove(position);
nlist.add(position, olist.get(i));
try {
List<ScanResult> olist = wifiManager.getScanResults();
if (olist != null) {
List<ScanResult> nlist = new ArrayList<>();
WifiInfo info = wifiManager.getConnectionInfo();
for (int i = 0; i < olist.size(); i++) {
if (info != null && info.getBSSID().equals(olist.get(i).BSSID)) {
// 当前已连接设备不显示在列表中
continue;
}
// 该热点SSID是否已在列表中
int position = getItemPosition(nlist, olist.get(i));
if (position != -1) { // 已在列表
// 相同SSID热点,取信号强的
if (nlist.get(position).level < olist.get(i).level) {
nlist.remove(position);
nlist.add(position, olist.get(i));
}
} else {
nlist.add(olist.get(i));
}
} else {
nlist.add(olist.get(i));
}
if (comparator != null) {
// 按信号强度排序
Collections.sort(nlist, comparator);
}
return nlist;
}
if (comparator != null) {
// 按信号强度排序
Collections.sort(nlist, comparator);
}
return nlist;
} catch (Exception e) {
e.printStackTrace();
}
}
return null;
......
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="500">
<translate
android:fromXDelta="-100%p"
android:interpolator="@android:anim/decelerate_interpolator"
android:toXDelta="0" />
</set>
\ No newline at end of file
......@@ -6,6 +6,6 @@
<stroke
android:width="1dp"
android:color="@color/color_666" />
android:color="@color/color_ccc" />
</shape>
\ No newline at end of file
......@@ -9,11 +9,17 @@
android:layout_width="match_parent"
android:layout_height="match_parent" />
<ImageView
android:id="@+id/ivAnim"
android:layout_width="200dp"
android:layout_height="wrap_content"
<com.mints.flowbox.ui.widgets.CircleCleanAnimationView
android:id="@+id/ccav_speed"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center" />
<!-- <ImageView-->
<!-- android:id="@+id/ivAnim"-->
<!-- android:layout_width="200dp"-->
<!-- android:layout_height="wrap_content"-->
<!-- android:layout_gravity="center" />-->
</FrameLayout>
......@@ -6,12 +6,6 @@
<include layout="@layout/header_layout" />
<!-- <androidx.core.widget.NestedScrollView-->
<!-- android:layout_width="match_parent"-->
<!-- android:layout_height="match_parent"-->
<!-- android:background="@mipmap/bg_clean"-->
<!-- android:overScrollMode="never">-->
<com.mints.flowbox.ui.widgets.InterceptFrameLayout
android:id="@+id/container"
android:layout_width="match_parent"
......@@ -42,13 +36,11 @@
android:id="@+id/elv_clean"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginTop="200dp"
android:layout_marginTop="210dp"
android:groupIndicator="@null" />
</com.mints.flowbox.ui.widgets.InterceptFrameLayout>
<!-- </androidx.core.widget.NestedScrollView>-->
<com.mints.flowbox.ui.widgets.ProgressButton
android:id="@+id/btnClean"
android:layout_width="match_parent"
......@@ -57,7 +49,6 @@
android:layout_marginTop="10dp"
android:layout_marginRight="20dp"
android:layout_marginBottom="10dp"
android:background="@drawable/shape_btn_clean"
android:gravity="center"
android:text="正在扫描中..."
android:textColor="@color/white"
......
......@@ -21,12 +21,12 @@
android:layout_height="wrap_content"
android:layout_marginTop="60dp">
<ImageView
android:id="@+id/im_right"
<com.mints.flowbox.ui.widgets.DrawHookView
android:id="@+id/dhv"
android:layout_width="60dp"
android:layout_height="60dp"
android:layout_marginStart="38dp"
android:src="@mipmap/bg_speed_right" />
android:layout_centerVertical="true"
android:layout_marginStart="40dp" />
<TextView
android:id="@+id/tv_title_1"
......@@ -34,7 +34,7 @@
android:layout_height="wrap_content"
android:layout_marginStart="24dp"
android:layout_marginTop="5dp"
android:layout_toEndOf="@id/im_right"
android:layout_toEndOf="@id/dhv"
android:text="运行速度已提升"
android:textColor="#FFFFFF"
android:textSize="20sp" />
......
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
......@@ -26,26 +24,25 @@
android:layout_marginTop="30dp"
android:visibility="gone">
<ImageView
android:id="@+id/im_right"
android:layout_width="60dp"
android:layout_height="60dp"
android:src="@mipmap/bg_speed_right" />
<com.mints.flowbox.ui.widgets.DrawHookView
android:id="@+id/dhv"
android:layout_width="50dp"
android:layout_height="50dp" />
<TextView
android:id="@+id/tv_title_1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginStart="24dp"
android:layout_marginTop="5dp"
android:layout_toEndOf="@id/im_right"
android:layout_marginStart="20dp"
android:layout_toEndOf="@id/dhv"
android:textColor="#FFFFFF"
android:textSize="20sp" />
</RelativeLayout>
<RelativeLayout
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/recycleView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="15dp"
......@@ -54,148 +51,9 @@
android:background="@drawable/shape_gold_card"
android:elevation="2dip"
android:paddingStart="10dp"
android:paddingTop="30dp"
android:paddingTop="20dp"
android:paddingEnd="10dp"
android:paddingBottom="30dp">
<TextView
android:id="@+id/tv1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="检测结果WiFi加密安全性"
android:textColor="@color/black" />
<ImageView
android:layout_width="20dp"
android:layout_height="20dp"
android:layout_alignTop="@id/tv1"
android:layout_alignParentEnd="true"
android:src="@mipmap/bg_right" />
<View
android:id="@+id/view1"
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_below="@+id/tv1"
android:layout_marginTop="10dp"
android:layout_marginBottom="10dp"
android:background="#979797" />
<TextView
android:id="@id/tv2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/view1"
android:text="检查ARP网络攻击异常"
android:textColor="@color/black" />
<ImageView
android:layout_width="20dp"
android:layout_height="20dp"
android:layout_below="@id/view1"
android:layout_alignTop="@id/tv2"
android:layout_alignParentEnd="true"
android:src="@mipmap/bg_right" />
<View
android:id="@+id/view2"
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_below="@+id/tv2"
android:layout_marginTop="10dp"
android:layout_marginBottom="10dp"
android:background="#979797" />
<TextView
android:id="@+id/tv3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/view2"
android:text="提升DNS劫持安全性"
android:textColor="@color/black" />
<ImageView
android:layout_width="20dp"
android:layout_height="20dp"
android:layout_below="@+id/view2"
android:layout_alignTop="@id/tv3"
android:layout_alignParentEnd="true"
android:src="@mipmap/bg_right" />
<View
android:id="@id/view3"
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_below="@id/tv3"
android:layout_marginTop="10dp"
android:layout_marginBottom="10dp"
android:background="#979797" />
<TextView
android:id="@+id/tv4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/view3"
android:text="部署网页防篡改"
android:textColor="@color/black" />
<ImageView
android:layout_width="20dp"
android:layout_height="20dp"
android:layout_below="@+id/view3"
android:layout_alignTop="@id/tv4"
android:layout_alignParentEnd="true"
android:src="@mipmap/bg_right" />
<View
android:id="@+id/view4"
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_below="@+id/tv4"
android:layout_marginTop="10dp"
android:layout_marginBottom="10dp"
android:background="#979797" />
<TextView
android:id="@+id/tv5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/view4"
android:text="加固链路,避免SSL中间人攻击"
android:textColor="@color/black" />
<ImageView
android:layout_width="20dp"
android:layout_height="20dp"
android:layout_below="@+id/view4"
android:layout_alignTop="@id/tv5"
android:layout_alignParentEnd="true"
android:src="@mipmap/bg_right" />
<View
android:id="@+id/view5"
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_below="@id/tv5"
android:layout_marginTop="10dp"
android:layout_marginBottom="10dp"
android:background="#979797" />
<TextView
android:id="@+id/tv6"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/view5"
android:text="检测是否钓鱼WiFi"
android:textColor="@color/black" />
<ImageView
android:layout_width="20dp"
android:layout_height="20dp"
android:layout_below="@+id/view5"
android:layout_alignParentEnd="true"
android:src="@mipmap/bg_right" />
</RelativeLayout>
android:paddingBottom="30dp" />
<com.mints.flowbox.ui.widgets.RoundRectLayout
android:id="@+id/fl_ad"
......
......@@ -57,9 +57,11 @@
android:textColor="@color/color_main"
android:textSize="14sp" />
<View
android:id="@+id/dialog_v_line"
style="@style/erect_2" />
<!-- <View-->
<!-- android:id="@+id/dialog_v_line"-->
<!-- android:layout_width="1dp"-->
<!-- android:layout_height="match_parent"-->
<!-- android:background="@color/color_main" />-->
<Button
android:id="@+id/dialog_btn_right"
......
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginTop="30dp"
android:background="@color/transparent">
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/fl_container"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="50dp"
android:layout_marginEnd="50dp"
android:layout_marginBottom="20dp"
app:layout_constraintBottom_toTopOf="@id/linearLayout"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent">
<ImageView
android:id="@+id/item_iv_bg"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:background="@drawable/shape_gold_card"
android:padding="10dp"
app:layout_constraintBottom_toBottomOf="@id/item_iv_bg"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent">
<com.mints.camera.ui.widget.CircleImageView
android:id="@+id/item_iv_avatar"
android:layout_width="40dp"
android:layout_height="40dp"
android:layout_centerVertical="true"
app:layout_constraintBottom_toBottomOf="@id/item_iv_qrcode"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginStart="10dp"
android:layout_marginEnd="10dp"
android:layout_toEndOf="@id/item_iv_avatar"
android:orientation="vertical"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@id/item_iv_qrcode"
app:layout_constraintHorizontal_weight="1"
app:layout_constraintStart_toEndOf="@+id/item_iv_avatar"
app:layout_constraintTop_toTopOf="parent">
<TextView
android:id="@+id/item_tv_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ellipsize="end"
android:lines="1"
android:textColor="@color/black"
android:textSize="12sp" />
<TextView
android:id="@+id/item_tv_info"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="2dp"
android:layout_marginBottom="2dp"
android:textSize="8sp" />
</LinearLayout>
<ImageView
android:id="@+id/item_iv_qrcode"
android:layout_width="50dp"
android:layout_height="50dp"
android:layout_alignParentEnd="true"
android:layout_centerVertical="true"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
<LinearLayout
android:id="@+id/linearLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/shape_tab_friends"
android:orientation="vertical"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="110dp"
android:gravity="center_vertical"
android:orientation="horizontal">
<LinearLayout
android:id="@+id/llDialogShareWx"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1.0"
android:gravity="center"
android:orientation="vertical">
<ImageView
android:layout_width="50dp"
android:layout_height="50dp"
android:src="@mipmap/ic_share_wx" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="6dp"
android:text="微信"
android:textColor="@color/black"
android:textSize="14sp" />
</LinearLayout>
<LinearLayout
android:id="@+id/llDialogShareQq"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1.0"
android:gravity="center"
android:orientation="vertical">
<ImageView
android:layout_width="50dp"
android:layout_height="50dp"
android:layout_gravity="center_horizontal"
android:src="@mipmap/ic_wx_friends" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="6dp"
android:text="朋友圈"
android:textColor="@color/black"
android:textSize="14sp" />
</LinearLayout>
</LinearLayout>
<TextView
android:id="@+id/tvDialogShareTips"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="10dp"
android:gravity="center"
android:text="取消"
android:textSize="12sp"
android:visibility="gone" />
<View style="@style/line_3" />
<TextView
android:id="@+id/tvDialogShareNext"
android:layout_width="match_parent"
android:layout_height="40dp"
android:gravity="center"
android:text="取消"
android:textColor="@color/black"
android:textSize="18sp" />
</LinearLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file
......@@ -19,11 +19,13 @@
android:layout_marginStart="20dp"
android:layout_weight="1" />
<Button
<TextView
android:id="@+id/btn_connected"
android:layout_width="70dp"
android:layout_height="30dp"
android:background="@drawable/shape_tv_gold_gury"
android:text="连接" />
android:gravity="center"
android:text="连接"
android:textColor="@color/color_666" />
</androidx.appcompat.widget.LinearLayoutCompat>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:padding="10dp">
<TextView
android:id="@+id/tv1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text=""
android:textColor="@color/black" />
<ImageView
android:id="@+id/iv1"
android:layout_width="20dp"
android:layout_height="20dp"
android:layout_alignTop="@id/tv1"
android:layout_alignParentEnd="true"
android:src="@mipmap/bg_right" />
</RelativeLayout>
\ 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="100dp"
android:layout_height="match_parent"
android:gravity="center_horizontal"
android:orientation="vertical"
android:paddingTop="20dp"
android:paddingBottom="20dp">
android:padding="10dp">
<ImageView
android:id="@+id/iv_empty"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@mipmap/ic_main_wifi_error" />
<TextView
android:id="@+id/item_bottom_tel"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="客服电话:4000000000" />
android:layout_marginTop="20dp"
android:text="WIFI开关未开启"
android:textColor="@color/black"
android:textSize="18sp" />
<TextView
android:id="@+id/item_bottom_version"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:text="v1.0.0" />
android:layout_marginTop="2dp"
android:text="需要打开开关,才能看到附件的WIFI" />
<Button
android:id="@+id/btn"
android:layout_width="140dp"
android:layout_height="46dp"
android:layout_marginTop="15dp"
android:layout_marginBottom="10dp"
android:background="@drawable/shape_main"
android:text="立即开启"
android:textColor="@color/white"
android:textSize="18sp"
android:textStyle="bold" />
</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="wrap_content"
android:layout_height="wrap_content"
android:gravity="center_horizontal"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/shape_tv_gold"
android:paddingStart="10dp"
android:paddingTop="6dp"
android:paddingEnd="10dp"
android:paddingBottom="6dp"
android:text="新用户奖励5元现金"
android:textColor="@color/white" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/shape_tint" />
</LinearLayout>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/white">
<View
android:id="@+id/container"
android:layout_width="match_parent"
android:layout_height="match_parent" />
<ImageView
android:id="@+id/ivAnim"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center" />
</FrameLayout>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="Theme.Splash" parent="Theme.Light">
<item name="android:windowBackground">@drawable/splash_bg</item>
<item name="android:windowActionBar">false</item>
<item name="windowActionBar">false</item>
<item name="android:windowNoTitle">true</item>
<item name="android:windowFullscreen">true</item>
<item name="android:windowDrawsSystemBarBackgrounds">false</item>
</style>
</resources>
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="color_main">#9D97E0</color>
<color name="color_8B82DC">#8B82DC</color>
<color name="color_red">#FF7479</color>
<color name="color_FF9837">#FF9837</color>
......@@ -29,7 +30,6 @@
<color name="color_454A69">#454A69</color>
<color name="color_333">#333333</color>
<color name="color_00FA9A">#00FA9A</color>
<color name="color_7FFFAA">#7FFFAA</color>
<color name="color_FEB63D">#FEB63D</color>
<color name="color_FFF7CB">#FFF7CB</color>
<color name="color_FF5E5E">#FF5E5E</color>
......@@ -46,7 +46,7 @@
<color name="color_F8F8F8">#F8F8F8</color>
<color name="color_FB560C">#FB560C</color>
<color name="color_EBB20D">#EBB20D</color>
<color name="color_999">#999999</color>color_E6E6E6
<color name="color_999">#999999</color>
<color name="color_555">#555555</color>
<color name="color_F5F">#F5F5F5</color>
<color name="color_F8F">#F8F8F8</color>
......@@ -60,8 +60,6 @@
<color name="color_E72C2B">#E72C2B</color>
<color name="color_FFC7C7">#FFC7C7</color>
<color name="color_FF7C00">#FF7C00</color>
<color name="color_FAF6E8">#FAF6E8</color>
<color name="color_F3E7C5">#F3E7C5</color>
<color name="color_FFE5BD">#FFE5BD</color>
<color name="color_C18529">#C18529</color>
<color name="color_FDEB98">#FDEB98</color>
......
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