apk(点击下载) / AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest android:versionCode="70108" android:versionName="7.1.8" android:compileSdkVersion="34" android:compileSdkVersionCodename="14" package="com.anydesk.anydeskandroid" platformBuildVersionCode="34" platformBuildVersionName="14"
xmlns:android="http://schemas.android.com/apk/res/android">
<uses-sdk android:minSdkVersion="21" android:targetSdkVersion="34" />
<permission android:label="@string/permission_broadcast_had_incoming_connection_label" android:name="com.anydesk.anydeskandroid.permission.RECEIVE_HAD_INCOMING_CONNECTION" android:protectionLevel="privileged|signature" android:description="@string/permission_broadcast_had_incoming_connection_description" />
<uses-feature android:glEsVersion="0x00020000" android:required="true" />
<uses-feature android:name="android.hardware.microphone" android:required="false" />
<uses-feature android:name="android.hardware.touchscreen" android:required="false" />
<uses-feature android:name="android.hardware.faketouch" android:required="false" />
<uses-feature android:name="android.software.leanback" android:required="false" />
<uses-permission android:name="com.samsung.android.knox.permission.KNOX_REMOTE_CONTROL" />
<uses-permission android:name="android.permission.sec.MDM_REMOTE_CONTROL" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.POST_NOTIFICATIONS" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.MANAGE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.QUERY_ALL_PACKAGES" />
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
<uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
<uses-permission android:name="android.permission.FOREGROUND_SERVICE_MEDIA_PROJECTION" />
<uses-permission android:name="android.permission.FOREGROUND_SERVICE_SPECIAL_USE" />
<uses-permission android:name="android.permission.FOREGROUND_SERVICE_DATA_SYNC" />
<uses-permission android:name="android.permission.INJECT_EVENTS" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.VIBRATE" />
<supports-screens android:anyDensity="true" android:smallScreens="true" android:normalScreens="true" android:largeScreens="true" android:resizeable="true" android:xlargeScreens="true" />
<queries>
<intent>
<action android:name="android.support.customtabs.action.CustomTabsService" />
</intent>
</queries>
<uses-permission android:name="android.permission.USE_BIOMETRIC" />
<uses-permission android:name="android.permission.USE_FINGERPRINT" />
<application android:theme="@style/AppTheme" android:label="@string/app_name" android:icon="@mipmap/ic_launcher" android:name="com.anydesk.anydeskandroid.MainApplication" android:testOnly="false" android:allowBackup="false" android:supportsRtl="true" android:banner="@drawable/tvbanner" android:lockTaskMode="if_whitelisted" android:resizeableActivity="true" android:directBootAware="true" android:roundIcon="@mipmap/ic_launcher_round" android:appComponentFactory="androidx.core.app.CoreComponentFactory" android:requestLegacyExternalStorage="true">
<meta-data android:name="android.content.APP_RESTRICTIONS" android:resource="@xml/app_restrictions" />
<meta-data android:name="com.samsung.knoxlicense.permissions" android:value="true" />
<receiver android:name="com.anydesk.anydeskandroid.adcontrol.SamsungLicenseReceiver" android:exported="false">
<intent-filter>
<action android:name="com.samsung.android.knox.intent.action.LICENSE_STATUS" />
<action android:name="com.samsung.android.knox.intent.extra.KNOX_LICENSE_STATUS" />
<action android:name="edm.intent.action.knox_license.status" />
<action android:name="edm.intent.action.license.status" />
</intent-filter>
</receiver>
<receiver android:label="@string/app_name" android:name="com.anydesk.anydeskandroid.adcontrol.AdDeviceAdminReceiver" android:permission="android.permission.BIND_DEVICE_ADMIN" android:exported="false" android:description="@string/device_admin_description">
<meta-data android:name="android.app.device_admin" android:resource="@xml/device_admin" />
<intent-filter>
<action android:name="android.app.action.DEVICE_ADMIN_ENABLED" />
</intent-filter>
</receiver>
<receiver android:name="com.anydesk.anydeskandroid.BootReceiver" android:enabled="true" android:exported="true" android:directBootAware="true">
<intent-filter>
<action android:name="android.intent.action.LOCKED_BOOT_COMPLETED" />
<action android:name="android.intent.action.BOOT_COMPLETED" />
</intent-filter>
</receiver>
<receiver android:name="com.anydesk.anydeskandroid.DismissIncomingRequestReceiver" android:enabled="true" android:exported="true" />
<receiver android:name="com.anydesk.anydeskandroid.DismissFileManagerSystemPermissionReceiver" android:enabled="true" android:exported="true" />
<activity android:theme="@style/AppTheme.NoActionBar" android:label="@string/app_name" android:name="com.anydesk.anydeskandroid.gui.activity.WebViewActivity" android:exported="false" />
<activity android:theme="@style/AppTheme.NoActionBar" android:label="@string/app_name" android:name="com.anydesk.anydeskandroid.gui.activity.MainActivity" android:exported="true" android:launchMode="singleTask" android:windowSoftInputMode="adjustPan|stateHidden" android:supportsPictureInPicture="true">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
<category android:name="android.intent.category.LEANBACK_LAUNCHER" />
<category android:name="android.intent.category.MULTIWINDOW_LAUNCHER" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="anydesk" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<data android:scheme="file" />
<data android:scheme="content" />
<data android:host="*" />
<data android:pathPattern=".*\\.anydesk" />
<data android:pathPattern=".*\\..*\\.anydesk" />
<data android:pathPattern=".*\\..*\\..*\\.anydesk" />
<data android:pathPattern=".*\\..*\\..*\\..*\\.anydesk" />
<data android:pathPattern=".*\\..*\\..*\\..*\\..*\\.anydesk" />
<data android:pathPattern=".*\\..*\\..*\\..*\\..*\\..*\\.anydesk" />
<data android:pathPattern=".*\\..*\\..*\\..*\\..*\\..*\\..*\\.anydesk" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<data android:scheme="content" />
<data android:host="*" />
<data android:mimeType="application/anydesk" />
</intent-filter>
</activity>
<provider android:name="com.anydesk.anydeskandroid.AdStorageProviderRecordings" android:permission="android.permission.MANAGE_DOCUMENTS" android:enabled="true" android:exported="true" android:authorities="com.anydesk.anydeskandroid.documents.recordings" android:grantUriPermissions="true">
<intent-filter>
<action android:name="android.content.action.DOCUMENTS_PROVIDER" />
</intent-filter>
</provider>
<provider android:name="com.anydesk.anydeskandroid.AdStorageProviderDownloads" android:permission="android.permission.MANAGE_DOCUMENTS" android:enabled="true" android:exported="true" android:authorities="com.anydesk.anydeskandroid.documents.downloads" android:grantUriPermissions="true">
<intent-filter>
<action android:name="android.content.action.DOCUMENTS_PROVIDER" />
</intent-filter>
</provider>
<service android:name="com.anydesk.anydeskandroid.AdVpnService" android:permission="android.permission.BIND_VPN_SERVICE" android:exported="false" android:foregroundServiceType="dataSync">
<intent-filter>
<action android:name="android.net.VpnService" />
</intent-filter>
</service>
<service android:name="com.anydesk.anydeskandroid.IncomingConnectionService" android:exported="false" android:foregroundServiceType="dataSync|mediaProjection" />
<service android:name="com.anydesk.anydeskandroid.ConnectionService" android:exported="false" android:foregroundServiceType="specialUse">
<property android:name="android.app.PROPERTY_SPECIAL_USE_FGS_SUBTYPE" android:value="Notifies user about an ongoing connection that lets them access and control another device via the AnyDesk network" />
</service>
<service android:name="com.anydesk.anydeskandroid.FileManagerProgressService" android:exported="false" android:foregroundServiceType="dataSync" />
<service android:name="com.anydesk.anydeskandroid.MainService" android:enabled="true" android:exported="true" android:foregroundServiceType="specialUse">
<property android:name="android.app.PROPERTY_SPECIAL_USE_FGS_SUBTYPE" android:value="Exposes an API to other apps that allows them to make use of some AnyDesk functionality" />
</service>
<provider android:name="androidx.core.content.FileProvider" android:exported="false" android:authorities="com.anydesk.anydeskandroid.fileprovider" android:grantUriPermissions="true">
<meta-data android:name="android.support.FILE_PROVIDER_PATHS" android:resource="@xml/file_paths" />
</provider>
<uses-library android:name="com.sec.android.app.multiwindow" android:required="false" />
<meta-data android:name="com.sec.android.support.multiwindow" android:value="true" />
<provider android:name="androidx.startup.InitializationProvider" android:exported="false" android:authorities="com.anydesk.anydeskandroid.androidx-startup">
<meta-data android:name="androidx.emoji2.text.EmojiCompatInitializer" android:value="androidx.startup" />
<meta-data android:name="androidx.lifecycle.ProcessLifecycleInitializer" android:value="androidx.startup" />
</provider>
<uses-library android:name="androidx.window.extensions" android:required="false" />
<uses-library android:name="androidx.window.sidecar" android:required="false" />
</application>
</manifest>