Add battery optimization controls and configurable boot startup. Keep message sounds in the application and render general settings lazily to avoid ANRs. Add animated emoji controls and live BGP availability for direct-message calls on Android and desktop.
103 lines
4.6 KiB
XML
103 lines
4.6 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
|
|
|
|
<uses-permission android:name="android.permission.INTERNET" />
|
|
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
|
|
<uses-permission android:name="android.permission.CAMERA" />
|
|
<uses-permission android:name="android.permission.RECORD_AUDIO" />
|
|
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
|
|
<uses-permission android:name="android.permission.MANAGE_OWN_CALLS" />
|
|
<uses-permission android:name="android.permission.BLUETOOTH_CONNECT" />
|
|
<uses-permission android:name="android.permission.BLUETOOTH" android:maxSdkVersion="30" />
|
|
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
|
|
<uses-permission android:name="android.permission.FOREGROUND_SERVICE_SPECIAL_USE" />
|
|
<uses-permission android:name="android.permission.FOREGROUND_SERVICE_MICROPHONE" />
|
|
<uses-permission android:name="android.permission.FOREGROUND_SERVICE_PHONE_CALL" />
|
|
|
|
<uses-permission android:name="android.permission.WAKE_LOCK" />
|
|
<uses-permission android:name="android.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS" />
|
|
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
|
|
<uses-permission android:name="android.permission.VIBRATE" />
|
|
<uses-permission android:name="android.permission.POST_NOTIFICATIONS" />
|
|
<uses-permission android:name="android.permission.USE_FULL_SCREEN_INTENT" />
|
|
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
|
|
|
|
<uses-permission android:name="android.permission.READ_MEDIA_AUDIO" android:minSdkVersion="33" />
|
|
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" android:maxSdkVersion="32" />
|
|
|
|
<application
|
|
android:name=".ChatApplication"
|
|
android:allowBackup="true"
|
|
android:icon="@mipmap/ic_launcher"
|
|
android:roundIcon="@mipmap/ic_launcher"
|
|
android:label="vibechat"
|
|
android:supportsRtl="true"
|
|
android:localeConfig="@xml/locales_config"
|
|
android:theme="@style/Theme.UTun">
|
|
|
|
<service android:name="androidx.appcompat.app.AppLocalesMetadataHolderService"
|
|
android:enabled="false" android:exported="false">
|
|
<meta-data android:name="autoStoreLocales" android:value="true" />
|
|
</service>
|
|
|
|
<activity
|
|
android:name=".MainActivity"
|
|
android:exported="true"
|
|
android:launchMode="singleTask"
|
|
android:configChanges="orientation|screenSize|screenLayout|keyboardHidden"
|
|
android:windowSoftInputMode="adjustResize">
|
|
<intent-filter>
|
|
<action android:name="android.intent.action.MAIN" />
|
|
<category android:name="android.intent.category.LAUNCHER" />
|
|
</intent-filter>
|
|
</activity>
|
|
|
|
<service
|
|
android:name=".headless.HeadlessService"
|
|
android:exported="false"
|
|
android:foregroundServiceType="specialUse">
|
|
<property
|
|
android:name="android.app.PROPERTY_SPECIAL_USE_FGS_SUBTYPE"
|
|
android:value="p2p_chat_network_service" />
|
|
</service>
|
|
|
|
<service
|
|
android:name=".data.RadioOverlayService"
|
|
android:exported="false"
|
|
android:foregroundServiceType="microphone|specialUse">
|
|
<property
|
|
android:name="android.app.PROPERTY_SPECIAL_USE_FGS_SUBTYPE"
|
|
android:value="ptt_overlay_service" />
|
|
</service>
|
|
|
|
<service
|
|
android:name=".data.CallService"
|
|
android:exported="false"
|
|
android:foregroundServiceType="phoneCall|microphone" />
|
|
|
|
<service
|
|
android:name=".data.UtunConnectionService"
|
|
android:exported="true"
|
|
android:permission="android.permission.BIND_TELECOM_CONNECTION_SERVICE">
|
|
<intent-filter>
|
|
<action android:name="android.telecom.ConnectionService" />
|
|
</intent-filter>
|
|
<meta-data
|
|
android:name="android.telecom.INCLUDE_SELF_MANAGED_CALLS"
|
|
android:value="true" />
|
|
</service>
|
|
|
|
<receiver
|
|
android:name=".headless.BootReceiver"
|
|
android:exported="false">
|
|
<intent-filter>
|
|
<action android:name="android.intent.action.BOOT_COMPLETED" />
|
|
</intent-filter>
|
|
</receiver>
|
|
|
|
<receiver
|
|
android:name=".data.IncomingCallActionReceiver"
|
|
android:exported="false" />
|
|
</application>
|
|
</manifest>
|