Commit Graph

46 Commits

Author SHA1 Message Date
yjj38 c999ee6f69 refactor(proxy): 移除代理检查国家功能并优化 VPN 启动逻辑
- 删除了 ClashUtil 类中的 checkCountryIsUS 方法,移除了检查国家是否为美国的功能
- 修改了 LoadDeviceWorker 类中的 startProxyVpn 方法,去除了返回值,简化了逻辑- 优化了 executeSingleLogic 方法的流程,移除了与代理检查国家相关的代码
2025-07-03 17:25:34 +08:00
yjj38 0ac201e93b refactor(main): 重构主函数并添加日志记录功能
- 新增 log 和 error 函数用于日志记录
- 重新封装 HTTP 请求和 API 处理逻辑
- 主函数增加错误处理和任务完成检查
- 添加定时器实现循环执行
2025-07-03 16:32:34 +08:00
yjj38 431267228f JDK升级到21,优化ClashUtil的代理切换和网络检查逻辑
- 项目的JDK版本从17升级到21。
- ClashUtil的`switchProxyGroup`方法改为同步执行,并增加了对HTTP响应状态码的检查。
- 新增`checkCountryIsUS`方法,用于通过ipinfo.io判断当前IP是否在美国,并在VPN启动后调用此方法进行验证。
- `LoadDeviceWorker`中的`startProxyVpn`方法现在会根据`checkCountryIsUS`的结果来决定是否继续执行后续操作。
- AutoJs脚本 (`main.js`) 更新,使用Promise和async/await来处理并行的HTTP请求,并分别调用ipv4.geojs.io的接口获取国家代码和详细地理位置信息。
2025-07-03 13:17:14 +08:00
Administrator 619e39cdc6 打包配置 2025-06-28 14:50:24 +08:00
Administrator d8dd6e740a 添加取消定时任务的方法 2025-06-26 18:18:37 +08:00
Administrator 203fccea87 下载安装 2025-06-26 16:51:31 +08:00
Administrator e619d85361 2025-06-26 14:02:58 +08:00
Administrator 6fa7c334ea 2025-06-25 19:06:03 +08:00
Administrator 951f6697e8 2025-06-25 19:02:51 +08:00
Administrator 4642f6e459 . 2025-06-25 18:09:58 +08:00
Administrator d21136edf5 . 2025-06-25 15:21:03 +08:00
Administrator a6c58716ec . 2025-06-25 13:59:07 +08:00
Administrator 33c53e8239 . 2025-06-25 10:57:15 +08:00
Administrator 1652482e79 refactor(ChangeDeviceInfoUtil, MainActivity): enhance package processing null-check, cleanup unused variables
- Introduced null-checks for `packageInfo` in `ChangeDeviceInfoUtil` package processing to improve error handling.
- Removed redundant `scriptResult` assignment in `MainActivity` for cleaner execution logic.
- Updated APK and baseline profile files for release configuration.
2025-06-25 10:56:53 +08:00
yjj38 cd09538426 refactor(ChangeDeviceInfoUtil, MainActivity): enhance package processing null-check, cleanup unused variables
- Introduced null-checks for `packageInfo` in `ChangeDeviceInfoUtil` package processing to improve error handling.
- Removed redundant `scriptResult` assignment in `MainActivity` for cleaner execution logic.
- Updated APK and baseline profile files for release configuration.
2025-06-21 16:13:55 +08:00
yjj38 ee67543b0a `refactor(TaskUtil): add taskId support, improved file/directory handling, and introduce compression/unzip utilities` 2025-06-21 14:39:57 +08:00
yjj38 7ce7a3d72e refactor(ShellUtils, TaskUtil): enhance shell execution and streamline file management
- Improved `ShellUtils` with enhanced logging, thread-management, and safety checks for shell command execution.
- Streamlined `TaskUtil`'s file operations with safer and more robust shell commands for deletion, copying, and compression.
- Replaced Java I/O-based file management in `TaskUtil` with shell-based operations for better performance and security.
- Added new helper methods like `delFileSh`, `copyFolderSh`, and `clearUpFileInDst` in `TaskUtil`.
2025-06-20 16:37:36 +08:00
yjj38 30985a0fa0 refactor(app): 重构应用主界面和功能代码
- 更新 activity_main.xml 布局,优化界面结构
- 重构 AutoJsUtil 类,提高代码可读性和维护性
- 改进 ChangeDeviceInfoUtil 类,增强设备信息修改功能
- 更新 build.gradle 配置,提升项目构建兼容性
2025-06-19 22:12:21 +08:00
yjj38 222a2002f9 Add `TaskUtil` for device and file operations; update `MainActivity` for Android ID handling and permissions
Introduced new `TaskUtil` utility class for device info upload, file compression, and remote operations. Updated `MainActivity` to dynamically fetch and utilize Android ID, added Android 13+ permission handling for `FOREGROUND_SERVICE`. Included Mockito dependencies for unit testing, implemented `TaskUtilTest` for API interaction validation. Adjusted `ChangeDeviceInfoUtil` initialization and fetched properties dynamically. Updated `minSdk` and network security configuration.
2025-06-18 14:31:11 +08:00
yjj38 984328b7eb Add release key, metadata, AF parameters, and APK for release configuration
Integrated the release keystore file, generated necessary metadata (`output-metadata.json`), and included detailed AF parameter configurations (`AF设备参数.txt`). Added the release APK and baseline profile files for optimized app deployment.
2025-06-16 16:38:13 +08:00
yjj38 2c9ca8ec44 Refactor `AutoJsUtil` and `MainActivity` to improve script execution and synchronization
Enhanced script execution flow with dedicated `broadcastLock` and `taskLock` for better synchronization. Improved logging, broadcast receiver management, and error handling in `AutoJsUtil`. Removed unused methods and redundant synchronization. Added counter for script runs and optimized lifecycle management for stability.
2025-06-13 19:02:53 +08:00
yjj38 c8650a2fac Enhance `ChangeDeviceInfoUtil` with `TextUtils` for null/empty checks and update deployment target configuration 2025-06-13 14:26:30 +08:00
yjj38 dc2fdd615e Refactor `AutoJsUtil` and `MainActivity` for enhanced script handling and synchronization
Introduced synchronized locking for script execution flow in `MainActivity` and added a robust broadcast receiver registration process in `AutoJsUtil`. Enhanced logging, error handling, and script management utilities. Updated `AutoJsUtil` with better file validation and context-aware lifecycle methods for improved stability and clarity.
2025-06-12 22:55:55 +08:00
yjj38 b6e312cf9e Enhance `ChangeDeviceInfoUtil` and `HttpUtil` for dynamic property updates and robust utilities
Refactored `ChangeDeviceInfoUtil` to dynamically fetch and apply device properties from JSON inputs. Added flexible handling of runtime values, improved error handling, and introduced `HttpUtil` methods for URL placeholders and retrieving the local IP address. Updated `MainActivity` and scripts for streamlined execution flow and better integration.
2025-06-12 11:31:46 +08:00
yjj38 657bb2c2c1 Dynamically fetch and apply device properties from API responses
Implemented dynamic retrieval of device properties from external APIs, parsing JSON responses, and replacing statically hardcoded values. Enhanced flexibility for device information management. Added error handling for JSON parsing and root access validation.
2025-06-10 19:54:32 +08:00
yjj38 c746633baf Dynamically fetch and apply device properties from API responses
Implemented dynamic retrieval of device properties from external APIs, parsing JSON responses, and replacing statically hardcoded values. Enhanced flexibility for device information management. Added error handling for JSON parsing and root access validation.
2025-06-10 11:45:44 +08:00
yjj38 d2661f8fdb Enhance `ChangeDeviceInfoUtil` to collect extensive device and environment data
Added detailed data collection including network type, language, country, advertiser ID, AppsFlyer parameters, device information, sensor data, battery status, and timestamps. Improved network type detection with `NetworkCapabilities` for accuracy. Integrated mock values for testing.
2025-06-09 22:05:48 +08:00
yjj38 6b4e8e4f9e Enhance `ChangeDeviceInfoUtil` to collect extensive device and environment data
Added detailed data collection including network type, language, country, advertiser ID, AppsFlyer parameters, device information, sensor data, battery status, and timestamps. Improved network type detection with `NetworkCapabilities` for accuracy. Integrated mock values for testing.
2025-06-09 21:37:39 +08:00
yjj38 74e77acdd0 Add input handling and execution flow for proxy automation
Introduced input field and button in `MainActivity` and updated layout to enable dynamic iteration of proxy operations based on user input. Implemented logic to handle input validation and sequential proxy processing using predefined proxy names.
2025-06-09 21:08:51 +08:00
yjj38 c27ca64a8d Collect detailed device and environment info for VCloud
Added system-level data collection for properties like User-Agent, OS version, language, DPI, time zone, network type, ISP, country, and Google Advertising ID (GAID). Integrated `play-services-ads-identifier` dependency for retrieving GAID. Updated `build.gradle` and `libs.versions.toml` accordingly.
2025-06-09 16:50:33 +08:00
yjj38 23e9b730bf Collect detailed device and environment info for VCloud
Added system-level data collection for properties like User-Agent, OS version, language, DPI, time zone, network type, ISP, country, and Google Advertising ID (GAID). Integrated `play-services-ads-identifier` dependency for retrieving GAID. Updated `build.gradle` and `libs.versions.toml` accordingly.
2025-06-09 16:45:29 +08:00
yjj38 3bde5cadb7 gffhfth 2025-06-09 16:17:53 +08:00
yjj38 c20f4cb515 Integrate WorkManager for periodic accessibility service checks
Added `CheckAccessibilityWorker` with WorkManager to periodically validate and prompt accessibility service activation. Registered new `MyAccessibilityService` in manifest and set configurations. Introduced native `Singbox` methods for VPN operations and added compatibility fixes, including JNI library path initialization. Updated dependency `androidx.work:work-runtime:2.9.0`.
2025-06-07 09:52:33 +08:00
yjj38 be91f9ea3b **Commit message:**
Replace SingBoxLauncher with SingboxUtil for VPN management

