<?xml version='1.0' encoding='utf-8'?>
<manifest
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    package="cc.winboll.studio.powerbell">

    <!-- ====================== 原有权限保留 + 补充核心权限 ====================== -->
    <!-- 运行前台服务（原有保留，补充 Android 12+ 特殊前台服务权限） -->
    <uses-permission android:name="android.permission.FOREGROUND_SERVICE"/>
    <uses-permission android:name="android.permission.FOREGROUND_SERVICE_SPECIAL_USE" />

    <!-- 开机启动（原有保留，确保自启广播生效） -->
    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>

    <!-- 显示通知（原有保留，前台服务/保活必备） -->
    <uses-permission android:name="android.permission.POST_NOTIFICATIONS"/>

    <!-- 应用使用统计相关（原有保留，忽略保护权限警告） -->
    <uses-permission android:name="android.permission.PACKAGE_USAGE_STATS"/>
    <uses-permission android:name="android.permission.BATTERY_STATS"/>
    <uses-permission
        android:name="android.permission.ACCESS_PACKAGE_USAGE_STATS"
        tools:ignore="ProtectedPermissions"/>

    <!-- 相机相关（原有保留，补充权限等级声明，避免安装警告） -->
    <uses-feature 
        android:name="android.hardware.camera" 
        android:required="false"/> <!-- 非核心功能设为非必须，兼容无相机设备 -->
    <uses-feature 
        android:name="android.hardware.camera.autofocus" 
        android:required="false"/>
    <uses-permission android:name="android.permission.CAMERA" /> <!-- 补充相机权限，原有仅声明feature无权限 -->

    <!-- 应用信息相关（原有保留） -->
    <uses-permission android:name="android.permission.GET_PACKAGE_SIZE"/>
    <uses-permission
        android:name="android.permission.QUERY_ALL_PACKAGES"
        tools:ignore="QueryAllPackagesPermission"/>

    <!-- 新增：文件管理权限（对应 PermissionUtils 全文件管理逻辑） -->
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.MANAGE_EXTERNAL_STORAGE" /> <!-- API30+ 全文件权限 -->

    <!-- 新增：忽略电池优化权限（对应 PermissionUtils 电池优化逻辑，必须声明） -->
    <uses-permission android:name="android.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS" />

    <!-- 新增：API30+ 跳转系统权限页兼容（避免自启/文件权限跳转失败） -->
    <queries>
        <!-- 全文件管理权限跳转兼容 -->

        <!-- 小米自启权限跳转兼容（精准匹配安全中心包名） -->
        <package android:name="com.miui.securitycenter" />
        <!-- 电池优化权限跳转兼容 -->

    </queries>

    <application
        android:name=".App"
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme_Default"
        android:persistent="true"
        android:resizeableActivity="true"
        android:requestLegacyExternalStorage="true"
        android:usesCleartextTraffic="true"
        android:supportsRtl="true"
        tools:ignore="GoogleAppIndexingWarning,UnusedAttribute">

        <!-- ====================== 页面配置（原有保留，优化 exported 安全） ====================== -->
        <activity
            android:name=".MainActivity"
            android:label="@string/app_name"
            android:exported="true"
            android:launchMode="singleTask">
        </activity>

        <activity 
            android:name=".activities.CrashActivity"
            android:exported="false"/> <!-- 新增：非外部调用，设为 false，提升安全 -->

        <activity-alias
            android:name=".MainActivityEN1"
            android:targetActivity=".MainActivity"
            android:exported="true"
            android:label="@string/app_name"
            android:icon="@drawable/ic_launcher"
            android:enabled="true">
            <intent-filter>
                <action android:name="android.intent.action.MAIN"/>
                <category android:name="android.intent.category.LAUNCHER"/>
            </intent-filter>
            <meta-data
                android:name="android.app.shortcuts"
                android:resource="@xml/shortcutsmainen1"/>
        </activity-alias>

        <activity-alias
            android:name=".MainActivityCN1"
            android:targetActivity=".MainActivity"
            android:exported="true"
            android:label="@string/app_name_cn1"
            android:icon="@drawable/ic_launcher"
            android:enabled="false">
            <intent-filter>
                <action android:name="android.intent.action.MAIN"/>
                <category android:name="android.intent.category.LAUNCHER"/>
            </intent-filter>
            <meta-data
                android:name="android.app.shortcuts"
                android:resource="@xml/shortcutsmaincn1"/>
        </activity-alias>

        <activity-alias
            android:name=".MainActivityCN2"
            android:targetActivity=".MainActivity"
            android:exported="true"
            android:label="@string/app_name_cn2"
            android:icon="@drawable/ic_launcher"
            android:enabled="false">
            <intent-filter>
                <action android:name="android.intent.action.MAIN"/>
                <category android:name="android.intent.category.LAUNCHER"/>
            </intent-filter>
            <meta-data
                android:name="android.app.shortcuts"
                android:resource="@xml/shortcutsmaincn2"/>
        </activity-alias>

        <activity
            android:name=".activities.ClearRecordActivity"
            android:parentActivityName="cc.winboll.studio.powerbell.MainActivity"
            android:launchMode="singleTask"
            android:exported="false"/> <!-- 新增：非外部调用，设为 false -->

        <activity
            android:name=".activities.BackgroundSettingsActivity"
            android:parentActivityName="cc.winboll.studio.powerbell.MainActivity"
            android:exported="true"
            android:launchMode="singleTask">
            <intent-filter>
                <action android:name="android.intent.action.SEND"/>
                <category android:name="android.intent.category.DEFAULT"/>
                <data android:mimeType="image/jpeg"/>
                <data android:mimeType="image/jpg"/>
                <data android:mimeType="image/png"/>
                <data android:mimeType="image/webp"/>
                <data android:mimeType="image/*"/>
            </intent-filter>
        </activity>

        <!-- ====================== 广播接收器（优化自启广播，提升保活成功率） ====================== -->
        <receiver
            android:name=".receivers.MainReceiver"
            android:enabled="true"
            android:exported="true"
            android:directBootAware="true">
            <intent-filter android:priority="1000"> <!-- 新增：广播优先级最高，确保优先接收开机广播 -->
                <action android:name="android.intent.action.BOOT_COMPLETED"/>
                <!-- 补充：充电/解锁广播，增强后台唤醒机会 -->
                <action android:name="android.intent.action.POWER_CONNECTED"/>
                <action android:name="android.intent.action.USER_PRESENT"/>
            </intent-filter>
        </receiver>

        <!-- ====================== 服务配置（核心优化：前台服务保活，适配 API29-30） ====================== -->
        <!-- 核心前台服务：ControlCenterService（保活核心，重点优化） -->
        <service
            android:name=".services.ControlCenterService"
            android:priority="1000"
            android:enabled="true"
            android:exported="false"
            android:process=".controlcenterservice"
            android:foregroundServiceType="dataSync">
            <!-- 新增：Android 12+ 前台服务用途声明（系统强制，否则拦截服务启动） -->
            <property
                android:name="android.app.PROPERTY_SPECIAL_USE_FOREGROUND_SERVICE"
                android:value="后台核心功能运行、持续保活" /> <!-- 按实际用途填写，不可空 -->
        </service>

        <!-- 辅助服务：AssistantService（按需优化，增强稳定性） -->
        <service
            android:name=".services.AssistantService"
            android:enabled="true"
            android:exported="false"
            android:process=".assistantservice"> <!-- 若需前台启动，添加此配置；纯后台可移除 -->
            <property
                android:name="android.app.PROPERTY_SPECIAL_USE_FOREGROUND_SERVICE"
                android:value="辅助核心功能运行" />
        </service>

        <!-- ====================== 其他配置（原有保留，补充优化） ====================== -->
        <meta-data
            android:name="android.max_aspect"
            android:value="4.0"/>

        <!-- 所有非外部调用的 Activity，统一设 exported=false，提升安全 -->
        <activity 
            android:name=".activities.BatteryReporterActivity"
            android:exported="false"/>
        <activity 
            android:name=".activities.PixelPickerActivity"
            android:exported="false"/>
        <activity 
            android:name=".activities.BatteryReportActivity"
            android:exported="false"/>
        <activity 
            android:name=".unittest.MainUnitTestActivity"
            android:exported="false"/>
        <activity 
            android:name=".activities.ShortcutActionActivity"
            android:exported="false"/>
        <activity 
            android:name=".activities.SettingsActivity"
            android:exported="false"/>

        <!-- 文件提供者（原有保留，正常使用） -->
        <provider
            android:name="androidx.core.content.FileProvider"
            android:authorities="${applicationId}.fileprovider"
            android:exported="false"
            android:grantUriPermissions="true">
            <meta-data
                android:name="android.support.FILE_PROVIDER_PATHS"
                android:resource="@xml/file_provider"/>
        </provider>

        <!-- UCrop 第三方页面（原有保留，exported=true 正常） -->
        <activity
            android:name="com.yalantis.ucrop.UCropActivity"
            android:theme="@style/Theme.AppCompat.Light.NoActionBar"
            android:exported="true">
        </activity>

    </application>

</manifest>

