Commit aed7ddca authored by sheteng's avatar sheteng

市场合规

parent 7a1afc91
......@@ -16,7 +16,6 @@
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> <!-- 访问网络. 某些位置信息需要从网络服务器获取 -->
<uses-permission android:name="android.permission.INTERNET" /> <!-- 访问WiFi状态. 需要WiFi信息用于网络定位 -->
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> <!-- 修改WiFi状态. 发起WiFi扫描, 需要WiFi信息用于网络定位 -->
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" /> <!-- 访问网络状态, 检测网络的可用性. 需要网络运营商相关信息用于网络定位 -->
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <!-- 访问网络的变化, 需要某些信息用于网络定位 -->
<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" /> <!-- 访问手机当前状态, 需要device id用于网络定位 -->
<uses-permission android:name="android.permission.READ_PHONE_STATE" /> <!-- 访问蓝牙状态,需要蓝牙信息用于网络定位 -->
......@@ -56,6 +55,7 @@
android:networkSecurityConfig="@xml/network_security_config"
android:supportsRtl="true"
android:theme="@style/AppTheme"
android:largeHeap="true"
android:usesCleartextTraffic="true">
<activity
android:name=".ui.login.PhoneLoginActivity"
......
......@@ -30,7 +30,6 @@ class App : Application(), androidx.work.Configuration.Provider by Core {
.debug("PageLog") //开启调试
.setContainActivityClazz(XPageActivity::class.java) //设置默认的容器Activity
.init(this)
PhoneUtils.initSdk(this)
// 初始化 Toast 框架
ToastUtils.init(this)
MultiDex.install(this)
......
......@@ -41,7 +41,7 @@ import com.xuexiang.xutil.system.PermissionUtils
import fm.jiecao.jcvideoplayer_lib.JCVideoPlayer
class MainActivity() : XPageActivity(), TencentLocationListener {
class MainActivity() : XPageActivity() {
private val connect = registerForActivityResult(StartService()) {
if (it) {
......@@ -77,6 +77,8 @@ class MainActivity() : XPageActivity(), TencentLocationListener {
if (it) {
SettingSPUtils.isAgreePrivacy = true
DataRePortUtils.report("st_agrmt_ok")
PhoneUtils.initSdk(application)
PhoneUtils.getPhoneInfo()
PermissionDialog(this) {
getPermission()
}.show<PermissionDialog>()
......@@ -86,6 +88,8 @@ class MainActivity() : XPageActivity(), TencentLocationListener {
}.show<PrivacyDialog>()
} else {
PhoneUtils.initSdk(application)
PhoneUtils.getPhoneInfo()
getPermission()
}
......@@ -100,23 +104,11 @@ class MainActivity() : XPageActivity(), TencentLocationListener {
private fun getPermission() {
PermissionUtils.permission(
Manifest.permission.READ_PHONE_STATE,
Manifest.permission.WRITE_EXTERNAL_STORAGE,
Manifest.permission.READ_EXTERNAL_STORAGE,
Manifest.permission.ACCESS_FINE_LOCATION
Manifest.permission.READ_EXTERNAL_STORAGE
).rationale({
}).callback(object : PermissionUtils.FullCallback {
override fun onGranted(permissionsGranted: MutableList<String>?) {
permissionsGranted?.forEach {
if (it.equals(Manifest.permission.ACCESS_FINE_LOCATION)) {
TencentLocationManager.getInstance(this@MainActivity)
.requestSingleFreshLocation(
null,
this@MainActivity,
Looper.getMainLooper()
)
}
}
}
......@@ -131,7 +123,6 @@ class MainActivity() : XPageActivity(), TencentLocationListener {
}
private fun initPhoneUtils() {
PhoneUtils.getPhoneInfo()
//腾讯推送
XGPushManager.registerPush(this, object : XGIOperateCallback {
override fun onSuccess(data: Any, flag: Int) {
......@@ -207,17 +198,5 @@ class MainActivity() : XPageActivity(), TencentLocationListener {
return super.onKeyDown(keyCode, event)
}
override fun onLocationChanged(p0: TencentLocation?, p1: Int, p2: String?) {
if (p1 == 0) {
p0?.province?.let {
AuthManager.area = it
}
}
}
override fun onStatusUpdate(p0: String?, p1: Int, p2: String?) {
println(p0)
}
}
\ No newline at end of file
......@@ -225,6 +225,7 @@ class AcceleratorFragment : XPageFragment() {
DataRePortUtils.report("st_speed_start_clk")
}
}
context?.let { it1 -> AcceleratorUtils.openLocation(it1) }
if (!LoginUtils.hasToken()) {
context?.let { it1 ->
LoginUtils.login(it1, {
......
......@@ -105,14 +105,12 @@ class NewsFragment : XPageFragment() {
var newversion = it.split("/").let { it1->
it1.get(it1.lastIndex - 1).toInt()
}
if (newversion > version) {
if (newversion > version && version!= -1) {
itemView.findViewById<TextView>(R.id.plugin_name).setText("游戏更新")
itemView.findViewById<TextView>(R.id.plugin_name)
.setTextColor(Color.parseColor("#329CF3"))
}
}
}
}
......@@ -189,6 +187,13 @@ class NewsFragment : XPageFragment() {
}
override fun setUserVisibleHint(isVisibleToUser: Boolean) {
super.setUserVisibleHint(isVisibleToUser)
if(isVisibleToUser){
binding.gameNewsList.adapter?.notifyDataSetChanged()
}
}
fun openToWebview(url: String) {
val params = Bundle()
params.putString(CommonWebViewFragment.WEBVIEW_URL_KEY, url)
......
package com.ccwangluo.accelerator.utils
import android.Manifest
import android.annotation.SuppressLint
import android.content.Context
import android.os.Looper
import android.os.RemoteException
import androidx.activity.result.ActivityResultLauncher
import androidx.lifecycle.lifecycleScope
......@@ -24,9 +26,13 @@ import com.github.shadowsocks.database.Profile
import com.github.shadowsocks.database.ProfileManager
import com.github.shadowsocks.preference.DataStore
import com.hjq.toast.ToastUtils
import com.tencent.map.geolocation.TencentLocation
import com.tencent.map.geolocation.TencentLocationListener
import com.tencent.map.geolocation.TencentLocationManager
import com.xuexiang.xpage.base.XPageActivity
import com.xuexiang.xpage.base.XPageFragment
import com.xuexiang.xutil.common.StringUtils
import com.xuexiang.xutil.system.PermissionUtils
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.delay
import kotlinx.coroutines.launch
......@@ -39,7 +45,7 @@ import kotlin.math.roundToInt
* 加速功能工具类
*/
@SuppressLint("StaticFieldLeak")
object AcceleratorUtils {
object AcceleratorUtils : TencentLocationListener {
private val connection = ShadowsocksConnection(true)
......@@ -155,6 +161,35 @@ object AcceleratorUtils {
}
}
fun openLocation(context: Context){
PermissionUtils.permission(
Manifest.permission.ACCESS_FINE_LOCATION
).rationale({
}).callback(object : PermissionUtils.FullCallback {
override fun onGranted(permissionsGranted: MutableList<String>?) {
permissionsGranted?.forEach {
if (it.equals(Manifest.permission.ACCESS_FINE_LOCATION)) {
TencentLocationManager.getInstance(context)
.requestSingleFreshLocation(
null,
this@AcceleratorUtils,
Looper.getMainLooper()
)
}
}
}
override fun onDenied(
permissionsDeniedForever: MutableList<String>?,
permissionsDenied: MutableList<String>?
) {
}
}).request()
}
private fun initAuthProfile(xPageFragment: XPageFragment) {
xPageFragment.lifecycleScope.launch(Dispatchers.IO) {
val profileId = 1L
......@@ -273,5 +308,15 @@ object AcceleratorUtils {
connection.disconnect(context)
}
override fun onLocationChanged(p0: TencentLocation?, p1: Int, p2: String?) {
if (p1 == 0) {
p0?.province?.let {
AuthManager.area = it
}
}
}
override fun onStatusUpdate(p0: String?, p1: Int, p2: String?) {
println(p0)
}
}
\ No newline at end of file
package com.ccwangluo.accelerator.utils
import android.Manifest
import android.app.DownloadManager
import android.content.Context
import android.content.Context.DOWNLOAD_SERVICE
......@@ -15,6 +16,7 @@ import android.util.DisplayMetrics
import androidx.fragment.app.FragmentActivity
import com.ccwangluo.accelerator.ui.dialog.DownloadDialog
import com.ccwangluo.cc_quickly.utils.SettingSPUtils
import com.ccwangluo.cc_quickly.utils.XToastUtils
import com.hjq.toast.ToastUtils
import com.mcxiaoke.packer.helper.PackerNg
import com.sdk.base.framework.bean.PInfo
......@@ -24,6 +26,8 @@ import com.xuexiang.xpage.base.XPageFragment
import com.xuexiang.xutil.app.AppUtils
import com.xuexiang.xutil.net.NetworkUtils
import com.xuexiang.xutil.system.DeviceUtils
import com.xuexiang.xutil.system.PermissionUtils
import java.security.Permission
import java.text.SimpleDateFormat
import java.util.*
......@@ -123,6 +127,7 @@ object SysUtils {
"yingyongbao" -> 5
"OPPO" -> 6
"baiduzhushou" -> 7
"wufan" -> 8
else -> 0
}
}
......@@ -130,6 +135,13 @@ object SysUtils {
fun downloadFile(activity: FragmentActivity, url: String) {
if (!PermissionUtils.isGranted(Manifest.permission.WRITE_EXTERNAL_STORAGE)) {
ToastUtils.show("下载需要打开存储权限")
PermissionUtils.permission(Manifest.permission.WRITE_EXTERNAL_STORAGE.toString()).rationale({
PermissionUtils.openAppSettings()
}).request()
return
}
val downloadManager = activity.getSystemService(DOWNLOAD_SERVICE) as DownloadManager
val request =
DownloadManager.Request(Uri.parse(url)) //添加下载文件的网络路径
......@@ -154,7 +166,6 @@ object SysUtils {
}
fun joinQQGroup(context: Context) {
val key = "5CmyFzMWyucgmmLTM7JLG_sSArmaFQxT"
......@@ -214,15 +225,14 @@ object SysUtils {
}
fun getInstalledApps(context: Context,packageName: String): Int {
fun getInstalledApps(context: Context, packageName: String): Int {
val packs: List<PackageInfo> = context.getPackageManager().getInstalledPackages(0)
for (i in packs.indices) {
val p = packs[i]
if (p.versionName == null) {
continue
}
if (packageName.equals(p.packageName)){
if (packageName.equals(p.packageName)) {
return p.versionCode
}
}
......
......@@ -5,3 +5,4 @@ vivo
yingyongbao
OPPO
baiduzhushou
wufan
\ No newline at end of file
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