Removed the deprecated `SingBoxLauncher` class and introduced `SingboxUtil` for streamlined VPN service management. Simplified the VPN initialization process and improved compatibility with the new Singbox API.
2025-06-01 10:56:49 +08:00
yjj38 eda9b1013f Fix V2Ray startup issues and add legacy storage support
Addressed directory creation failure and missing V2Ray files to prevent app crashes during VPN initialization. Enabled `requestLegacyExternalStorage` to ensure compatibility with file handling on newer Android versions.
2025-05-30 15:49:23 +08:00
yjj38 8b079e8115 Add configuration files and remove redundant code
Added IntelliJ IDEA project configuration, lint baseline, and inspection profiles for consistency and static analysis. Removed redundant null-check for intent in `MainActivity` to simplify logic and improve readability.
2025-05-30 12:24:32 +08:00
yjj38 1d65b8c5aa Fix VPN service crash due to unhandled foreground start
Addressed issue where `CustomVpnService` fails to properly start in foreground, leading to a `ForegroundServiceDidNotStartInTimeException`. Added handling for service termination and cleanup to prevent abrupt failure.
2025-05-30 11:33:35 +08:00
yjj38 3f3273e557 Remove unused DeviceUtils and disable command safety checks
Deleted `DeviceUtils.java` as it is no longer used and removed redundant native method calls. Disabled safety checks for shell commands in `ShellUtils.java` for enhanced flexibility, ensuring they won't interrupt execution. Updated JNI method paths in `infoct.cpp` to align with updated package structure.
2025-05-30 11:04:26 +08:00
yjj38 b2ec85ddb9 Add native methods to manipulate system and device info
This commit introduces multiple native methods, written in C++, to interact with system and device info such as RAM, CPU, disk, and uptime. It also includes mechanisms to modify or reset system properties, bypass anti-debugging, and handle file path redirection. Additionally, ensures proper JNI bindings to avoid runtime errors like `UnsatisfiedLinkError`.
2025-05-29 22:05:49 +08:00
yjj38 931944167e Refactor and enhance ShellUtils; add ClassUtils utility.
Refactored ShellUtils to improve safety, error handling, and modularity, including checks for command safety, better error logging, and execution timeout handling. Introduced a new ClassUtils utility for operations on classes, such as retrieving short class names, converting between primitive and wrapper types, and handling interfaces and superclasses.
2025-05-29 16:49:38 +08:00
yjj38 208e977d2f Refactor VPN service to dynamically load tunnel address.
Replaced hardcoded TUN address with a dynamic loader using `ConfigLoader`. Introduced `ConfigLoader` to parse `tun_address` from the configuration file or fallback to a default value. Improved file handling in `V2rayUtil` for better readability and maintainability.
2025-05-28 14:18:25 +08:00
yjj38 c852142262 ```
Improve VPN service stability and update V2Ray assets

Enhanced the VPN service by refining error handling, adding retry logic, and improving resource cleanup. Consolidated V2Ray asset management logic, ensured compatibility with device architectures, and adjusted permissions handling for newer Android versions. Renamed and reorganized V2Ray assets for better structure.
```
2025-05-27 19:25:48 +08:00
yjj38 b46404bb1e Refactor VPN setup and V2Ray initialization logic
Simplified VPN configuration, enhanced permission handling, and improved V2Ray file checks to ensure smoother setup. Updated assets and JSON configs to align with new network requirements and reduced redundancy in logging and error handling.
2025-05-26 16:01:40 +08:00
yjj38 9e64a65d62 Refactor VPN implementation and add SingBoxLauncher integration
Replaced ProxyVpnService with SingBoxLauncher for enhanced VPN control and functionality. Introduced new utilities such as IpUtil and HttpUtil for network-related operations. Updated MainActivity to utilize the new VPN workflow and removed outdated VPN service logic.
2025-05-23 16:19:37 +08:00
yjj38 c93475533d Add VPN service, Shell utility, and server communication support
Introduced a `ProxyVpnService` to manage a VPN connection and a `ShellUtils` utility for executing commands. Enabled script result communication with the server using `CloudPhoneManageService` via Retrofit. Updated permissions, dependencies, and MainActivity to support these features.
2025-05-22 18:13:34 +08:00
yjj38 27a38d2a97 init 2025-05-20 16:39:05 +08:00