summaryrefslogtreecommitdiff
path: root/main/src/main/AndroidManifest.xml
diff options
context:
space:
mode:
Diffstat (limited to 'main/src/main/AndroidManifest.xml')
-rw-r--r--main/src/main/AndroidManifest.xml175
1 files changed, 175 insertions, 0 deletions
diff --git a/main/src/main/AndroidManifest.xml b/main/src/main/AndroidManifest.xml
new file mode 100644
index 00000000..7043e94b
--- /dev/null
+++ b/main/src/main/AndroidManifest.xml
@@ -0,0 +1,175 @@
+<?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="de.blinkt.openvpn">
+
+ <uses-permission android:name="android.permission.INTERNET" />
+ <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
+ <!-- <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> -->
+ <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
+ <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
+
+ <uses-permission android:name="com.android.vending.BILLING" />
+
+ <!-- Copy the <permission> block to your app when using the REMOTE API. Otherwise OpenVPN for
+ Android needs to be installed first -->
+ <permission
+ android:name="de.blinkt.openvpn.REMOTE_API"
+ android:description="@string/permission_description"
+ android:label="Control OpenVPN"
+ android:permissionGroup="android.permission-group.NETWORK"
+ android:protectionLevel="dangerous" />
+
+ <application
+ android:allowBackup="true"
+ android:theme="@android:style/Theme.DeviceDefault.Light"
+ android:icon="@drawable/icon"
+ android:label="@string/app"
+ android:name=".core.ICSOpenVPNApplication"
+ android:supportsRtl="true" >
+ <activity
+ android:name=".activities.VPNPreferences"
+ android:windowSoftInputMode="stateHidden"
+ android:exported="false"/>
+
+ <activity
+ android:theme="@android:style/Theme.DeviceDefault.Light.Dialog"
+ android:name=".activities.DisconnectVPN" />
+
+ <activity
+ android:name=".activities.LogWindow"
+ android:allowTaskReparenting="true"
+ android:label="@string/openvpn_log"
+ android:launchMode="singleTask" />
+ <activity android:name=".activities.FileSelect" />
+ <activity
+ android:name=".activities.MainActivity"
+ android:uiOptions="splitActionBarWhenNarrow"
+ tools:ignore="ExportedActivity" >
+ <intent-filter>
+ <action android:name="android.intent.action.MAIN" />
+
+ <category android:name="android.intent.category.BROWSABLE" />
+ <category android:name="android.intent.category.LAUNCHER" />
+ </intent-filter>
+ </activity>
+
+ <service
+ android:name="de.blinkt.openvpn.core.OpenVpnService"
+ android:permission="android.permission.BIND_VPN_SERVICE" >
+ <intent-filter>
+ <action android:name="android.net.VpnService" />
+ </intent-filter>
+ </service>
+ <service
+ android:name=".api.ExternalOpenVPNService"
+ android:permission="de.blinkt.openvpn.REMOTE_API" >
+ <intent-filter>
+ <action android:name="de.blinkt.openvpn.api.IOpenVPNAPIService" />
+ </intent-filter>
+ </service>
+
+ <activity
+ android:permission="de.blinkt.openvpn.REMOTE_API"
+ android:name=".api.GrantPermissionsActivity">
+ <intent-filter>
+ <action android:name="android.intent.action.MAIN" />
+ </intent-filter>
+ </activity>
+ <activity
+ android:permission="de.blinkt.openvpn.REMOTE_API"
+ android:name=".api.ConfirmDialog" >
+ <intent-filter>
+ <action android:name="android.intent.action.MAIN" />
+ </intent-filter>
+ </activity>
+
+ <receiver android:name=".OnBootReceiver" >
+ <intent-filter>
+ <action android:name="android.intent.action.BOOT_COMPLETED" />
+ </intent-filter>
+ </receiver>
+
+ <activity
+ android:name=".activities.ConfigConverter"
+ android:label="Convert Config File"
+ android:uiOptions="splitActionBarWhenNarrow"
+ tools:ignore="ExportedActivity" >
+ <intent-filter android:label="@string/import_config" >
+ <action android:name="android.intent.action.VIEW" />
+
+ <category android:name="android.intent.category.DEFAULT" />
+ <category android:name="android.intent.category.BROWSABLE" />
+
+ <data android:mimeType="application/x-openvpn-profile" />
+ </intent-filter>
+ <intent-filter android:label="@string/import_config" >
+ <action android:name="android.intent.action.VIEW" />
+
+ <category android:name="android.intent.category.DEFAULT" />
+ <category android:name="android.intent.category.BROWSABLE" />
+
+ <data android:mimeType="application/ovpn" />
+ </intent-filter>
+ <intent-filter android:label="@string/import_config" >
+
+ <!-- http://stackoverflow.com/questions/7030832/associating-certain-file-extension-to-my-android-application/7102838#7102838 -->
+ <action android:name="android.intent.action.VIEW" />
+
+ <category android:name="android.intent.category.BROWSABLE" />
+ <category android:name="android.intent.category.DEFAULT" />
+
+ <data android:mimeType="*/*" />
+ <data android:scheme="file" />
+ <data android:host="*" />
+ <data android:port="*" />
+ <data android:pathPattern=".*..*..*..*..*.ovpn" />
+ <data android:pathPattern=".*..*..*..*.ovpn" />
+ <data android:pathPattern=".*..*..*.ovpn" />
+ <data android:pathPattern=".*..*.ovpn" />
+ <data android:pathPattern=".*.ovpn" />
+ </intent-filter>
+ </activity>
+ <activity
+ android:name=".LaunchVPN"
+ android:label="@string/vpn_launch_title"
+ android:excludeFromRecents="true"
+ android:theme="@android:style/Theme.DeviceDefault.Light.Panel"
+ tools:ignore="ExportedActivity" >
+ <intent-filter>
+ <action android:name="android.intent.action.MAIN" />
+
+ <category android:name="android.intent.category.DEFAULT" />
+ </intent-filter>
+ </activity>
+
+
+ <activity
+ android:name=".activities.CreateShortcuts"
+ android:label="@string/vpn_shortcut"
+ android:excludeFromRecents="true"
+ android:theme="@android:style/Theme.DeviceDefault.Light.DialogWhenLarge" >
+ <intent-filter>
+ <action android:name="android.intent.action.CREATE_SHORTCUT" />
+ <category android:name="android.intent.category.DEFAULT" />
+ </intent-filter>
+ </activity>
+
+ <provider
+ android:name=".FileProvider"
+ android:authorities="de.blinkt.openvpn.FileProvider"
+ android:exported="true"
+ android:grantUriPermissions="true"
+ tools:ignore="ExportedContentProvider" />
+
+ <!--
+ <receiver android:name="core.GetRestrictionReceiver">
+ <intent-filter>
+ <action android:name="android.intent.action.GET_RESTRICTION_ENTRIES" />
+ </intent-filter>
+ </receiver>
+ -->
+ </application>
+
+</manifest>