时区从网页获取
This commit is contained in:
parent
024a1db06c
commit
4e090aca7e
|
@ -31,7 +31,6 @@ import androidx.appcompat.app.AppCompatActivity;
|
||||||
import androidx.work.PeriodicWorkRequest;
|
import androidx.work.PeriodicWorkRequest;
|
||||||
import androidx.work.WorkManager;
|
import androidx.work.WorkManager;
|
||||||
|
|
||||||
import com.example.retention.R;
|
|
||||||
import com.example.studyapp.autoJS.AutoJsUtil;
|
import com.example.studyapp.autoJS.AutoJsUtil;
|
||||||
import com.example.studyapp.device.ChangeDeviceInfoUtil;
|
import com.example.studyapp.device.ChangeDeviceInfoUtil;
|
||||||
|
|
||||||
|
|
|
@ -45,7 +45,9 @@ class ScriptJobService : JobIntentService() {
|
||||||
// ClashUtil.startProxy(applicationContext)
|
// ClashUtil.startProxy(applicationContext)
|
||||||
ClashUtil.switchProxyWithPort(CountryCode.switchCountry())
|
ClashUtil.switchProxyWithPort(CountryCode.switchCountry())
|
||||||
// ClashUtil.switchProxyGroup("PROXY", "my-socks5-proxy", "http://127.0.0.1:6170")
|
// ClashUtil.switchProxyGroup("PROXY", "my-socks5-proxy", "http://127.0.0.1:6170")
|
||||||
changeDevice(packageName, bigoDevice, afDevice, object : ChangeCallBack {
|
val geoInfo: String = IpUtil.fetchGeoInfo()
|
||||||
|
val timeZone: String = IpUtil.getTimeZone(geoInfo)
|
||||||
|
changeDevice(packageName, bigoDevice, afDevice, timeZone, object : ChangeCallBack {
|
||||||
override fun changeSuccess() {
|
override fun changeSuccess() {
|
||||||
runCatching {
|
runCatching {
|
||||||
AutoJsUtil.runAutojsScript(applicationContext)
|
AutoJsUtil.runAutojsScript(applicationContext)
|
||||||
|
|
|
@ -13,6 +13,7 @@ import com.example.studyapp.proxy.ClashUtil
|
||||||
import com.example.studyapp.update.ChangeCallBack
|
import com.example.studyapp.update.ChangeCallBack
|
||||||
import com.example.studyapp.update.UpdateUtil.changeDevice
|
import com.example.studyapp.update.UpdateUtil.changeDevice
|
||||||
import com.example.studyapp.utils.CountryCode
|
import com.example.studyapp.utils.CountryCode
|
||||||
|
import com.example.studyapp.utils.IpUtil
|
||||||
import com.example.studyapp.utils.LogFileUtil
|
import com.example.studyapp.utils.LogFileUtil
|
||||||
import com.example.studyapp.utils.ShellUtils
|
import com.example.studyapp.utils.ShellUtils
|
||||||
import org.json.JSONObject
|
import org.json.JSONObject
|
||||||
|
@ -53,11 +54,13 @@ class StartJobService : JobIntentService() {
|
||||||
bigoDevice: JSONObject?,
|
bigoDevice: JSONObject?,
|
||||||
afDevice: JSONObject?
|
afDevice: JSONObject?
|
||||||
) {
|
) {
|
||||||
ClashUtil.startProxy(applicationContext)
|
// ClashUtil.startProxy(applicationContext)
|
||||||
// ClashUtil.switchProxyGroup("PROXY", "DIRECT", "http://127.0.0.1:6170")
|
// ClashUtil.switchProxyGroup("PROXY", "DIRECT", "http://127.0.0.1:6170")
|
||||||
ClashUtil.switchProxyWithPort(CountryCode.switchCountry())
|
ClashUtil.switchProxyWithPort(CountryCode.switchCountry())
|
||||||
// ClashUtil.switchProxyGroup("PROXY", "my-socks5-proxy", "http://127.0.0.1:6170")
|
// ClashUtil.switchProxyGroup("PROXY", "my-socks5-proxy", "http://127.0.0.1:6170")
|
||||||
changeDevice(packageName, bigoDevice, afDevice, object : ChangeCallBack {
|
val geoInfo: String = IpUtil.fetchGeoInfo()
|
||||||
|
val timeZone: String = IpUtil.getTimeZone(geoInfo)
|
||||||
|
changeDevice(packageName, bigoDevice, afDevice,timeZone, object : ChangeCallBack {
|
||||||
override fun changeSuccess() {
|
override fun changeSuccess() {
|
||||||
AutoJsUtil.runAutojsScript(applicationContext)
|
AutoJsUtil.runAutojsScript(applicationContext)
|
||||||
setRunning(false)
|
setRunning(false)
|
||||||
|
|
|
@ -16,7 +16,13 @@ import org.json.JSONObject
|
||||||
|
|
||||||
object UpdateUtil {
|
object UpdateUtil {
|
||||||
val scope = CoroutineScope(Dispatchers.IO)
|
val scope = CoroutineScope(Dispatchers.IO)
|
||||||
fun changeDevice(recordPackageName: String, bigoDeviceObject:JSONObject?, afDeviceObject:JSONObject?, callback: ChangeCallBack){
|
fun changeDevice(
|
||||||
|
recordPackageName: String,
|
||||||
|
bigoDeviceObject: JSONObject?,
|
||||||
|
afDeviceObject: JSONObject?,
|
||||||
|
time: String,
|
||||||
|
callback: ChangeCallBack
|
||||||
|
) {
|
||||||
try {
|
try {
|
||||||
val padCode = ShellUtils.execRootCmdAndGetResult("getprop ro.boot.pad_code")
|
val padCode = ShellUtils.execRootCmdAndGetResult("getprop ro.boot.pad_code")
|
||||||
Log.d("TAG", "changeDevice: $padCode")
|
Log.d("TAG", "changeDevice: $padCode")
|
||||||
|
@ -134,7 +140,9 @@ object UpdateUtil {
|
||||||
val date1 = afDeviceObject.optString(".date1", "")
|
val date1 = afDeviceObject.optString(".date1", "")
|
||||||
val date2 = afDeviceObject.optString(".date2", "")
|
val date2 = afDeviceObject.optString(".date2", "")
|
||||||
val bootId = afDeviceObject.optString("BootId", "")
|
val bootId = afDeviceObject.optString("BootId", "")
|
||||||
|
if (time.isNotEmpty()){
|
||||||
|
timeZone = time
|
||||||
|
}
|
||||||
val afDevice = AfInfo()
|
val afDevice = AfInfo()
|
||||||
afDevice.advertiserId = advertiserId
|
afDevice.advertiserId = advertiserId
|
||||||
afDevice.model = model
|
afDevice.model = model
|
||||||
|
@ -279,7 +287,7 @@ object UpdateUtil {
|
||||||
val jsonString = jsonObject.toString()
|
val jsonString = jsonObject.toString()
|
||||||
val response = Api.updatePad(jsonString)
|
val response = Api.updatePad(jsonString)
|
||||||
val dataList = response.data
|
val dataList = response.data
|
||||||
if (response.isSuccess() && dataList!= null && dataList.isNotEmpty()){
|
if (response.isSuccess() && dataList != null && dataList.isNotEmpty()) {
|
||||||
val padTask = dataList[0]
|
val padTask = dataList[0]
|
||||||
scope.launch {
|
scope.launch {
|
||||||
Log.d("TAG", "changeDevice: $padTask")
|
Log.d("TAG", "changeDevice: $padTask")
|
||||||
|
@ -288,7 +296,10 @@ object UpdateUtil {
|
||||||
delay(5000)
|
delay(5000)
|
||||||
val result = Api.padTaskDetail(padTask.taskId)
|
val result = Api.padTaskDetail(padTask.taskId)
|
||||||
if (result == 3) {
|
if (result == 3) {
|
||||||
Log.d("ChangeDeviceInfoUtil", "changeDeviceInfo changeDeviceInfo success")
|
Log.d(
|
||||||
|
"ChangeDeviceInfoUtil",
|
||||||
|
"changeDeviceInfo changeDeviceInfo success"
|
||||||
|
)
|
||||||
loop = false
|
loop = false
|
||||||
callback.changeSuccess()
|
callback.changeSuccess()
|
||||||
} else if (result == -1) {
|
} else if (result == -1) {
|
||||||
|
|
|
@ -81,6 +81,20 @@ public class IpUtil {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static String getTimeZone(String geoInfo)
|
||||||
|
{
|
||||||
|
try {
|
||||||
|
if (!TextUtils.isEmpty(geoInfo))
|
||||||
|
{
|
||||||
|
JSONObject json = new JSONObject(geoInfo);
|
||||||
|
return json.optString("timezone", "");
|
||||||
|
}
|
||||||
|
} catch (Exception e) {
|
||||||
|
LogFileUtil.logAndWrite(Log.ERROR, "IpUtil", "getTimeZone: JSON error", e);
|
||||||
|
}
|
||||||
|
return "";
|
||||||
|
}
|
||||||
|
|
||||||
public static String checkClientIp(String excludeCountry)
|
public static String checkClientIp(String excludeCountry)
|
||||||
{
|
{
|
||||||
try {
|
try {
|
||||||
|
|
Loading…
Reference in New Issue