384 lines
18 KiB
XML
384 lines
18 KiB
XML
<?xml version="1.0" encoding="utf-8"?><!--
|
||
/*
|
||
**
|
||
** Copyright 2016, The Android Open Source Project
|
||
**
|
||
** Licensed under the Apache License, Version 2.0 (the "License");
|
||
** you may not use this file except in compliance with the License.
|
||
** You may obtain a copy of the License at
|
||
**
|
||
** http://www.apache.org/licenses/LICENSE-2.0
|
||
**
|
||
** Unless required by applicable law or agreed to in writing, software
|
||
** distributed under the License is distributed on an "AS IS" BASIS,
|
||
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||
** See the License for the specific language governing permissions and
|
||
** limitations under the License.
|
||
*/
|
||
-->
|
||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||
xmlns:tools="http://schemas.android.com/tools"
|
||
package="com.aoleyun.os"
|
||
android:sharedUserId="android.uid.system">
|
||
|
||
<!--
|
||
The manifest defines the common entries that should be present in any derivative of Launcher3.
|
||
The components should generally not require any changes.
|
||
|
||
Rest of the components are defined in AndroidManifest.xml which is merged with this manifest
|
||
at compile time. Note that the components defined in AndroidManifest.xml are also required,
|
||
with some minor changed based on the derivative app.
|
||
-->
|
||
<permission
|
||
android:name="com.android.launcher.permission.INSTALL_SHORTCUT"
|
||
android:description="@string/permdesc_install_shortcut"
|
||
android:label="@string/permlab_install_shortcut"
|
||
android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
|
||
android:protectionLevel="dangerous" />
|
||
|
||
<uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS" />
|
||
<uses-permission android:name="android.permission.CALL_PHONE" />
|
||
<uses-permission android:name="android.permission.SET_WALLPAPER" />
|
||
<uses-permission android:name="android.permission.SET_WALLPAPER_HINTS" />
|
||
<uses-permission android:name="android.permission.BIND_APPWIDGET" />
|
||
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
|
||
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
|
||
<uses-permission android:name="android.permission.REQUEST_DELETE_PACKAGES" />
|
||
<uses-permission android:name="android.permission.PACKAGE_USAGE_STATS" />
|
||
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
|
||
<uses-permission android:name="android.permission.WRITE_SETTINGS" />
|
||
<uses-permission android:name="android.permission.INTERNET" />
|
||
<uses-permission android:name="android.permission.READ_PRIVILEGED_PHONE_STATE" />
|
||
|
||
<!-- 【必须】 移动推送 TPNS SDK VIP版本所需权限 -->
|
||
<permission
|
||
android:name="com.aoleyun.os.permission.XGPUSH_RECEIVE"
|
||
android:protectionLevel="signature" />
|
||
<uses-permission android:name="com.aoleyun.os.permission.XGPUSH_RECEIVE" />
|
||
|
||
<!-- 【必须】 移动推送 TPNS SDK 所需权限 -->
|
||
<uses-permission android:name="android.permission.INTERNET" />
|
||
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
|
||
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
|
||
|
||
<!-- 【常用】 移动推送 TPNS SDK所需权限 -->
|
||
<uses-permission android:name="android.permission.WAKE_LOCK" />
|
||
<uses-permission android:name="android.permission.VIBRATE" />
|
||
<uses-permission android:name="android.permission.RECEIVE_USER_PRESENT" />
|
||
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
|
||
<uses-permission android:name="android.permission.GET_TASKS" />
|
||
|
||
|
||
<!--
|
||
Permissions required for read/write access to the workspace data. These permission name
|
||
should not conflict with that defined in other apps, as such an app should embed its package
|
||
name in the permissions. eq com.mypackage.permission.READ_SETTINGS
|
||
-->
|
||
<permission
|
||
android:name="${packageName}.permission.READ_SETTINGS"
|
||
android:description="@string/permdesc_read_settings"
|
||
android:label="@string/permlab_read_settings"
|
||
android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
|
||
android:protectionLevel="signatureOrSystem" />
|
||
<permission
|
||
android:name="${packageName}.permission.WRITE_SETTINGS"
|
||
android:description="@string/permdesc_write_settings"
|
||
android:label="@string/permlab_write_settings"
|
||
android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
|
||
android:protectionLevel="signatureOrSystem" />
|
||
|
||
<uses-permission android:name="${packageName}.permission.READ_SETTINGS" />
|
||
<uses-permission android:name="${packageName}.permission.WRITE_SETTINGS" />
|
||
|
||
<application
|
||
android:name="com.aoleyun.os.base.BaseApplication"
|
||
android:backupAgent="com.aoleyun.os.LauncherBackupAgent"
|
||
android:fullBackupContent="@xml/backupscheme"
|
||
android:fullBackupOnly="true"
|
||
android:hardwareAccelerated="true"
|
||
android:icon="@drawable/ic_launcher_home"
|
||
android:label="@string/derived_app_name"
|
||
android:largeHeap="@bool/config_largeHeap"
|
||
android:networkSecurityConfig="@xml/network"
|
||
android:restoreAnyVersion="true"
|
||
android:supportsRtl="true">
|
||
|
||
<!-- Intent received used to install shortcuts from other applications -->
|
||
<receiver
|
||
android:name="com.aoleyun.os.InstallShortcutReceiver"
|
||
android:enabled="@bool/enable_install_shortcut_api"
|
||
android:permission="com.android.launcher.permission.INSTALL_SHORTCUT">
|
||
<intent-filter>
|
||
<action android:name="com.android.launcher.action.INSTALL_SHORTCUT" />
|
||
</intent-filter>
|
||
</receiver>
|
||
|
||
<!-- Intent received when a session is committed -->
|
||
<receiver android:name="com.aoleyun.os.SessionCommitReceiver">
|
||
<intent-filter>
|
||
<action android:name="android.content.pm.action.SESSION_COMMITTED" />
|
||
</intent-filter>
|
||
</receiver>
|
||
|
||
<!-- Intent received used to initialize a restored widget -->
|
||
<receiver android:name="com.aoleyun.os.AppWidgetsRestoredReceiver">
|
||
<intent-filter>
|
||
<action android:name="android.appwidget.action.APPWIDGET_HOST_RESTORED" />
|
||
</intent-filter>
|
||
</receiver>
|
||
|
||
<service
|
||
android:name="com.aoleyun.os.uioverrides.dynamicui.WallpaperManagerCompatVL$ColorExtractionService"
|
||
android:exported="false"
|
||
android:permission="android.permission.BIND_JOB_SERVICE"
|
||
android:process=":wallpaper_chooser" />
|
||
|
||
<service
|
||
android:name="com.aoleyun.os.notification.NotificationListener"
|
||
android:enabled="@bool/notification_dots_enabled"
|
||
android:label="@string/notification_dots_service_title"
|
||
android:permission="android.permission.BIND_NOTIFICATION_LISTENER_SERVICE">
|
||
<intent-filter>
|
||
<action android:name="android.service.notification.NotificationListenerService" />
|
||
</intent-filter>
|
||
</service>
|
||
|
||
<meta-data
|
||
android:name="android.nfc.disable_beam_default"
|
||
android:value="true" />
|
||
|
||
<activity
|
||
android:name="com.aoleyun.os.dragndrop.AddItemActivity"
|
||
android:autoRemoveFromRecents="true"
|
||
android:excludeFromRecents="true"
|
||
android:label="@string/action_add_to_workspace"
|
||
android:theme="@style/AppItemActivityTheme">
|
||
<intent-filter>
|
||
<action android:name="android.content.pm.action.CONFIRM_PIN_SHORTCUT" />
|
||
<action android:name="android.content.pm.action.CONFIRM_PIN_APPWIDGET" />
|
||
</intent-filter>
|
||
</activity>
|
||
|
||
<!--
|
||
Should point to the content provider which can be used to dump Launcher3 compatible
|
||
worspace configuration to the dump's file descriptor by using launcher_dump.proto
|
||
-->
|
||
<meta-data
|
||
android:name="com.aoleyun.os.launcher_dump_provider"
|
||
android:value="com.aoleyun.os.LauncherProvider" />
|
||
|
||
<!--
|
||
The settings provider contains Home's data, like the workspace favorites. The permissions
|
||
should be changed to what is defined above. The authorities should also be changed to
|
||
represent the package name.
|
||
-->
|
||
<provider
|
||
android:name="com.aoleyun.os.LauncherProvider"
|
||
android:authorities="${packageName}.settings"
|
||
android:exported="true"
|
||
android:readPermission="${packageName}.permission.READ_SETTINGS"
|
||
android:writePermission="${packageName}.permission.WRITE_SETTINGS" />
|
||
|
||
<!--
|
||
The content provider for exposing various launcher grid options.
|
||
TODO: Add proper permissions
|
||
-->
|
||
<provider
|
||
android:name="com.aoleyun.os.graphics.GridOptionsProvider"
|
||
android:authorities="${packageName}.grid_control"
|
||
android:enabled="false"
|
||
android:exported="true" />
|
||
|
||
<!--
|
||
The settings activity. To extend point settings_fragment_name to appropriate fragment class
|
||
-->
|
||
<activity
|
||
android:name="com.aoleyun.os.settings.SettingsActivity"
|
||
android:autoRemoveFromRecents="true"
|
||
android:label="@string/settings_button_text"
|
||
android:theme="@android:style/Theme.DeviceDefault.Settings">
|
||
<intent-filter>
|
||
<action android:name="android.intent.action.APPLICATION_PREFERENCES" />
|
||
<category android:name="android.intent.category.DEFAULT" />
|
||
</intent-filter>
|
||
</activity>
|
||
|
||
<activity
|
||
android:name="com.aoleyun.os.Launcher"
|
||
android:clearTaskOnLaunch="true"
|
||
android:configChanges="keyboard|keyboardHidden|mcc|mnc|navigation|orientation|screenSize|screenLayout|smallestScreenSize"
|
||
android:enabled="true"
|
||
android:launchMode="singleTask"
|
||
android:resizeableActivity="true"
|
||
android:resumeWhilePausing="true"
|
||
android:screenOrientation="unspecified"
|
||
android:stateNotNeeded="true"
|
||
android:taskAffinity=""
|
||
android:windowSoftInputMode="adjustPan">
|
||
<intent-filter>
|
||
<action android:name="android.intent.action.MAIN" />
|
||
|
||
<category android:name="android.intent.category.HOME" />
|
||
<category android:name="android.intent.category.DEFAULT" />
|
||
<category android:name="android.intent.category.MONKEY" />
|
||
<category android:name="android.intent.category.LAUNCHER_APP" />
|
||
<category android:name="android.intent.category.LAUNCHER" />
|
||
</intent-filter>
|
||
</activity>
|
||
|
||
<provider
|
||
android:name="com.aoleyun.os.testing.TestInformationProvider"
|
||
android:authorities="${packageName}.TestInfo"
|
||
android:enabled="false"
|
||
android:exported="true"
|
||
android:readPermission="android.permission.WRITE_SECURE_SETTINGS"
|
||
android:writePermission="android.permission.WRITE_SECURE_SETTINGS" />
|
||
|
||
<!-- 应用的其它配置 -->
|
||
<uses-library
|
||
android:name="org.apache.http.legacy"
|
||
android:required="false" />
|
||
<!-- 【必须】 移动推送 TPNS 默认通知 -->
|
||
<activity
|
||
android:name="com.tencent.android.tpush.TpnsActivity"
|
||
android:theme="@android:style/Theme.Translucent.NoTitleBar">
|
||
<intent-filter>
|
||
<data
|
||
android:host="com.aoleyun.os"
|
||
android:scheme="tpns" />
|
||
<action android:name="android.intent.action.VIEW" />
|
||
|
||
<category android:name="android.intent.category.BROWSABLE" />
|
||
<category android:name="android.intent.category.DEFAULT" />
|
||
</intent-filter>
|
||
</activity>
|
||
|
||
<!-- 【必须】 移动推送 TPNS receiver广播接收 -->
|
||
<receiver
|
||
android:name="com.tencent.android.tpush.XGPushReceiver"
|
||
android:process=":xg_vip_service">
|
||
<intent-filter android:priority="0x7fffffff">
|
||
<!-- 【必须】 移动推送 TPNS SDK的内部广播 -->
|
||
<action android:name="com.tencent.android.xg.vip.action.SDK" />
|
||
<action android:name="com.tencent.android.xg.vip.action.INTERNAL_PUSH_MESSAGE" />
|
||
<action android:name="com.tencent.android.xg.vip.action.ACTION_SDK_KEEPALIVE" />
|
||
<!-- 【可选】 系统广播:网络切换 -->
|
||
<action android:name="android.net.conn.CONNECTIVITY_CHANGE" />
|
||
<!-- 【可选】 系统广播:开屏 -->
|
||
<action android:name="android.intent.action.USER_PRESENT" />
|
||
<!-- 【可选】 一些常用的系统广播,增强移动推送 TPNS service的复活机会,请根据需要选择。当然,您也可以添加App自定义的一些广播让启动service -->
|
||
<action android:name="android.bluetooth.adapter.action.STATE_CHANGED" />
|
||
<action android:name="android.intent.action.ACTION_POWER_CONNECTED" />
|
||
<action android:name="android.intent.action.ACTION_POWER_DISCONNECTED" />
|
||
</intent-filter>
|
||
</receiver>
|
||
|
||
<!-- 【必须】移动推送 TPNS service -->
|
||
<service
|
||
android:name="com.tencent.android.tpush.service.XGVipPushService"
|
||
android:persistent="true"
|
||
android:process=":xg_vip_service" />
|
||
|
||
<!-- 【必须】通知 service ,android:name 部分改为包名.XGVIP_PUSH_ACTION -->
|
||
<service
|
||
android:name="com.tencent.android.tpush.rpc.XGRemoteService"
|
||
android:exported="false">
|
||
<intent-filter>
|
||
<!-- 【必须】请修改为当前APP名包.XGVIP_PUSH_ACTION -->
|
||
<action android:name="com.aoleyun.os.XGVIP_PUSH_ACTION" />
|
||
</intent-filter>
|
||
</service>
|
||
|
||
<!-- 【必须】【注意】authorities 修改为包名.XGVIP_PUSH_AUTH -->
|
||
<provider
|
||
android:name="com.tencent.android.tpush.XGPushProvider"
|
||
android:authorities="com.aoleyun.os.XGVIP_PUSH_AUTH"
|
||
tools:replace="android:authorities" />
|
||
|
||
<!-- 【必须】【注意】authorities 修改为包名.TPUSH_PROVIDER -->
|
||
<provider
|
||
android:name="com.tencent.android.tpush.SettingsContentProvider"
|
||
android:authorities="com.aoleyun.os.TPUSH_PROVIDER"
|
||
tools:replace="android:authorities" />
|
||
|
||
<!-- 【可选】用于增强保活能力 -->
|
||
<provider
|
||
android:name="com.tencent.android.tpush.XGVipPushKAProvider"
|
||
android:authorities="com.aoleyun.os.AUTH_XGPUSH_KEEPALIVE"
|
||
android:exported="true"
|
||
tools:replace="android:exported,android:authorities" />
|
||
|
||
<!-- 【可选】APP实现的Receiver,用于接收消息透传和操作结果的回调,请根据需要添加 -->
|
||
<!-- YOUR_PACKAGE_PATH.CustomPushReceiver需要改为自己的Receiver: -->
|
||
<receiver android:name="com.aoleyun.os.push.tpush.MessageReceiver">
|
||
<intent-filter>
|
||
<!-- 接收消息透传 -->
|
||
<action android:name="com.tencent.android.xg.vip.action.PUSH_MESSAGE" />
|
||
<!-- 监听注册、反注册、设置/删除标签、通知被点击等处理结果 -->
|
||
<action android:name="com.tencent.android.xg.vip.action.FEEDBACK" />
|
||
</intent-filter>
|
||
</receiver>
|
||
|
||
<!-- MQTT START -->
|
||
<service
|
||
android:name="com.tencent.tpns.mqttchannel.services.MqttService"
|
||
android:exported="false"
|
||
android:process=":xg_vip_service" />
|
||
|
||
<provider
|
||
android:name="com.tencent.tpns.baseapi.base.SettingsContentProvider"
|
||
android:authorities="com.aoleyun.os.XG_SETTINGS_PROVIDER"
|
||
android:exported="false"
|
||
tools:replace="android:authorities" />
|
||
|
||
<!-- MQTT END-->
|
||
|
||
<!-- 消息接收监听器 (用户可自主扩展) -->
|
||
<receiver
|
||
android:name=".push.alipush.AliyunMessageReceiver"
|
||
android:exported="false">
|
||
<intent-filter>
|
||
<action android:name="com.alibaba.push2.action.NOTIFICATION_OPENED" />
|
||
</intent-filter>
|
||
<intent-filter>
|
||
<action android:name="com.alibaba.push2.action.NOTIFICATION_REMOVED" />
|
||
</intent-filter>
|
||
<intent-filter>
|
||
<action android:name="com.alibaba.sdk.android.push.RECEIVE" />
|
||
</intent-filter>
|
||
</receiver>
|
||
|
||
<service
|
||
android:name=".push.alipush.AliMessageIntentService"
|
||
android:exported="false">
|
||
<intent-filter>
|
||
<action android:name="com.alibaba.push2.action.NOTIFICATION_OPENED" />
|
||
</intent-filter>
|
||
<intent-filter>
|
||
<action android:name="com.alibaba.push2.action.NOTIFICATION_REMOVED" />
|
||
</intent-filter>
|
||
<intent-filter>
|
||
<action android:name="com.alibaba.sdk.android.push.RECEIVE" />
|
||
</intent-filter>
|
||
</service>
|
||
|
||
<!-- 【必须】 请修改为 APP 的 AccessId,“15”开头的10位数字,中间没空格 -->
|
||
<meta-data
|
||
android:name="XG_V2_ACCESS_ID"
|
||
android:value="1500026378" />
|
||
<!-- 【必须】 请修改为APP的AccessKey,“A”开头的12位字符串,中间没空格 -->
|
||
<meta-data
|
||
android:name="XG_V2_ACCESS_KEY"
|
||
android:value="AH5QD9ZMBJ6R" />
|
||
|
||
<!-- 请填写你自己的- appKey -->
|
||
<meta-data
|
||
android:name="com.alibaba.app.appkey"
|
||
android:value="333598281" />
|
||
<!-- 请填写你自己的appSecret -->
|
||
<meta-data
|
||
android:name="com.alibaba.app.appsecret"
|
||
android:value="4a3f7e105d894a239ed089f18607bc5a" />
|
||
</application>
|
||
</manifest>
|