Merge remote-tracking branch 'origin/master'
This commit is contained in:
commit
471d1503c8
|
|
@ -14,6 +14,7 @@ plugins {
|
||||||
dependencies {
|
dependencies {
|
||||||
implementation(fileTree(mapOf("dir" to "src/main/libs", "include" to listOf("*.aar"))))
|
implementation(fileTree(mapOf("dir" to "src/main/libs", "include" to listOf("*.aar"))))
|
||||||
implementation("androidx.swiperefreshlayout:swiperefreshlayout:1.1.0")
|
implementation("androidx.swiperefreshlayout:swiperefreshlayout:1.1.0")
|
||||||
|
implementation(files("src\\main\\libs\\OpenInstall_v2.8.5.jar"))
|
||||||
// implementation("com.google.firebase:firebase-crashlytics-buildtools:3.0.2")
|
// implementation("com.google.firebase:firebase-crashlytics-buildtools:3.0.2")
|
||||||
// implementation(files("src/main/libs/openinstall.jar"))
|
// implementation(files("src/main/libs/openinstall.jar"))
|
||||||
|
|
||||||
|
|
@ -123,6 +124,8 @@ dependencies {
|
||||||
api ("com.huawei.hms:ads-identifier:3.4.62.300")
|
api ("com.huawei.hms:ads-identifier:3.4.62.300")
|
||||||
// 荣耀的最新版本广告标识服务SDK,参阅 https://developer.hihonor.com/cn/kitdoc?kitId=11030&navigation=guides&docId=intergrate.md
|
// 荣耀的最新版本广告标识服务SDK,参阅 https://developer.hihonor.com/cn/kitdoc?kitId=11030&navigation=guides&docId=intergrate.md
|
||||||
api ("com.hihonor.mcs:ads-identifier:1.0.2.301")
|
api ("com.hihonor.mcs:ads-identifier:1.0.2.301")
|
||||||
|
implementation("com.android.installreferrer:installreferrer:2.2")// 使用最新版本
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
tasks.getByName("clean", type = Delete::class) {
|
tasks.getByName("clean", type = Delete::class) {
|
||||||
|
|
|
||||||
|
|
@ -56,6 +56,14 @@
|
||||||
android:name="releaseCode"
|
android:name="releaseCode"
|
||||||
android:value="@integer/release_code" />
|
android:value="@integer/release_code" />
|
||||||
|
|
||||||
|
<meta-data
|
||||||
|
android:name="com.openinstall.APP_KEY"
|
||||||
|
android:value="ltbqy7"/>
|
||||||
|
<!-- 使用广告推广-->
|
||||||
|
<meta-data
|
||||||
|
android:name="com.openinstall.AD_TRACK"
|
||||||
|
android:value="true"/>
|
||||||
|
|
||||||
<activity
|
<activity
|
||||||
android:name=".act.SplashActivity"
|
android:name=".act.SplashActivity"
|
||||||
android:exported="true"
|
android:exported="true"
|
||||||
|
|
@ -71,6 +79,14 @@
|
||||||
<intent-filter>
|
<intent-filter>
|
||||||
<action android:name="android.service.quicksettings.action.QS_TILE_PREFERENCES" />
|
<action android:name="android.service.quicksettings.action.QS_TILE_PREFERENCES" />
|
||||||
</intent-filter>
|
</intent-filter>
|
||||||
|
|
||||||
|
<intent-filter>
|
||||||
|
<action android:name="android.intent.action.VIEW"/>
|
||||||
|
<category android:name="android.intent.category.DEFAULT"/>
|
||||||
|
<category android:name="android.intent.category.BROWSABLE"/>
|
||||||
|
<data android:scheme="ltbqy7"/>
|
||||||
|
</intent-filter>
|
||||||
|
|
||||||
</activity>
|
</activity>
|
||||||
<activity
|
<activity
|
||||||
android:name=".act.AgreementAndPrivacyActivity"
|
android:name=".act.AgreementAndPrivacyActivity"
|
||||||
|
|
@ -188,9 +204,9 @@
|
||||||
<meta-data
|
<meta-data
|
||||||
android:name="android.webkit.WebView.EnableSafeBrowsing"
|
android:name="android.webkit.WebView.EnableSafeBrowsing"
|
||||||
android:value="false" />
|
android:value="false" />
|
||||||
<meta-data
|
<!-- <meta-data-->
|
||||||
android:name="com.openinstall.APP_KEY"
|
<!-- android:name="com.openinstall.APP_KEY"-->
|
||||||
android:value="vsiquu" />
|
<!-- android:value="vsiquu" />-->
|
||||||
<!-- <meta-data-->
|
<!-- <meta-data-->
|
||||||
<!-- android:name="com.openinstall.AD_TRACK"-->
|
<!-- android:name="com.openinstall.AD_TRACK"-->
|
||||||
<!-- android:value="true"/>-->
|
<!-- android:value="true"/>-->
|
||||||
|
|
|
||||||
|
|
@ -23,11 +23,18 @@ import androidx.core.app.ActivityCompat
|
||||||
import androidx.core.content.ContextCompat
|
import androidx.core.content.ContextCompat
|
||||||
import androidx.core.content.FileProvider
|
import androidx.core.content.FileProvider
|
||||||
import androidx.lifecycle.ViewModelProvider
|
import androidx.lifecycle.ViewModelProvider
|
||||||
|
import androidx.lifecycle.lifecycleScope
|
||||||
import com.afollestad.materialdialogs.MaterialDialog
|
import com.afollestad.materialdialogs.MaterialDialog
|
||||||
import com.afollestad.materialdialogs.customview.customView
|
import com.afollestad.materialdialogs.customview.customView
|
||||||
import com.bumptech.glide.Glide
|
import com.bumptech.glide.Glide
|
||||||
import com.bumptech.glide.request.target.SimpleTarget
|
import com.bumptech.glide.request.target.SimpleTarget
|
||||||
import com.bumptech.glide.request.transition.Transition
|
import com.bumptech.glide.request.transition.Transition
|
||||||
|
import com.cncat.vpn.service.ClashManager
|
||||||
|
import com.cncat.vpn.service.remote.IClashManager
|
||||||
|
import com.cncat.vpn.service.remote.wrap
|
||||||
|
import com.fm.openinstall.OpenInstall
|
||||||
|
import com.fm.openinstall.listener.AppWakeUpAdapter
|
||||||
|
import com.fm.openinstall.model.AppData
|
||||||
import com.google.gson.JsonObject
|
import com.google.gson.JsonObject
|
||||||
import com.orhanobut.logger.Logger
|
import com.orhanobut.logger.Logger
|
||||||
import com.tencent.mmkv.MMKV
|
import com.tencent.mmkv.MMKV
|
||||||
|
|
@ -42,31 +49,27 @@ import com.yingmao.clash.conf.BZYConstants.Companion.MMKV_KEY_NOTE_DEFAULT_PSW
|
||||||
import com.yingmao.clash.conf.BZYConstants.Companion.MMKV_KEY_REMEMBER_PASSWORD
|
import com.yingmao.clash.conf.BZYConstants.Companion.MMKV_KEY_REMEMBER_PASSWORD
|
||||||
import com.yingmao.clash.conf.BZYConstants.Companion.MMKV_KEY_REMEMBER_USERNAME
|
import com.yingmao.clash.conf.BZYConstants.Companion.MMKV_KEY_REMEMBER_USERNAME
|
||||||
import com.yingmao.clash.entity.CheckLoginRsp
|
import com.yingmao.clash.entity.CheckLoginRsp
|
||||||
import com.yingmao.clash.listener.AsyncCallback
|
import com.yingmao.clash.listener.DownLoadListener
|
||||||
import com.yingmao.clash.net.http.HttpReqType
|
import com.yingmao.clash.net.http.HttpReqType
|
||||||
import com.yingmao.clash.net.http.HttpStatus
|
import com.yingmao.clash.net.http.HttpStatus
|
||||||
|
import com.yingmao.clash.net.http.entity.AppVersionCheckRsp
|
||||||
import com.yingmao.clash.net.http.entity.LoginRsp
|
import com.yingmao.clash.net.http.entity.LoginRsp
|
||||||
import com.yingmao.clash.net.http.entity.RegisterRsp
|
import com.yingmao.clash.net.http.entity.RegisterRsp
|
||||||
import com.cncat.vpn.service.ClashManager
|
|
||||||
import com.cncat.vpn.service.remote.IClashManager
|
|
||||||
import com.cncat.vpn.service.remote.wrap
|
|
||||||
import com.yingmao.clash.listener.DownLoadListener
|
|
||||||
import com.yingmao.clash.net.http.entity.AppVersionCheckRsp
|
|
||||||
import com.yingmao.clash.net.http.entity.StartingBeans
|
import com.yingmao.clash.net.http.entity.StartingBeans
|
||||||
import com.yingmao.clash.util.AESUtil
|
import com.yingmao.clash.util.AESUtil
|
||||||
import com.yingmao.clash.util.Utils
|
import com.yingmao.clash.util.Utils
|
||||||
import com.yingmao.clash.view.RxToast
|
import com.yingmao.clash.view.RxToast
|
||||||
import com.yingmao.clash.view.dialog.DialogAppVersion
|
import com.yingmao.clash.view.dialog.DialogAppVersion
|
||||||
import com.yingmao.clash.view.dialog.DialogBandChoose
|
|
||||||
import com.yingmao.clash.view.dialog.DialogDoMainChoose
|
import com.yingmao.clash.view.dialog.DialogDoMainChoose
|
||||||
import com.yingmao.clash.view.dialog.RxDialogSureCancel
|
import com.yingmao.clash.view.dialog.RxDialogSureCancel
|
||||||
import com.yingmao.clash.vm.SplashAtyVM
|
import com.yingmao.clash.vm.SplashAtyVM
|
||||||
import kotlinx.coroutines.MainScope
|
import kotlinx.coroutines.MainScope
|
||||||
|
import kotlinx.coroutines.async
|
||||||
import kotlinx.coroutines.launch
|
import kotlinx.coroutines.launch
|
||||||
import java.io.File
|
import java.io.File
|
||||||
import java.util.Locale
|
import java.util.Locale
|
||||||
import androidx.lifecycle.lifecycleScope
|
|
||||||
import kotlinx.coroutines.async
|
|
||||||
class SplashActivity : BaseActivity() {
|
class SplashActivity : BaseActivity() {
|
||||||
|
|
||||||
private val deniedPermissions = hashSetOf<String>()
|
private val deniedPermissions = hashSetOf<String>()
|
||||||
|
|
@ -249,8 +252,38 @@ class SplashActivity : BaseActivity() {
|
||||||
// val Sgtr= AESUtil.Registerdecrypt("CCBF308D702235C8F810876987A43AB02B84EBB47DBFF1B915D5FBB29FF2DBAE90DB72D58351D09D223D49E44A2A073D9156E84D6B7EB89D7493A3F0A7240EE076ADC83B5A12AC37616CEDED00643AD1E6851AFECA82E373CB4E518DF2190708F5191AE195758E8EA41A5242A6C94216B64FF8715B35C54CB894113FC93361F32FDA86CF34093DF924230DEBE27A69293C761A9A797A652A1C35C95C27FB5EB4"
|
// val Sgtr= AESUtil.Registerdecrypt("CCBF308D702235C8F810876987A43AB02B84EBB47DBFF1B915D5FBB29FF2DBAE90DB72D58351D09D223D49E44A2A073D9156E84D6B7EB89D7493A3F0A7240EE076ADC83B5A12AC37616CEDED00643AD1E6851AFECA82E373CB4E518DF2190708F5191AE195758E8EA41A5242A6C94216B64FF8715B35C54CB894113FC93361F32FDA86CF34093DF924230DEBE27A69293C761A9A797A652A1C35C95C27FB5EB4"
|
||||||
// ,registerKey,registerIV2)
|
// ,registerKey,registerIV2)
|
||||||
// println("Sgtr==>$Sgtr")
|
// println("Sgtr==>$Sgtr")
|
||||||
|
|
||||||
|
|
||||||
|
OpenInstall.getWakeUp(intent, wakeUpAdapter)
|
||||||
|
OpenInstall.getInstall { appData, error ->
|
||||||
|
var appData = appData
|
||||||
|
if (error != null && error.shouldRetry()) {
|
||||||
|
// 获取数据异常,可以尝试重新获取
|
||||||
|
} else {
|
||||||
|
if (appData == null) appData = AppData()
|
||||||
|
val channelCode = appData.getChannel() // 获取渠道编号参数
|
||||||
|
val bindData = appData.getData() // 获取自定义参数
|
||||||
|
Log.d("OpenInstall", "getInstall : channelCode = $channelCode"+"bindData::"+bindData)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
private var wakeUpAdapter: AppWakeUpAdapter = object : AppWakeUpAdapter() {
|
||||||
|
override fun onWakeUp(appData: AppData) {
|
||||||
|
// 打印数据便于调试
|
||||||
|
Log.d("OpenInstall", "getWakeUp : wakeupData = $appData")
|
||||||
|
// 获取渠道编号参数
|
||||||
|
val channelCode = appData.getChannel()
|
||||||
|
// 获取自定义参数
|
||||||
|
val bindData = appData.getData()
|
||||||
|
Log.d("OpenInstall", "channelCode : bindData = $channelCode"+"bindData::"+bindData)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
override fun onNewIntent(intent: Intent?) {
|
||||||
|
super.onNewIntent(intent)
|
||||||
|
// 此处要调用,否则App在后台运行时,会无法获取
|
||||||
|
OpenInstall.getWakeUp(intent, wakeUpAdapter)
|
||||||
|
}
|
||||||
private fun setLocalLanguage() {
|
private fun setLocalLanguage() {
|
||||||
var defLan = ""
|
var defLan = ""
|
||||||
if (BuildConfig.is_tz) {
|
if (BuildConfig.is_tz) {
|
||||||
|
|
|
||||||
|
|
@ -15,6 +15,7 @@ import androidx.core.content.getSystemService
|
||||||
import com.cncat.vpn.common.Global
|
import com.cncat.vpn.common.Global
|
||||||
import com.cncat.vpn.common.compat.currentProcessName
|
import com.cncat.vpn.common.compat.currentProcessName
|
||||||
import com.cncat.vpn.common.log.Log
|
import com.cncat.vpn.common.log.Log
|
||||||
|
import com.fm.openinstall.OpenInstall
|
||||||
import com.github.gzuliyujiang.oaid.DeviceID
|
import com.github.gzuliyujiang.oaid.DeviceID
|
||||||
import com.github.gzuliyujiang.oaid.DeviceIdentifier
|
import com.github.gzuliyujiang.oaid.DeviceIdentifier
|
||||||
import com.github.gzuliyujiang.oaid.IGetter
|
import com.github.gzuliyujiang.oaid.IGetter
|
||||||
|
|
@ -149,6 +150,8 @@ class MainApplication : Application() {
|
||||||
applicationContext,
|
applicationContext,
|
||||||
"pk_live_51Nkl6vLWP3xWXY4LfXtdMtXzHazv6pav2rH1p1BfICeh5meGGjglExiw4GgmSzWO7NptEM1c549Fe11zRy9nCfxs009zEwLpXP"
|
"pk_live_51Nkl6vLWP3xWXY4LfXtdMtXzHazv6pav2rH1p1BfICeh5meGGjglExiw4GgmSzWO7NptEM1c549Fe11zRy9nCfxs009zEwLpXP"
|
||||||
)
|
)
|
||||||
|
OpenInstall.preInit(applicationContext)
|
||||||
|
OpenInstall.init(applicationContext)
|
||||||
}
|
}
|
||||||
|
|
||||||
fun updateActivity(language: String, locale: Locale) {
|
fun updateActivity(language: String, locale: Locale) {
|
||||||
|
|
|
||||||
Binary file not shown.
Loading…
Reference in New Issue