320 lines
14 KiB
XML
Executable file
320 lines
14 KiB
XML
Executable file
<?xml version="1.0" encoding="utf-8"?>
|
|
<manifest package="org.linphone"
|
|
xmlns:android="http://schemas.android.com/apk/res/android"
|
|
android:installLocation="auto"
|
|
android:versionCode="3324"
|
|
android:versionName="3.3.2-gc-4">
|
|
|
|
<uses-sdk
|
|
android:minSdkVersion="16"
|
|
android:targetSdkVersion="26"/>
|
|
|
|
<!-- Permissions for Push Notification -->
|
|
<!-- <uses-permission android:name="org.linphone.permission.C2D_MESSAGE"/> GCM permission -->
|
|
<!-- Change package ! -->
|
|
<!-- <uses-permission android:name="com.google.android.c2dm.permission.RECEIVE"/> GCM permission -->
|
|
<uses-permission android:name="android.permission.INTERNET"/>
|
|
<uses-permission android:name="android.permission.RECORD_AUDIO"/>
|
|
<uses-permission android:name="android.permission.READ_CONTACTS"/>
|
|
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS"/>
|
|
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
|
|
<uses-permission android:name="android.permission.WAKE_LOCK"/>
|
|
<uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS"/>
|
|
<uses-permission android:name="android.permission.CALL_PHONE"/>
|
|
<!-- Needed to allow Linphone to install on tablets, since android.permission.CALL_PHONE implies android.hardware.telephony is required -->
|
|
<uses-feature
|
|
android:name="android.hardware.telephony"
|
|
android:required="false"/>
|
|
|
|
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
|
|
<uses-permission android:name="android.permission.VIBRATE"/>
|
|
<uses-permission android:name="android.permission.CAMERA"/>
|
|
<!-- Needed to allow Linphone to install on tablets, since android.permission.CAMERA implies android.hardware.camera and android.hardware.camera.autofocus are required -->
|
|
<uses-feature
|
|
android:name="android.hardware.camera"
|
|
android:required="false"/>
|
|
|
|
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
|
|
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
|
|
<!-- Needed to store received images if the user wants to -->
|
|
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
|
|
<!-- Needed to use our own Contact editor -->
|
|
<uses-permission android:name="android.permission.WRITE_CONTACTS"/>
|
|
<!-- Needed to route the audio to the bluetooth headset if available -->
|
|
<uses-permission android:name="android.permission.BLUETOOTH"/>
|
|
<uses-permission android:name="android.permission.BROADCAST_STICKY"/>
|
|
<!-- Needed to pre fill the wizard email field (only if enabled in custom settings) -->
|
|
<uses-permission android:name="android.permission.GET_ACCOUNTS"/>
|
|
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
|
|
<uses-permission android:name="android.permission.CHANGE_WIFI_MULTICAST_STATE"/>
|
|
<uses-permission android:name="android.permission.READ_SYNC_SETTINGS"/>
|
|
<uses-permission android:name="android.permission.WRITE_SYNC_SETTINGS"/>
|
|
<uses-permission android:name="android.permission.AUTHENTICATE_ACCOUNTS"/>
|
|
<!-- Needed for in-app purchase -->
|
|
<!-- <uses-permission android:name="com.android.vending.BILLING"/> -->
|
|
<!-- Needed for overlay widget -->
|
|
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>
|
|
<!-- Needed for kill application yourself -->
|
|
<uses-permission android:name="android.permission.KILL_BACKGROUND_PROCESSES"/>
|
|
|
|
<supports-screens
|
|
android:anyDensity="true"
|
|
android:largeScreens="true"
|
|
android:normalScreens="true"
|
|
android:smallScreens="true"
|
|
android:xlargeScreens="true"/>
|
|
|
|
<application
|
|
android:icon="@mipmap/ic_launcher"
|
|
android:roundIcon="@mipmap/ic_launcher_round"
|
|
android:label="@string/app_name"
|
|
android:largeHeap="true">
|
|
<activity
|
|
android:name=".activities.LinphoneLauncherActivity"
|
|
android:exported="true"
|
|
android:launchMode="singleTask"
|
|
android:label="@string/app_name"
|
|
android:theme="@style/NoTitle"
|
|
android:windowSoftInputMode="adjustPan|stateHidden">
|
|
<intent-filter>
|
|
<action android:name="android.intent.action.MAIN"/>
|
|
|
|
<category android:name="android.intent.category.LAUNCHER"/>
|
|
</intent-filter>
|
|
<intent-filter>
|
|
<action android:name="android.intent.action.CALL"/>
|
|
<action android:name="android.intent.action.CALL_PRIVILEGED"/>
|
|
|
|
<category android:name="android.intent.category.DEFAULT"/>
|
|
|
|
<data android:scheme="tel"/>
|
|
<data android:scheme="sip"/>
|
|
</intent-filter>
|
|
<intent-filter>
|
|
<action android:name="android.intent.action.SENDTO"/>
|
|
|
|
<category android:name="android.intent.category.DEFAULT"/>
|
|
|
|
<data android:scheme="sip"/>
|
|
<data android:scheme="imto"/>
|
|
</intent-filter>
|
|
<intent-filter>
|
|
<data android:mimeType="@string/sync_mimetype"/> <!-- Change package in res/values/non_localizable_custom.xml ! -->
|
|
<action android:name="android.intent.action.VIEW"/>
|
|
|
|
<category android:name="android.intent.category.BROWSABLE"/>
|
|
<category android:name="android.intent.category.DEFAULT"/>
|
|
</intent-filter>
|
|
<intent-filter>
|
|
<action android:name="android.intent.action.SEND" />
|
|
<category android:name="android.intent.category.DEFAULT" />
|
|
<category android:name="android.intent.category.OPENABLE"/>
|
|
<data android:mimeType="text/*"/>
|
|
<data android:mimeType="image/*"/>
|
|
<data android:mimeType="audio/*"/>
|
|
<data android:mimeType="video/*"/>
|
|
<data android:mimeType="application/*"/>
|
|
</intent-filter>
|
|
<intent-filter>
|
|
<action android:name="org.linphone.intent.action.CallLaunched" />
|
|
<category android:name="android.intent.category.DEFAULT" />
|
|
</intent-filter>
|
|
</activity>
|
|
<activity
|
|
android:name=".activities.LinphoneActivity"
|
|
android:launchMode="singleTask"
|
|
android:theme="@style/NoTitle">
|
|
<intent-filter>
|
|
<action android:name="android.intent.action.MAIN"/>
|
|
</intent-filter>
|
|
</activity>
|
|
<activity
|
|
android:name=".call.CallIncomingActivity"
|
|
android:launchMode="singleTop"
|
|
android:theme="@style/NoTitle">
|
|
<intent-filter>
|
|
<action android:name="android.intent.action.MAIN"/>
|
|
</intent-filter>
|
|
</activity>
|
|
<activity
|
|
android:name=".call.CallOutgoingActivity"
|
|
android:launchMode="singleTop"
|
|
android:theme="@style/NoTitle">
|
|
<intent-filter>
|
|
<action android:name="android.intent.action.MAIN"/>
|
|
</intent-filter>
|
|
</activity>
|
|
<activity
|
|
android:name=".call.CallActivity"
|
|
android:launchMode="singleTop"
|
|
android:theme="@style/FullScreen">
|
|
<intent-filter>
|
|
<action android:name="android.intent.action.MAIN"/>
|
|
</intent-filter>
|
|
<!--
|
|
<intent-filter>
|
|
<action android:name="android.intent.action.VIEW" />
|
|
<data android:mimeType="audio/*" />
|
|
<data android:mimeType="video/*" />
|
|
<category android:name="android.intent.category.DEFAULT" />
|
|
</intent-filter>
|
|
-->
|
|
</activity>
|
|
<activity
|
|
android:name=".assistant.AssistantActivity"
|
|
android:screenOrientation="behind"
|
|
android:theme="@style/NoTitle">
|
|
<intent-filter>
|
|
<action android:name="android.intent.action.MAIN"/>
|
|
</intent-filter>
|
|
</activity>
|
|
<activity
|
|
android:name=".purchase.InAppPurchaseActivity"
|
|
android:screenOrientation="nosensor"
|
|
android:theme="@style/NoTitle">
|
|
<intent-filter>
|
|
<action android:name="android.intent.action.MAIN"/>
|
|
</intent-filter>
|
|
</activity>
|
|
<activity
|
|
android:name=".assistant.RemoteProvisioningLoginActivity"
|
|
android:screenOrientation="nosensor"
|
|
android:theme="@style/NoTitle">
|
|
<intent-filter>
|
|
<action android:name="android.intent.action.MAIN"/>
|
|
</intent-filter>
|
|
</activity>
|
|
<activity
|
|
android:name=".assistant.RemoteProvisioningActivity"
|
|
android:screenOrientation="nosensor"
|
|
android:theme="@style/NoTitle">
|
|
<intent-filter>
|
|
<action android:name="android.intent.action.MAIN"/>
|
|
</intent-filter>
|
|
<intent-filter>
|
|
<data android:scheme="linphone-config"/> <!-- Change if needed -->
|
|
<action android:name="android.intent.action.VIEW"/>
|
|
|
|
<category android:name="android.intent.category.BROWSABLE"/>
|
|
<category android:name="android.intent.category.DEFAULT"/>
|
|
</intent-filter>
|
|
</activity>
|
|
|
|
<service
|
|
android:name=".LinphoneService"
|
|
android:label="@string/service_name"
|
|
android:stopWithTask="false"/>
|
|
<service
|
|
android:name=".sync.SyncService"
|
|
android:exported="true">
|
|
<intent-filter>
|
|
<action android:name="android.content.SyncAdapter"/>
|
|
</intent-filter>
|
|
|
|
<meta-data
|
|
android:name="android.content.SyncAdapter"
|
|
android:resource="@xml/syncadapter"/>
|
|
<meta-data
|
|
android:name="android.provider.CONTACTS_STRUCTURE"
|
|
android:resource="@xml/contacts"/>
|
|
</service>
|
|
<service android:name=".sync.AuthenticationService">
|
|
<intent-filter>
|
|
<action android:name="android.accounts.AccountAuthenticator"/>
|
|
</intent-filter>
|
|
|
|
<meta-data
|
|
android:name="android.accounts.AccountAuthenticator"
|
|
android:resource="@xml/authenticator"/>
|
|
</service>
|
|
|
|
<receiver android:name=".receivers.NetworkManager">
|
|
<intent-filter>
|
|
<action android:name="android.net.conn.CONNECTIVITY_CHANGE"/>
|
|
</intent-filter>
|
|
</receiver>
|
|
<receiver
|
|
android:name=".receivers.BluetoothManager"
|
|
android:enabled="false">
|
|
</receiver>
|
|
<receiver android:name=".receivers.BootReceiver">
|
|
<intent-filter>
|
|
<action android:name="android.intent.action.BOOT_COMPLETED"/>
|
|
</intent-filter>
|
|
<intent-filter>
|
|
<action android:name="android.intent.action.ACTION_SHUTDOWN"/>
|
|
</intent-filter>
|
|
</receiver>
|
|
<receiver android:name=".receivers.PhoneStateChangedReceiver">
|
|
<intent-filter android:priority="999">
|
|
<action android:name="android.intent.action.PHONE_STATE"/>
|
|
</intent-filter>
|
|
</receiver>
|
|
|
|
<!-- This one needs to be registered from application -->
|
|
<receiver android:name=".receivers.KeepAliveReceiver"/>
|
|
|
|
<receiver android:name=".receivers.HookReceiver" >
|
|
<intent-filter>
|
|
<action android:name="com.base.module.phone.HOOKEVENT" />
|
|
</intent-filter>
|
|
</receiver>
|
|
|
|
<receiver android:name=".receivers.OutgoingCallReceiver"
|
|
android:permission="android.permission.PROCESS_OUTGOING_CALLS">
|
|
<intent-filter>
|
|
<action android:name="android.intent.action.NEW_OUTGOING_CALL" />
|
|
</intent-filter>
|
|
</receiver>
|
|
<!-- Needed for push notification -->
|
|
<!--
|
|
<receiver
|
|
android:name=".gcm.GCMReceiver"
|
|
android:permission="com.google.android.c2dm.permission.SEND">
|
|
<intent-filter>
|
|
<action android:name="com.google.android.c2dm.intent.RECEIVE"/>
|
|
<action android:name="com.google.android.c2dm.intent.REGISTRATION"/>
|
|
|
|
<category android:name="org.linphone"/>
|
|
-->
|
|
<!-- Change package ! -->
|
|
<!--
|
|
</intent-filter>
|
|
</receiver>
|
|
|
|
<service android:name=".gcm.GCMService"/>
|
|
-->
|
|
|
|
<receiver
|
|
android:name=".receivers.AccountEnableReceiver"
|
|
android:permission="android.permission.USE_SIP">
|
|
<intent-filter>
|
|
<action android:name="org.linphone.intent.ACCOUNTACTIVATE"/>
|
|
</intent-filter>
|
|
</receiver>
|
|
|
|
<service android:name=".firebase.FirebaseIdService">
|
|
<intent-filter>
|
|
<action android:name="com.google.firebase.INSTANCE_ID_EVENT"/>
|
|
</intent-filter>
|
|
</service>
|
|
<service android:name=".firebase.FirebaseMessaging">
|
|
<intent-filter>
|
|
<action android:name="com.google.firebase.MESSAGING_EVENT"/>
|
|
</intent-filter>
|
|
</service>
|
|
|
|
<provider
|
|
android:name="android.support.v4.content.FileProvider"
|
|
android:authorities="org.linphone.provider"
|
|
android:exported="false"
|
|
android:grantUriPermissions="true">
|
|
<meta-data
|
|
android:name="android.support.FILE_PROVIDER_PATHS"
|
|
android:resource="@xml/provider_paths"/>
|
|
</provider>
|
|
|
|
<activity android:name=".activities.LinphoneGenericActivity"/>
|
|
|
|
</application>
|
|
</manifest>
|