aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorTobias Brunner <tobias@strongswan.org>2015-10-22 17:18:14 +0200
committerTobias Brunner <tobias@strongswan.org>2015-11-12 14:11:37 +0100
commita50f3037ad30fa6020a4ec56e6afe3da7ca1731d (patch)
tree92e248596980d8f8c57975663161a6cd6216474d /src
parent073761ec41f59aa0ea81484561485b7584656540 (diff)
downloadstrongswan-a50f3037ad30fa6020a4ec56e6afe3da7ca1731d.tar.bz2
strongswan-a50f3037ad30fa6020a4ec56e6afe3da7ca1731d.tar.xz
android: Migrate to the Gradle build system
This uses a manual way to trigger the NDK build (the default with on-the-fly Android.mk files does not work for us).
Diffstat (limited to 'src')
-rw-r--r--src/frontends/android/.classpath9
-rw-r--r--src/frontends/android/.gitignore11
-rw-r--r--src/frontends/android/README.ndk4
-rw-r--r--src/frontends/android/app/build.gradle42
-rw-r--r--src/frontends/android/app/src/main/AndroidManifest.xml (renamed from src/frontends/android/AndroidManifest.xml)6
-rw-r--r--src/frontends/android/app/src/main/java/org/strongswan/android/data/LogContentProvider.java (renamed from src/frontends/android/src/org/strongswan/android/data/LogContentProvider.java)0
-rw-r--r--src/frontends/android/app/src/main/java/org/strongswan/android/data/VpnProfile.java (renamed from src/frontends/android/src/org/strongswan/android/data/VpnProfile.java)0
-rw-r--r--src/frontends/android/app/src/main/java/org/strongswan/android/data/VpnProfileDataSource.java (renamed from src/frontends/android/src/org/strongswan/android/data/VpnProfileDataSource.java)0
-rw-r--r--src/frontends/android/app/src/main/java/org/strongswan/android/data/VpnType.java (renamed from src/frontends/android/src/org/strongswan/android/data/VpnType.java)0
-rw-r--r--src/frontends/android/app/src/main/java/org/strongswan/android/logic/CharonVpnService.java (renamed from src/frontends/android/src/org/strongswan/android/logic/CharonVpnService.java)0
-rw-r--r--src/frontends/android/app/src/main/java/org/strongswan/android/logic/NetworkManager.java (renamed from src/frontends/android/src/org/strongswan/android/logic/NetworkManager.java)0
-rw-r--r--src/frontends/android/app/src/main/java/org/strongswan/android/logic/StrongSwanApplication.java (renamed from src/frontends/android/src/org/strongswan/android/logic/StrongSwanApplication.java)0
-rw-r--r--src/frontends/android/app/src/main/java/org/strongswan/android/logic/TrustedCertificateManager.java (renamed from src/frontends/android/src/org/strongswan/android/logic/TrustedCertificateManager.java)0
-rw-r--r--src/frontends/android/app/src/main/java/org/strongswan/android/logic/VpnStateService.java (renamed from src/frontends/android/src/org/strongswan/android/logic/VpnStateService.java)0
-rw-r--r--src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/AndroidImc.java (renamed from src/frontends/android/src/org/strongswan/android/logic/imc/AndroidImc.java)0
-rw-r--r--src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/ImcState.java (renamed from src/frontends/android/src/org/strongswan/android/logic/imc/ImcState.java)0
-rw-r--r--src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/RemediationInstruction.java (renamed from src/frontends/android/src/org/strongswan/android/logic/imc/RemediationInstruction.java)0
-rw-r--r--src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/attributes/Attribute.java (renamed from src/frontends/android/src/org/strongswan/android/logic/imc/attributes/Attribute.java)0
-rw-r--r--src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/attributes/AttributeType.java (renamed from src/frontends/android/src/org/strongswan/android/logic/imc/attributes/AttributeType.java)0
-rw-r--r--src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/attributes/DeviceIdAttribute.java (renamed from src/frontends/android/src/org/strongswan/android/logic/imc/attributes/DeviceIdAttribute.java)0
-rw-r--r--src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/attributes/InstalledPackagesAttribute.java (renamed from src/frontends/android/src/org/strongswan/android/logic/imc/attributes/InstalledPackagesAttribute.java)0
-rw-r--r--src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/attributes/PortFilterAttribute.java (renamed from src/frontends/android/src/org/strongswan/android/logic/imc/attributes/PortFilterAttribute.java)0
-rw-r--r--src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/attributes/PrivateEnterpriseNumber.java (renamed from src/frontends/android/src/org/strongswan/android/logic/imc/attributes/PrivateEnterpriseNumber.java)0
-rw-r--r--src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/attributes/ProductInformationAttribute.java (renamed from src/frontends/android/src/org/strongswan/android/logic/imc/attributes/ProductInformationAttribute.java)0
-rw-r--r--src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/attributes/SettingsAttribute.java (renamed from src/frontends/android/src/org/strongswan/android/logic/imc/attributes/SettingsAttribute.java)0
-rw-r--r--src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/attributes/StringVersionAttribute.java (renamed from src/frontends/android/src/org/strongswan/android/logic/imc/attributes/StringVersionAttribute.java)0
-rw-r--r--src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/collectors/Collector.java (renamed from src/frontends/android/src/org/strongswan/android/logic/imc/collectors/Collector.java)0
-rw-r--r--src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/collectors/DeviceIdCollector.java (renamed from src/frontends/android/src/org/strongswan/android/logic/imc/collectors/DeviceIdCollector.java)0
-rw-r--r--src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/collectors/InstalledPackagesCollector.java (renamed from src/frontends/android/src/org/strongswan/android/logic/imc/collectors/InstalledPackagesCollector.java)0
-rw-r--r--src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/collectors/PortFilterCollector.java (renamed from src/frontends/android/src/org/strongswan/android/logic/imc/collectors/PortFilterCollector.java)0
-rw-r--r--src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/collectors/ProductInformationCollector.java (renamed from src/frontends/android/src/org/strongswan/android/logic/imc/collectors/ProductInformationCollector.java)0
-rw-r--r--src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/collectors/Protocol.java (renamed from src/frontends/android/src/org/strongswan/android/logic/imc/collectors/Protocol.java)0
-rw-r--r--src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/collectors/SettingsCollector.java (renamed from src/frontends/android/src/org/strongswan/android/logic/imc/collectors/SettingsCollector.java)0
-rw-r--r--src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/collectors/StringVersionCollector.java (renamed from src/frontends/android/src/org/strongswan/android/logic/imc/collectors/StringVersionCollector.java)0
-rw-r--r--src/frontends/android/app/src/main/java/org/strongswan/android/security/LocalCertificateKeyStoreProvider.java (renamed from src/frontends/android/src/org/strongswan/android/security/LocalCertificateKeyStoreProvider.java)0
-rw-r--r--src/frontends/android/app/src/main/java/org/strongswan/android/security/LocalCertificateKeyStoreSpi.java (renamed from src/frontends/android/src/org/strongswan/android/security/LocalCertificateKeyStoreSpi.java)0
-rw-r--r--src/frontends/android/app/src/main/java/org/strongswan/android/security/LocalCertificateStore.java (renamed from src/frontends/android/src/org/strongswan/android/security/LocalCertificateStore.java)0
-rw-r--r--src/frontends/android/app/src/main/java/org/strongswan/android/security/TrustedCertificateEntry.java (renamed from src/frontends/android/src/org/strongswan/android/security/TrustedCertificateEntry.java)0
-rw-r--r--src/frontends/android/app/src/main/java/org/strongswan/android/ui/CertificateDeleteConfirmationDialog.java (renamed from src/frontends/android/src/org/strongswan/android/ui/CertificateDeleteConfirmationDialog.java)0
-rw-r--r--src/frontends/android/app/src/main/java/org/strongswan/android/ui/ImcStateFragment.java (renamed from src/frontends/android/src/org/strongswan/android/ui/ImcStateFragment.java)0
-rw-r--r--src/frontends/android/app/src/main/java/org/strongswan/android/ui/LogActivity.java (renamed from src/frontends/android/src/org/strongswan/android/ui/LogActivity.java)0
-rw-r--r--src/frontends/android/app/src/main/java/org/strongswan/android/ui/LogFragment.java (renamed from src/frontends/android/src/org/strongswan/android/ui/LogFragment.java)0
-rw-r--r--src/frontends/android/app/src/main/java/org/strongswan/android/ui/LogScrollView.java (renamed from src/frontends/android/src/org/strongswan/android/ui/LogScrollView.java)0
-rw-r--r--src/frontends/android/app/src/main/java/org/strongswan/android/ui/MainActivity.java (renamed from src/frontends/android/src/org/strongswan/android/ui/MainActivity.java)0
-rw-r--r--src/frontends/android/app/src/main/java/org/strongswan/android/ui/RemediationInstructionFragment.java (renamed from src/frontends/android/src/org/strongswan/android/ui/RemediationInstructionFragment.java)0
-rw-r--r--src/frontends/android/app/src/main/java/org/strongswan/android/ui/RemediationInstructionsActivity.java (renamed from src/frontends/android/src/org/strongswan/android/ui/RemediationInstructionsActivity.java)0
-rw-r--r--src/frontends/android/app/src/main/java/org/strongswan/android/ui/RemediationInstructionsFragment.java (renamed from src/frontends/android/src/org/strongswan/android/ui/RemediationInstructionsFragment.java)0
-rw-r--r--src/frontends/android/app/src/main/java/org/strongswan/android/ui/TrustedCertificateImportActivity.java (renamed from src/frontends/android/src/org/strongswan/android/ui/TrustedCertificateImportActivity.java)0
-rw-r--r--src/frontends/android/app/src/main/java/org/strongswan/android/ui/TrustedCertificateListFragment.java (renamed from src/frontends/android/src/org/strongswan/android/ui/TrustedCertificateListFragment.java)0
-rw-r--r--src/frontends/android/app/src/main/java/org/strongswan/android/ui/TrustedCertificatesActivity.java (renamed from src/frontends/android/src/org/strongswan/android/ui/TrustedCertificatesActivity.java)0
-rw-r--r--src/frontends/android/app/src/main/java/org/strongswan/android/ui/VpnProfileDetailActivity.java (renamed from src/frontends/android/src/org/strongswan/android/ui/VpnProfileDetailActivity.java)0
-rw-r--r--src/frontends/android/app/src/main/java/org/strongswan/android/ui/VpnProfileListFragment.java (renamed from src/frontends/android/src/org/strongswan/android/ui/VpnProfileListFragment.java)0
-rw-r--r--src/frontends/android/app/src/main/java/org/strongswan/android/ui/VpnProfileSelectActivity.java (renamed from src/frontends/android/src/org/strongswan/android/ui/VpnProfileSelectActivity.java)0
-rw-r--r--src/frontends/android/app/src/main/java/org/strongswan/android/ui/VpnStateFragment.java (renamed from src/frontends/android/src/org/strongswan/android/ui/VpnStateFragment.java)0
-rw-r--r--src/frontends/android/app/src/main/java/org/strongswan/android/ui/adapter/RemediationInstructionAdapter.java (renamed from src/frontends/android/src/org/strongswan/android/ui/adapter/RemediationInstructionAdapter.java)0
-rw-r--r--src/frontends/android/app/src/main/java/org/strongswan/android/ui/adapter/TrustedCertificateAdapter.java (renamed from src/frontends/android/src/org/strongswan/android/ui/adapter/TrustedCertificateAdapter.java)0
-rw-r--r--src/frontends/android/app/src/main/java/org/strongswan/android/ui/adapter/VpnProfileAdapter.java (renamed from src/frontends/android/src/org/strongswan/android/ui/adapter/VpnProfileAdapter.java)0
-rw-r--r--src/frontends/android/app/src/main/java/org/strongswan/android/utils/BufferedByteWriter.java (renamed from src/frontends/android/src/org/strongswan/android/utils/BufferedByteWriter.java)0
-rw-r--r--src/frontends/android/app/src/main/java/org/strongswan/android/utils/SettingsWriter.java (renamed from src/frontends/android/src/org/strongswan/android/utils/SettingsWriter.java)0
-rw-r--r--src/frontends/android/app/src/main/java/org/strongswan/android/utils/Utils.java (renamed from src/frontends/android/src/org/strongswan/android/utils/Utils.java)0
-rw-r--r--src/frontends/android/app/src/main/jni/.gitignore (renamed from src/frontends/android/jni/.gitignore)0
-rw-r--r--src/frontends/android/app/src/main/jni/Android.mk (renamed from src/frontends/android/jni/Android.mk)0
-rw-r--r--src/frontends/android/app/src/main/jni/Application.mk (renamed from src/frontends/android/jni/Application.mk)0
-rw-r--r--src/frontends/android/app/src/main/jni/libandroidbridge/Android.mk (renamed from src/frontends/android/jni/libandroidbridge/Android.mk)0
-rw-r--r--src/frontends/android/app/src/main/jni/libandroidbridge/android_jni.c (renamed from src/frontends/android/jni/libandroidbridge/android_jni.c)0
-rw-r--r--src/frontends/android/app/src/main/jni/libandroidbridge/android_jni.h (renamed from src/frontends/android/jni/libandroidbridge/android_jni.h)0
-rw-r--r--src/frontends/android/app/src/main/jni/libandroidbridge/backend/android_attr.c (renamed from src/frontends/android/jni/libandroidbridge/backend/android_attr.c)0
-rw-r--r--src/frontends/android/app/src/main/jni/libandroidbridge/backend/android_attr.h (renamed from src/frontends/android/jni/libandroidbridge/backend/android_attr.h)0
-rw-r--r--src/frontends/android/app/src/main/jni/libandroidbridge/backend/android_creds.c (renamed from src/frontends/android/jni/libandroidbridge/backend/android_creds.c)0
-rw-r--r--src/frontends/android/app/src/main/jni/libandroidbridge/backend/android_creds.h (renamed from src/frontends/android/jni/libandroidbridge/backend/android_creds.h)0
-rw-r--r--src/frontends/android/app/src/main/jni/libandroidbridge/backend/android_dns_proxy.c (renamed from src/frontends/android/jni/libandroidbridge/backend/android_dns_proxy.c)0
-rw-r--r--src/frontends/android/app/src/main/jni/libandroidbridge/backend/android_dns_proxy.h (renamed from src/frontends/android/jni/libandroidbridge/backend/android_dns_proxy.h)0
-rw-r--r--src/frontends/android/app/src/main/jni/libandroidbridge/backend/android_private_key.c (renamed from src/frontends/android/jni/libandroidbridge/backend/android_private_key.c)0
-rw-r--r--src/frontends/android/app/src/main/jni/libandroidbridge/backend/android_private_key.h (renamed from src/frontends/android/jni/libandroidbridge/backend/android_private_key.h)0
-rw-r--r--src/frontends/android/app/src/main/jni/libandroidbridge/backend/android_service.c (renamed from src/frontends/android/jni/libandroidbridge/backend/android_service.c)0
-rw-r--r--src/frontends/android/app/src/main/jni/libandroidbridge/backend/android_service.h (renamed from src/frontends/android/jni/libandroidbridge/backend/android_service.h)0
-rw-r--r--src/frontends/android/app/src/main/jni/libandroidbridge/byod/imc_android.c (renamed from src/frontends/android/jni/libandroidbridge/byod/imc_android.c)0
-rw-r--r--src/frontends/android/app/src/main/jni/libandroidbridge/byod/imc_android.h (renamed from src/frontends/android/jni/libandroidbridge/byod/imc_android.h)0
-rw-r--r--src/frontends/android/app/src/main/jni/libandroidbridge/byod/imc_android_state.c (renamed from src/frontends/android/jni/libandroidbridge/byod/imc_android_state.c)0
-rw-r--r--src/frontends/android/app/src/main/jni/libandroidbridge/byod/imc_android_state.h (renamed from src/frontends/android/jni/libandroidbridge/byod/imc_android_state.h)0
-rw-r--r--src/frontends/android/app/src/main/jni/libandroidbridge/charonservice.c (renamed from src/frontends/android/jni/libandroidbridge/charonservice.c)0
-rw-r--r--src/frontends/android/app/src/main/jni/libandroidbridge/charonservice.h (renamed from src/frontends/android/jni/libandroidbridge/charonservice.h)0
-rw-r--r--src/frontends/android/app/src/main/jni/libandroidbridge/kernel/android_ipsec.c (renamed from src/frontends/android/jni/libandroidbridge/kernel/android_ipsec.c)0
-rw-r--r--src/frontends/android/app/src/main/jni/libandroidbridge/kernel/android_ipsec.h (renamed from src/frontends/android/jni/libandroidbridge/kernel/android_ipsec.h)0
-rw-r--r--src/frontends/android/app/src/main/jni/libandroidbridge/kernel/android_net.c (renamed from src/frontends/android/jni/libandroidbridge/kernel/android_net.c)0
-rw-r--r--src/frontends/android/app/src/main/jni/libandroidbridge/kernel/android_net.h (renamed from src/frontends/android/jni/libandroidbridge/kernel/android_net.h)0
-rw-r--r--src/frontends/android/app/src/main/jni/libandroidbridge/kernel/network_manager.c (renamed from src/frontends/android/jni/libandroidbridge/kernel/network_manager.c)0
-rw-r--r--src/frontends/android/app/src/main/jni/libandroidbridge/kernel/network_manager.h (renamed from src/frontends/android/jni/libandroidbridge/kernel/network_manager.h)0
-rw-r--r--src/frontends/android/app/src/main/jni/libandroidbridge/vpnservice_builder.c (renamed from src/frontends/android/jni/libandroidbridge/vpnservice_builder.c)0
-rw-r--r--src/frontends/android/app/src/main/jni/libandroidbridge/vpnservice_builder.h (renamed from src/frontends/android/jni/libandroidbridge/vpnservice_builder.h)0
-rw-r--r--src/frontends/android/app/src/main/res/drawable-hdpi/ic_launcher.png (renamed from src/frontends/android/res/drawable-hdpi/ic_launcher.png)bin4953 -> 4953 bytes
-rw-r--r--src/frontends/android/app/src/main/res/drawable-mdpi/ic_launcher.png (renamed from src/frontends/android/res/drawable-mdpi/ic_launcher.png)bin3149 -> 3149 bytes
-rw-r--r--src/frontends/android/app/src/main/res/drawable-xhdpi/ic_launcher.png (renamed from src/frontends/android/res/drawable-xhdpi/ic_launcher.png)bin6786 -> 6786 bytes
-rw-r--r--src/frontends/android/app/src/main/res/drawable/remediation_instruction_background_large.xml (renamed from src/frontends/android/res/drawable/remediation_instruction_background_large.xml)0
-rw-r--r--src/frontends/android/app/src/main/res/drawable/state_background.xml (renamed from src/frontends/android/res/drawable/state_background.xml)0
-rw-r--r--src/frontends/android/app/src/main/res/layout-large/remediation_instructions.xml (renamed from src/frontends/android/res/layout-large/remediation_instructions.xml)0
-rw-r--r--src/frontends/android/app/src/main/res/layout/imc_state_fragment.xml (renamed from src/frontends/android/res/layout/imc_state_fragment.xml)0
-rw-r--r--src/frontends/android/app/src/main/res/layout/log_activity.xml (renamed from src/frontends/android/res/layout/log_activity.xml)0
-rw-r--r--src/frontends/android/app/src/main/res/layout/log_fragment.xml (renamed from src/frontends/android/res/layout/log_fragment.xml)0
-rw-r--r--src/frontends/android/app/src/main/res/layout/login_dialog.xml (renamed from src/frontends/android/res/layout/login_dialog.xml)0
-rw-r--r--src/frontends/android/app/src/main/res/layout/main.xml (renamed from src/frontends/android/res/layout/main.xml)0
-rw-r--r--src/frontends/android/app/src/main/res/layout/profile_detail_view.xml (renamed from src/frontends/android/res/layout/profile_detail_view.xml)0
-rw-r--r--src/frontends/android/app/src/main/res/layout/profile_list_fragment.xml (renamed from src/frontends/android/res/layout/profile_list_fragment.xml)0
-rw-r--r--src/frontends/android/app/src/main/res/layout/profile_list_item.xml (renamed from src/frontends/android/res/layout/profile_list_item.xml)0
-rw-r--r--src/frontends/android/app/src/main/res/layout/remediation_instruction.xml (renamed from src/frontends/android/res/layout/remediation_instruction.xml)0
-rw-r--r--src/frontends/android/app/src/main/res/layout/remediation_instruction_item.xml (renamed from src/frontends/android/res/layout/remediation_instruction_item.xml)0
-rw-r--r--src/frontends/android/app/src/main/res/layout/remediation_instructions.xml (renamed from src/frontends/android/res/layout/remediation_instructions.xml)0
-rw-r--r--src/frontends/android/app/src/main/res/layout/trusted_certificates_activity.xml (renamed from src/frontends/android/res/layout/trusted_certificates_activity.xml)0
-rw-r--r--src/frontends/android/app/src/main/res/layout/trusted_certificates_item.xml (renamed from src/frontends/android/res/layout/trusted_certificates_item.xml)0
-rw-r--r--src/frontends/android/app/src/main/res/layout/two_line_button.xml (renamed from src/frontends/android/res/layout/two_line_button.xml)0
-rw-r--r--src/frontends/android/app/src/main/res/layout/vpn_profile_select.xml (renamed from src/frontends/android/res/layout/vpn_profile_select.xml)0
-rw-r--r--src/frontends/android/app/src/main/res/layout/vpn_state_fragment.xml (renamed from src/frontends/android/res/layout/vpn_state_fragment.xml)0
-rw-r--r--src/frontends/android/app/src/main/res/menu/certificates.xml (renamed from src/frontends/android/res/menu/certificates.xml)0
-rw-r--r--src/frontends/android/app/src/main/res/menu/log.xml (renamed from src/frontends/android/res/menu/log.xml)0
-rw-r--r--src/frontends/android/app/src/main/res/menu/main.xml (renamed from src/frontends/android/res/menu/main.xml)0
-rw-r--r--src/frontends/android/app/src/main/res/menu/profile_edit.xml (renamed from src/frontends/android/res/menu/profile_edit.xml)0
-rw-r--r--src/frontends/android/app/src/main/res/menu/profile_list.xml (renamed from src/frontends/android/res/menu/profile_list.xml)0
-rw-r--r--src/frontends/android/app/src/main/res/menu/profile_list_context.xml (renamed from src/frontends/android/res/menu/profile_list_context.xml)0
-rw-r--r--src/frontends/android/app/src/main/res/values-de/arrays.xml (renamed from src/frontends/android/res/values-de/arrays.xml)0
-rw-r--r--src/frontends/android/app/src/main/res/values-de/strings.xml (renamed from src/frontends/android/res/values-de/strings.xml)0
-rw-r--r--src/frontends/android/app/src/main/res/values-pl/arrays.xml (renamed from src/frontends/android/res/values-pl/arrays.xml)0
-rw-r--r--src/frontends/android/app/src/main/res/values-pl/strings.xml (renamed from src/frontends/android/res/values-pl/strings.xml)0
-rw-r--r--src/frontends/android/app/src/main/res/values-ru/arrays.xml (renamed from src/frontends/android/res/values-ru/arrays.xml)0
-rw-r--r--src/frontends/android/app/src/main/res/values-ru/strings.xml (renamed from src/frontends/android/res/values-ru/strings.xml)0
-rw-r--r--src/frontends/android/app/src/main/res/values-ua/arrays.xml (renamed from src/frontends/android/res/values-ua/arrays.xml)0
-rw-r--r--src/frontends/android/app/src/main/res/values-ua/strings.xml (renamed from src/frontends/android/res/values-ua/strings.xml)0
-rw-r--r--src/frontends/android/app/src/main/res/values/arrays.xml (renamed from src/frontends/android/res/values/arrays.xml)0
-rw-r--r--src/frontends/android/app/src/main/res/values/attrs.xml (renamed from src/frontends/android/res/values/attrs.xml)0
-rw-r--r--src/frontends/android/app/src/main/res/values/colors.xml (renamed from src/frontends/android/res/values/colors.xml)0
-rw-r--r--src/frontends/android/app/src/main/res/values/strings.xml (renamed from src/frontends/android/res/values/strings.xml)0
-rw-r--r--src/frontends/android/app/src/main/res/values/styles.xml (renamed from src/frontends/android/res/values/styles.xml)0
-rw-r--r--src/frontends/android/build.gradle14
-rw-r--r--src/frontends/android/gradle/wrapper/gradle-wrapper.jarbin0 -> 49896 bytes
-rw-r--r--src/frontends/android/gradle/wrapper/gradle-wrapper.properties6
-rwxr-xr-xsrc/frontends/android/gradlew164
-rw-r--r--src/frontends/android/gradlew.bat90
-rw-r--r--src/frontends/android/proguard.cfg40
-rw-r--r--src/frontends/android/project.properties11
-rw-r--r--src/frontends/android/settings.gradle1
139 files changed, 327 insertions, 71 deletions
diff --git a/src/frontends/android/.classpath b/src/frontends/android/.classpath
deleted file mode 100644
index 51769745b..000000000
--- a/src/frontends/android/.classpath
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <classpathentry kind="con" path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK"/>
- <classpathentry exported="true" kind="con" path="com.android.ide.eclipse.adt.LIBRARIES"/>
- <classpathentry exported="true" kind="con" path="com.android.ide.eclipse.adt.DEPENDENCIES"/>
- <classpathentry kind="src" path="src"/>
- <classpathentry kind="src" path="gen"/>
- <classpathentry kind="output" path="bin/classes"/>
-</classpath>
diff --git a/src/frontends/android/.gitignore b/src/frontends/android/.gitignore
index a031dba58..7e4bcfd4e 100644
--- a/src/frontends/android/.gitignore
+++ b/src/frontends/android/.gitignore
@@ -1,4 +1,7 @@
-bin/
-gen/
-libs/
-obj/
+.gradle/
+.idea/
+app/build/
+app/src/main/libs
+app/src/main/obj
+*.iml
+local.properties
diff --git a/src/frontends/android/README.ndk b/src/frontends/android/README.ndk
index 699fa3f11..7c8cd309e 100644
--- a/src/frontends/android/README.ndk
+++ b/src/frontends/android/README.ndk
@@ -1,5 +1,5 @@
-To build this within the NDK several things have to be added in the jni
-folder:
+To build this within the NDK several things have to be added in the
+app/src/main/jni/ folder:
- strongswan: The strongSwan sources. This can either be an extracted tarball,
or a symlink to the Git repository. To build from the repository the sources
diff --git a/src/frontends/android/app/build.gradle b/src/frontends/android/app/build.gradle
new file mode 100644
index 000000000..8280f501f
--- /dev/null
+++ b/src/frontends/android/app/build.gradle
@@ -0,0 +1,42 @@
+apply plugin: 'com.android.application'
+
+android {
+ compileSdkVersion 21
+ buildToolsVersion "22.0.1"
+
+ defaultConfig {
+ applicationId "org.strongswan.android"
+ minSdkVersion 15
+ targetSdkVersion 22
+ versionCode 28
+ versionName "1.5.0"
+ }
+
+ sourceSets.main {
+ jni.srcDirs = [] // disables the default ndk-build call (with on-the-fly Android.mk files)
+ jniLibs.srcDir 'src/main/libs'
+ }
+
+ task buildNative(type: Exec) {
+ workingDir 'src/main/jni'
+ commandLine "${android.ndkDirectory}/ndk-build", '-j', Runtime.runtime.availableProcessors()
+ }
+
+ task cleanNative(type: Exec) {
+ workingDir 'src/main/jni'
+ commandLine "${android.ndkDirectory}/ndk-build", 'clean'
+ }
+
+ tasks.withType(JavaCompile) {
+ compileTask -> compileTask.dependsOn buildNative
+ }
+
+ clean.dependsOn 'cleanNative'
+
+ buildTypes {
+ release {
+ minifyEnabled false
+ proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
+ }
+ }
+}
diff --git a/src/frontends/android/AndroidManifest.xml b/src/frontends/android/app/src/main/AndroidManifest.xml
index 65a8275de..2ab833cdb 100644
--- a/src/frontends/android/AndroidManifest.xml
+++ b/src/frontends/android/app/src/main/AndroidManifest.xml
@@ -16,11 +16,7 @@
for more details.
-->
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
- package="org.strongswan.android"
- android:versionCode="28"
- android:versionName="1.5.0" >
-
- <uses-sdk android:minSdkVersion="15" android:targetSdkVersion="22" />
+ package="org.strongswan.android">
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
diff --git a/src/frontends/android/src/org/strongswan/android/data/LogContentProvider.java b/src/frontends/android/app/src/main/java/org/strongswan/android/data/LogContentProvider.java
index 370a8d5e4..370a8d5e4 100644
--- a/src/frontends/android/src/org/strongswan/android/data/LogContentProvider.java
+++ b/src/frontends/android/app/src/main/java/org/strongswan/android/data/LogContentProvider.java
diff --git a/src/frontends/android/src/org/strongswan/android/data/VpnProfile.java b/src/frontends/android/app/src/main/java/org/strongswan/android/data/VpnProfile.java
index 5c64ad0e5..5c64ad0e5 100644
--- a/src/frontends/android/src/org/strongswan/android/data/VpnProfile.java
+++ b/src/frontends/android/app/src/main/java/org/strongswan/android/data/VpnProfile.java
diff --git a/src/frontends/android/src/org/strongswan/android/data/VpnProfileDataSource.java b/src/frontends/android/app/src/main/java/org/strongswan/android/data/VpnProfileDataSource.java
index 45e9b8650..45e9b8650 100644
--- a/src/frontends/android/src/org/strongswan/android/data/VpnProfileDataSource.java
+++ b/src/frontends/android/app/src/main/java/org/strongswan/android/data/VpnProfileDataSource.java
diff --git a/src/frontends/android/src/org/strongswan/android/data/VpnType.java b/src/frontends/android/app/src/main/java/org/strongswan/android/data/VpnType.java
index bb7fd09f3..bb7fd09f3 100644
--- a/src/frontends/android/src/org/strongswan/android/data/VpnType.java
+++ b/src/frontends/android/app/src/main/java/org/strongswan/android/data/VpnType.java
diff --git a/src/frontends/android/src/org/strongswan/android/logic/CharonVpnService.java b/src/frontends/android/app/src/main/java/org/strongswan/android/logic/CharonVpnService.java
index e5241d5a7..e5241d5a7 100644
--- a/src/frontends/android/src/org/strongswan/android/logic/CharonVpnService.java
+++ b/src/frontends/android/app/src/main/java/org/strongswan/android/logic/CharonVpnService.java
diff --git a/src/frontends/android/src/org/strongswan/android/logic/NetworkManager.java b/src/frontends/android/app/src/main/java/org/strongswan/android/logic/NetworkManager.java
index ebe1d0080..ebe1d0080 100644
--- a/src/frontends/android/src/org/strongswan/android/logic/NetworkManager.java
+++ b/src/frontends/android/app/src/main/java/org/strongswan/android/logic/NetworkManager.java
diff --git a/src/frontends/android/src/org/strongswan/android/logic/StrongSwanApplication.java b/src/frontends/android/app/src/main/java/org/strongswan/android/logic/StrongSwanApplication.java
index d642b67b3..d642b67b3 100644
--- a/src/frontends/android/src/org/strongswan/android/logic/StrongSwanApplication.java
+++ b/src/frontends/android/app/src/main/java/org/strongswan/android/logic/StrongSwanApplication.java
diff --git a/src/frontends/android/src/org/strongswan/android/logic/TrustedCertificateManager.java b/src/frontends/android/app/src/main/java/org/strongswan/android/logic/TrustedCertificateManager.java
index 82a7cbe4e..82a7cbe4e 100644
--- a/src/frontends/android/src/org/strongswan/android/logic/TrustedCertificateManager.java
+++ b/src/frontends/android/app/src/main/java/org/strongswan/android/logic/TrustedCertificateManager.java
diff --git a/src/frontends/android/src/org/strongswan/android/logic/VpnStateService.java b/src/frontends/android/app/src/main/java/org/strongswan/android/logic/VpnStateService.java
index 7b40e942f..7b40e942f 100644
--- a/src/frontends/android/src/org/strongswan/android/logic/VpnStateService.java
+++ b/src/frontends/android/app/src/main/java/org/strongswan/android/logic/VpnStateService.java
diff --git a/src/frontends/android/src/org/strongswan/android/logic/imc/AndroidImc.java b/src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/AndroidImc.java
index 351fab801..351fab801 100644
--- a/src/frontends/android/src/org/strongswan/android/logic/imc/AndroidImc.java
+++ b/src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/AndroidImc.java
diff --git a/src/frontends/android/src/org/strongswan/android/logic/imc/ImcState.java b/src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/ImcState.java
index 4fc3834f9..4fc3834f9 100644
--- a/src/frontends/android/src/org/strongswan/android/logic/imc/ImcState.java
+++ b/src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/ImcState.java
diff --git a/src/frontends/android/src/org/strongswan/android/logic/imc/RemediationInstruction.java b/src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/RemediationInstruction.java
index 5435ad88c..5435ad88c 100644
--- a/src/frontends/android/src/org/strongswan/android/logic/imc/RemediationInstruction.java
+++ b/src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/RemediationInstruction.java
diff --git a/src/frontends/android/src/org/strongswan/android/logic/imc/attributes/Attribute.java b/src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/attributes/Attribute.java
index ca759000f..ca759000f 100644
--- a/src/frontends/android/src/org/strongswan/android/logic/imc/attributes/Attribute.java
+++ b/src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/attributes/Attribute.java
diff --git a/src/frontends/android/src/org/strongswan/android/logic/imc/attributes/AttributeType.java b/src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/attributes/AttributeType.java
index 11f1c61da..11f1c61da 100644
--- a/src/frontends/android/src/org/strongswan/android/logic/imc/attributes/AttributeType.java
+++ b/src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/attributes/AttributeType.java
diff --git a/src/frontends/android/src/org/strongswan/android/logic/imc/attributes/DeviceIdAttribute.java b/src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/attributes/DeviceIdAttribute.java
index ecab7db24..ecab7db24 100644
--- a/src/frontends/android/src/org/strongswan/android/logic/imc/attributes/DeviceIdAttribute.java
+++ b/src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/attributes/DeviceIdAttribute.java
diff --git a/src/frontends/android/src/org/strongswan/android/logic/imc/attributes/InstalledPackagesAttribute.java b/src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/attributes/InstalledPackagesAttribute.java
index dd1ad7292..dd1ad7292 100644
--- a/src/frontends/android/src/org/strongswan/android/logic/imc/attributes/InstalledPackagesAttribute.java
+++ b/src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/attributes/InstalledPackagesAttribute.java
diff --git a/src/frontends/android/src/org/strongswan/android/logic/imc/attributes/PortFilterAttribute.java b/src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/attributes/PortFilterAttribute.java
index 191690b94..191690b94 100644
--- a/src/frontends/android/src/org/strongswan/android/logic/imc/attributes/PortFilterAttribute.java
+++ b/src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/attributes/PortFilterAttribute.java
diff --git a/src/frontends/android/src/org/strongswan/android/logic/imc/attributes/PrivateEnterpriseNumber.java b/src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/attributes/PrivateEnterpriseNumber.java
index 9db702ec0..9db702ec0 100644
--- a/src/frontends/android/src/org/strongswan/android/logic/imc/attributes/PrivateEnterpriseNumber.java
+++ b/src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/attributes/PrivateEnterpriseNumber.java
diff --git a/src/frontends/android/src/org/strongswan/android/logic/imc/attributes/ProductInformationAttribute.java b/src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/attributes/ProductInformationAttribute.java
index cace18d55..cace18d55 100644
--- a/src/frontends/android/src/org/strongswan/android/logic/imc/attributes/ProductInformationAttribute.java
+++ b/src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/attributes/ProductInformationAttribute.java
diff --git a/src/frontends/android/src/org/strongswan/android/logic/imc/attributes/SettingsAttribute.java b/src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/attributes/SettingsAttribute.java
index 37d820168..37d820168 100644
--- a/src/frontends/android/src/org/strongswan/android/logic/imc/attributes/SettingsAttribute.java
+++ b/src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/attributes/SettingsAttribute.java
diff --git a/src/frontends/android/src/org/strongswan/android/logic/imc/attributes/StringVersionAttribute.java b/src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/attributes/StringVersionAttribute.java
index 4b6f2bc37..4b6f2bc37 100644
--- a/src/frontends/android/src/org/strongswan/android/logic/imc/attributes/StringVersionAttribute.java
+++ b/src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/attributes/StringVersionAttribute.java
diff --git a/src/frontends/android/src/org/strongswan/android/logic/imc/collectors/Collector.java b/src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/collectors/Collector.java
index a686f13a1..a686f13a1 100644
--- a/src/frontends/android/src/org/strongswan/android/logic/imc/collectors/Collector.java
+++ b/src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/collectors/Collector.java
diff --git a/src/frontends/android/src/org/strongswan/android/logic/imc/collectors/DeviceIdCollector.java b/src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/collectors/DeviceIdCollector.java
index ebe9e10b0..ebe9e10b0 100644
--- a/src/frontends/android/src/org/strongswan/android/logic/imc/collectors/DeviceIdCollector.java
+++ b/src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/collectors/DeviceIdCollector.java
diff --git a/src/frontends/android/src/org/strongswan/android/logic/imc/collectors/InstalledPackagesCollector.java b/src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/collectors/InstalledPackagesCollector.java
index caa5170ec..caa5170ec 100644
--- a/src/frontends/android/src/org/strongswan/android/logic/imc/collectors/InstalledPackagesCollector.java
+++ b/src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/collectors/InstalledPackagesCollector.java
diff --git a/src/frontends/android/src/org/strongswan/android/logic/imc/collectors/PortFilterCollector.java b/src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/collectors/PortFilterCollector.java
index ed86686d8..ed86686d8 100644
--- a/src/frontends/android/src/org/strongswan/android/logic/imc/collectors/PortFilterCollector.java
+++ b/src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/collectors/PortFilterCollector.java
diff --git a/src/frontends/android/src/org/strongswan/android/logic/imc/collectors/ProductInformationCollector.java b/src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/collectors/ProductInformationCollector.java
index c377e9041..c377e9041 100644
--- a/src/frontends/android/src/org/strongswan/android/logic/imc/collectors/ProductInformationCollector.java
+++ b/src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/collectors/ProductInformationCollector.java
diff --git a/src/frontends/android/src/org/strongswan/android/logic/imc/collectors/Protocol.java b/src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/collectors/Protocol.java
index 7320652a1..7320652a1 100644
--- a/src/frontends/android/src/org/strongswan/android/logic/imc/collectors/Protocol.java
+++ b/src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/collectors/Protocol.java
diff --git a/src/frontends/android/src/org/strongswan/android/logic/imc/collectors/SettingsCollector.java b/src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/collectors/SettingsCollector.java
index 658c2daea..658c2daea 100644
--- a/src/frontends/android/src/org/strongswan/android/logic/imc/collectors/SettingsCollector.java
+++ b/src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/collectors/SettingsCollector.java
diff --git a/src/frontends/android/src/org/strongswan/android/logic/imc/collectors/StringVersionCollector.java b/src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/collectors/StringVersionCollector.java
index 6e0df94a5..6e0df94a5 100644
--- a/src/frontends/android/src/org/strongswan/android/logic/imc/collectors/StringVersionCollector.java
+++ b/src/frontends/android/app/src/main/java/org/strongswan/android/logic/imc/collectors/StringVersionCollector.java
diff --git a/src/frontends/android/src/org/strongswan/android/security/LocalCertificateKeyStoreProvider.java b/src/frontends/android/app/src/main/java/org/strongswan/android/security/LocalCertificateKeyStoreProvider.java
index c49b1044f..c49b1044f 100644
--- a/src/frontends/android/src/org/strongswan/android/security/LocalCertificateKeyStoreProvider.java
+++ b/src/frontends/android/app/src/main/java/org/strongswan/android/security/LocalCertificateKeyStoreProvider.java
diff --git a/src/frontends/android/src/org/strongswan/android/security/LocalCertificateKeyStoreSpi.java b/src/frontends/android/app/src/main/java/org/strongswan/android/security/LocalCertificateKeyStoreSpi.java
index 64a48a9bb..64a48a9bb 100644
--- a/src/frontends/android/src/org/strongswan/android/security/LocalCertificateKeyStoreSpi.java
+++ b/src/frontends/android/app/src/main/java/org/strongswan/android/security/LocalCertificateKeyStoreSpi.java
diff --git a/src/frontends/android/src/org/strongswan/android/security/LocalCertificateStore.java b/src/frontends/android/app/src/main/java/org/strongswan/android/security/LocalCertificateStore.java
index cec5c603d..cec5c603d 100644
--- a/src/frontends/android/src/org/strongswan/android/security/LocalCertificateStore.java
+++ b/src/frontends/android/app/src/main/java/org/strongswan/android/security/LocalCertificateStore.java
diff --git a/src/frontends/android/src/org/strongswan/android/security/TrustedCertificateEntry.java b/src/frontends/android/app/src/main/java/org/strongswan/android/security/TrustedCertificateEntry.java
index 143741faf..143741faf 100644
--- a/src/frontends/android/src/org/strongswan/android/security/TrustedCertificateEntry.java
+++ b/src/frontends/android/app/src/main/java/org/strongswan/android/security/TrustedCertificateEntry.java
diff --git a/src/frontends/android/src/org/strongswan/android/ui/CertificateDeleteConfirmationDialog.java b/src/frontends/android/app/src/main/java/org/strongswan/android/ui/CertificateDeleteConfirmationDialog.java
index c381900c6..c381900c6 100644
--- a/src/frontends/android/src/org/strongswan/android/ui/CertificateDeleteConfirmationDialog.java
+++ b/src/frontends/android/app/src/main/java/org/strongswan/android/ui/CertificateDeleteConfirmationDialog.java
diff --git a/src/frontends/android/src/org/strongswan/android/ui/ImcStateFragment.java b/src/frontends/android/app/src/main/java/org/strongswan/android/ui/ImcStateFragment.java
index 5b1799744..5b1799744 100644
--- a/src/frontends/android/src/org/strongswan/android/ui/ImcStateFragment.java
+++ b/src/frontends/android/app/src/main/java/org/strongswan/android/ui/ImcStateFragment.java
diff --git a/src/frontends/android/src/org/strongswan/android/ui/LogActivity.java b/src/frontends/android/app/src/main/java/org/strongswan/android/ui/LogActivity.java
index a5efecc09..a5efecc09 100644
--- a/src/frontends/android/src/org/strongswan/android/ui/LogActivity.java
+++ b/src/frontends/android/app/src/main/java/org/strongswan/android/ui/LogActivity.java
diff --git a/src/frontends/android/src/org/strongswan/android/ui/LogFragment.java b/src/frontends/android/app/src/main/java/org/strongswan/android/ui/LogFragment.java
index 8740e0c46..8740e0c46 100644
--- a/src/frontends/android/src/org/strongswan/android/ui/LogFragment.java
+++ b/src/frontends/android/app/src/main/java/org/strongswan/android/ui/LogFragment.java
diff --git a/src/frontends/android/src/org/strongswan/android/ui/LogScrollView.java b/src/frontends/android/app/src/main/java/org/strongswan/android/ui/LogScrollView.java
index 7eee820ce..7eee820ce 100644
--- a/src/frontends/android/src/org/strongswan/android/ui/LogScrollView.java
+++ b/src/frontends/android/app/src/main/java/org/strongswan/android/ui/LogScrollView.java
diff --git a/src/frontends/android/src/org/strongswan/android/ui/MainActivity.java b/src/frontends/android/app/src/main/java/org/strongswan/android/ui/MainActivity.java
index e1b3e0783..e1b3e0783 100644
--- a/src/frontends/android/src/org/strongswan/android/ui/MainActivity.java
+++ b/src/frontends/android/app/src/main/java/org/strongswan/android/ui/MainActivity.java
diff --git a/src/frontends/android/src/org/strongswan/android/ui/RemediationInstructionFragment.java b/src/frontends/android/app/src/main/java/org/strongswan/android/ui/RemediationInstructionFragment.java
index 04c288bcf..04c288bcf 100644
--- a/src/frontends/android/src/org/strongswan/android/ui/RemediationInstructionFragment.java
+++ b/src/frontends/android/app/src/main/java/org/strongswan/android/ui/RemediationInstructionFragment.java
diff --git a/src/frontends/android/src/org/strongswan/android/ui/RemediationInstructionsActivity.java b/src/frontends/android/app/src/main/java/org/strongswan/android/ui/RemediationInstructionsActivity.java
index 66d0de261..66d0de261 100644
--- a/src/frontends/android/src/org/strongswan/android/ui/RemediationInstructionsActivity.java
+++ b/src/frontends/android/app/src/main/java/org/strongswan/android/ui/RemediationInstructionsActivity.java
diff --git a/src/frontends/android/src/org/strongswan/android/ui/RemediationInstructionsFragment.java b/src/frontends/android/app/src/main/java/org/strongswan/android/ui/RemediationInstructionsFragment.java
index 86467dc35..86467dc35 100644
--- a/src/frontends/android/src/org/strongswan/android/ui/RemediationInstructionsFragment.java
+++ b/src/frontends/android/app/src/main/java/org/strongswan/android/ui/RemediationInstructionsFragment.java
diff --git a/src/frontends/android/src/org/strongswan/android/ui/TrustedCertificateImportActivity.java b/src/frontends/android/app/src/main/java/org/strongswan/android/ui/TrustedCertificateImportActivity.java
index 61bd2c9a2..61bd2c9a2 100644
--- a/src/frontends/android/src/org/strongswan/android/ui/TrustedCertificateImportActivity.java
+++ b/src/frontends/android/app/src/main/java/org/strongswan/android/ui/TrustedCertificateImportActivity.java
diff --git a/src/frontends/android/src/org/strongswan/android/ui/TrustedCertificateListFragment.java b/src/frontends/android/app/src/main/java/org/strongswan/android/ui/TrustedCertificateListFragment.java
index 8bd39c435..8bd39c435 100644
--- a/src/frontends/android/src/org/strongswan/android/ui/TrustedCertificateListFragment.java
+++ b/src/frontends/android/app/src/main/java/org/strongswan/android/ui/TrustedCertificateListFragment.java
diff --git a/src/frontends/android/src/org/strongswan/android/ui/TrustedCertificatesActivity.java b/src/frontends/android/app/src/main/java/org/strongswan/android/ui/TrustedCertificatesActivity.java
index 663950c16..663950c16 100644
--- a/src/frontends/android/src/org/strongswan/android/ui/TrustedCertificatesActivity.java
+++ b/src/frontends/android/app/src/main/java/org/strongswan/android/ui/TrustedCertificatesActivity.java
diff --git a/src/frontends/android/src/org/strongswan/android/ui/VpnProfileDetailActivity.java b/src/frontends/android/app/src/main/java/org/strongswan/android/ui/VpnProfileDetailActivity.java
index a8b3daa06..a8b3daa06 100644
--- a/src/frontends/android/src/org/strongswan/android/ui/VpnProfileDetailActivity.java
+++ b/src/frontends/android/app/src/main/java/org/strongswan/android/ui/VpnProfileDetailActivity.java
diff --git a/src/frontends/android/src/org/strongswan/android/ui/VpnProfileListFragment.java b/src/frontends/android/app/src/main/java/org/strongswan/android/ui/VpnProfileListFragment.java
index fb684b53d..fb684b53d 100644
--- a/src/frontends/android/src/org/strongswan/android/ui/VpnProfileListFragment.java
+++ b/src/frontends/android/app/src/main/java/org/strongswan/android/ui/VpnProfileListFragment.java
diff --git a/src/frontends/android/src/org/strongswan/android/ui/VpnProfileSelectActivity.java b/src/frontends/android/app/src/main/java/org/strongswan/android/ui/VpnProfileSelectActivity.java
index b4d34f5a5..b4d34f5a5 100644
--- a/src/frontends/android/src/org/strongswan/android/ui/VpnProfileSelectActivity.java
+++ b/src/frontends/android/app/src/main/java/org/strongswan/android/ui/VpnProfileSelectActivity.java
diff --git a/src/frontends/android/src/org/strongswan/android/ui/VpnStateFragment.java b/src/frontends/android/app/src/main/java/org/strongswan/android/ui/VpnStateFragment.java
index 160ba951b..160ba951b 100644
--- a/src/frontends/android/src/org/strongswan/android/ui/VpnStateFragment.java
+++ b/src/frontends/android/app/src/main/java/org/strongswan/android/ui/VpnStateFragment.java
diff --git a/src/frontends/android/src/org/strongswan/android/ui/adapter/RemediationInstructionAdapter.java b/src/frontends/android/app/src/main/java/org/strongswan/android/ui/adapter/RemediationInstructionAdapter.java
index e9ab52287..e9ab52287 100644
--- a/src/frontends/android/src/org/strongswan/android/ui/adapter/RemediationInstructionAdapter.java
+++ b/src/frontends/android/app/src/main/java/org/strongswan/android/ui/adapter/RemediationInstructionAdapter.java
diff --git a/src/frontends/android/src/org/strongswan/android/ui/adapter/TrustedCertificateAdapter.java b/src/frontends/android/app/src/main/java/org/strongswan/android/ui/adapter/TrustedCertificateAdapter.java
index 3795bb199..3795bb199 100644
--- a/src/frontends/android/src/org/strongswan/android/ui/adapter/TrustedCertificateAdapter.java
+++ b/src/frontends/android/app/src/main/java/org/strongswan/android/ui/adapter/TrustedCertificateAdapter.java
diff --git a/src/frontends/android/src/org/strongswan/android/ui/adapter/VpnProfileAdapter.java b/src/frontends/android/app/src/main/java/org/strongswan/android/ui/adapter/VpnProfileAdapter.java
index f3bb271bc..f3bb271bc 100644
--- a/src/frontends/android/src/org/strongswan/android/ui/adapter/VpnProfileAdapter.java
+++ b/src/frontends/android/app/src/main/java/org/strongswan/android/ui/adapter/VpnProfileAdapter.java
diff --git a/src/frontends/android/src/org/strongswan/android/utils/BufferedByteWriter.java b/src/frontends/android/app/src/main/java/org/strongswan/android/utils/BufferedByteWriter.java
index efc728377..efc728377 100644
--- a/src/frontends/android/src/org/strongswan/android/utils/BufferedByteWriter.java
+++ b/src/frontends/android/app/src/main/java/org/strongswan/android/utils/BufferedByteWriter.java
diff --git a/src/frontends/android/src/org/strongswan/android/utils/SettingsWriter.java b/src/frontends/android/app/src/main/java/org/strongswan/android/utils/SettingsWriter.java
index 01c0ab8a8..01c0ab8a8 100644
--- a/src/frontends/android/src/org/strongswan/android/utils/SettingsWriter.java
+++ b/src/frontends/android/app/src/main/java/org/strongswan/android/utils/SettingsWriter.java
diff --git a/src/frontends/android/src/org/strongswan/android/utils/Utils.java b/src/frontends/android/app/src/main/java/org/strongswan/android/utils/Utils.java
index b5c447f31..b5c447f31 100644
--- a/src/frontends/android/src/org/strongswan/android/utils/Utils.java
+++ b/src/frontends/android/app/src/main/java/org/strongswan/android/utils/Utils.java
diff --git a/src/frontends/android/jni/.gitignore b/src/frontends/android/app/src/main/jni/.gitignore
index ca5cf16ed..ca5cf16ed 100644
--- a/src/frontends/android/jni/.gitignore
+++ b/src/frontends/android/app/src/main/jni/.gitignore
diff --git a/src/frontends/android/jni/Android.mk b/src/frontends/android/app/src/main/jni/Android.mk
index 1fb233b48..1fb233b48 100644
--- a/src/frontends/android/jni/Android.mk
+++ b/src/frontends/android/app/src/main/jni/Android.mk
diff --git a/src/frontends/android/jni/Application.mk b/src/frontends/android/app/src/main/jni/Application.mk
index 9fa668354..9fa668354 100644
--- a/src/frontends/android/jni/Application.mk
+++ b/src/frontends/android/app/src/main/jni/Application.mk
diff --git a/src/frontends/android/jni/libandroidbridge/Android.mk b/src/frontends/android/app/src/main/jni/libandroidbridge/Android.mk
index c56b8d5f0..c56b8d5f0 100644
--- a/src/frontends/android/jni/libandroidbridge/Android.mk
+++ b/src/frontends/android/app/src/main/jni/libandroidbridge/Android.mk
diff --git a/src/frontends/android/jni/libandroidbridge/android_jni.c b/src/frontends/android/app/src/main/jni/libandroidbridge/android_jni.c
index a6412bdf7..a6412bdf7 100644
--- a/src/frontends/android/jni/libandroidbridge/android_jni.c
+++ b/src/frontends/android/app/src/main/jni/libandroidbridge/android_jni.c
diff --git a/src/frontends/android/jni/libandroidbridge/android_jni.h b/src/frontends/android/app/src/main/jni/libandroidbridge/android_jni.h
index b08670f7e..b08670f7e 100644
--- a/src/frontends/android/jni/libandroidbridge/android_jni.h
+++ b/src/frontends/android/app/src/main/jni/libandroidbridge/android_jni.h
diff --git a/src/frontends/android/jni/libandroidbridge/backend/android_attr.c b/src/frontends/android/app/src/main/jni/libandroidbridge/backend/android_attr.c
index 645b3fa9b..645b3fa9b 100644
--- a/src/frontends/android/jni/libandroidbridge/backend/android_attr.c
+++ b/src/frontends/android/app/src/main/jni/libandroidbridge/backend/android_attr.c
diff --git a/src/frontends/android/jni/libandroidbridge/backend/android_attr.h b/src/frontends/android/app/src/main/jni/libandroidbridge/backend/android_attr.h
index 56b02e1ce..56b02e1ce 100644
--- a/src/frontends/android/jni/libandroidbridge/backend/android_attr.h
+++ b/src/frontends/android/app/src/main/jni/libandroidbridge/backend/android_attr.h
diff --git a/src/frontends/android/jni/libandroidbridge/backend/android_creds.c b/src/frontends/android/app/src/main/jni/libandroidbridge/backend/android_creds.c
index ddc032638..ddc032638 100644
--- a/src/frontends/android/jni/libandroidbridge/backend/android_creds.c
+++ b/src/frontends/android/app/src/main/jni/libandroidbridge/backend/android_creds.c
diff --git a/src/frontends/android/jni/libandroidbridge/backend/android_creds.h b/src/frontends/android/app/src/main/jni/libandroidbridge/backend/android_creds.h
index 918708f14..918708f14 100644
--- a/src/frontends/android/jni/libandroidbridge/backend/android_creds.h
+++ b/src/frontends/android/app/src/main/jni/libandroidbridge/backend/android_creds.h
diff --git a/src/frontends/android/jni/libandroidbridge/backend/android_dns_proxy.c b/src/frontends/android/app/src/main/jni/libandroidbridge/backend/android_dns_proxy.c
index 908e37238..908e37238 100644
--- a/src/frontends/android/jni/libandroidbridge/backend/android_dns_proxy.c
+++ b/src/frontends/android/app/src/main/jni/libandroidbridge/backend/android_dns_proxy.c
diff --git a/src/frontends/android/jni/libandroidbridge/backend/android_dns_proxy.h b/src/frontends/android/app/src/main/jni/libandroidbridge/backend/android_dns_proxy.h
index 481b060cf..481b060cf 100644
--- a/src/frontends/android/jni/libandroidbridge/backend/android_dns_proxy.h
+++ b/src/frontends/android/app/src/main/jni/libandroidbridge/backend/android_dns_proxy.h
diff --git a/src/frontends/android/jni/libandroidbridge/backend/android_private_key.c b/src/frontends/android/app/src/main/jni/libandroidbridge/backend/android_private_key.c
index 769ea3f31..769ea3f31 100644
--- a/src/frontends/android/jni/libandroidbridge/backend/android_private_key.c
+++ b/src/frontends/android/app/src/main/jni/libandroidbridge/backend/android_private_key.c
diff --git a/src/frontends/android/jni/libandroidbridge/backend/android_private_key.h b/src/frontends/android/app/src/main/jni/libandroidbridge/backend/android_private_key.h
index 9848657de..9848657de 100644
--- a/src/frontends/android/jni/libandroidbridge/backend/android_private_key.h
+++ b/src/frontends/android/app/src/main/jni/libandroidbridge/backend/android_private_key.h
diff --git a/src/frontends/android/jni/libandroidbridge/backend/android_service.c b/src/frontends/android/app/src/main/jni/libandroidbridge/backend/android_service.c
index 7ef3913f7..7ef3913f7 100644
--- a/src/frontends/android/jni/libandroidbridge/backend/android_service.c
+++ b/src/frontends/android/app/src/main/jni/libandroidbridge/backend/android_service.c
diff --git a/src/frontends/android/jni/libandroidbridge/backend/android_service.h b/src/frontends/android/app/src/main/jni/libandroidbridge/backend/android_service.h
index 1a5175774..1a5175774 100644
--- a/src/frontends/android/jni/libandroidbridge/backend/android_service.h
+++ b/src/frontends/android/app/src/main/jni/libandroidbridge/backend/android_service.h
diff --git a/src/frontends/android/jni/libandroidbridge/byod/imc_android.c b/src/frontends/android/app/src/main/jni/libandroidbridge/byod/imc_android.c
index 6432b957f..6432b957f 100644
--- a/src/frontends/android/jni/libandroidbridge/byod/imc_android.c
+++ b/src/frontends/android/app/src/main/jni/libandroidbridge/byod/imc_android.c
diff --git a/src/frontends/android/jni/libandroidbridge/byod/imc_android.h b/src/frontends/android/app/src/main/jni/libandroidbridge/byod/imc_android.h
index 3bfc6de40..3bfc6de40 100644
--- a/src/frontends/android/jni/libandroidbridge/byod/imc_android.h
+++ b/src/frontends/android/app/src/main/jni/libandroidbridge/byod/imc_android.h
diff --git a/src/frontends/android/jni/libandroidbridge/byod/imc_android_state.c b/src/frontends/android/app/src/main/jni/libandroidbridge/byod/imc_android_state.c
index ea4f92def..ea4f92def 100644
--- a/src/frontends/android/jni/libandroidbridge/byod/imc_android_state.c
+++ b/src/frontends/android/app/src/main/jni/libandroidbridge/byod/imc_android_state.c
diff --git a/src/frontends/android/jni/libandroidbridge/byod/imc_android_state.h b/src/frontends/android/app/src/main/jni/libandroidbridge/byod/imc_android_state.h
index 68197f331..68197f331 100644
--- a/src/frontends/android/jni/libandroidbridge/byod/imc_android_state.h
+++ b/src/frontends/android/app/src/main/jni/libandroidbridge/byod/imc_android_state.h
diff --git a/src/frontends/android/jni/libandroidbridge/charonservice.c b/src/frontends/android/app/src/main/jni/libandroidbridge/charonservice.c
index 2655f7361..2655f7361 100644
--- a/src/frontends/android/jni/libandroidbridge/charonservice.c
+++ b/src/frontends/android/app/src/main/jni/libandroidbridge/charonservice.c
diff --git a/src/frontends/android/jni/libandroidbridge/charonservice.h b/src/frontends/android/app/src/main/jni/libandroidbridge/charonservice.h
index 8cb68e099..8cb68e099 100644
--- a/src/frontends/android/jni/libandroidbridge/charonservice.h
+++ b/src/frontends/android/app/src/main/jni/libandroidbridge/charonservice.h
diff --git a/src/frontends/android/jni/libandroidbridge/kernel/android_ipsec.c b/src/frontends/android/app/src/main/jni/libandroidbridge/kernel/android_ipsec.c
index 2eef49f91..2eef49f91 100644
--- a/src/frontends/android/jni/libandroidbridge/kernel/android_ipsec.c
+++ b/src/frontends/android/app/src/main/jni/libandroidbridge/kernel/android_ipsec.c
diff --git a/src/frontends/android/jni/libandroidbridge/kernel/android_ipsec.h b/src/frontends/android/app/src/main/jni/libandroidbridge/kernel/android_ipsec.h
index b68c8b2a9..b68c8b2a9 100644
--- a/src/frontends/android/jni/libandroidbridge/kernel/android_ipsec.h
+++ b/src/frontends/android/app/src/main/jni/libandroidbridge/kernel/android_ipsec.h
diff --git a/src/frontends/android/jni/libandroidbridge/kernel/android_net.c b/src/frontends/android/app/src/main/jni/libandroidbridge/kernel/android_net.c
index 2ce1bdfac..2ce1bdfac 100644
--- a/src/frontends/android/jni/libandroidbridge/kernel/android_net.c
+++ b/src/frontends/android/app/src/main/jni/libandroidbridge/kernel/android_net.c
diff --git a/src/frontends/android/jni/libandroidbridge/kernel/android_net.h b/src/frontends/android/app/src/main/jni/libandroidbridge/kernel/android_net.h
index 761fa21bc..761fa21bc 100644
--- a/src/frontends/android/jni/libandroidbridge/kernel/android_net.h
+++ b/src/frontends/android/app/src/main/jni/libandroidbridge/kernel/android_net.h
diff --git a/src/frontends/android/jni/libandroidbridge/kernel/network_manager.c b/src/frontends/android/app/src/main/jni/libandroidbridge/kernel/network_manager.c
index 372b25c55..372b25c55 100644
--- a/src/frontends/android/jni/libandroidbridge/kernel/network_manager.c
+++ b/src/frontends/android/app/src/main/jni/libandroidbridge/kernel/network_manager.c
diff --git a/src/frontends/android/jni/libandroidbridge/kernel/network_manager.h b/src/frontends/android/app/src/main/jni/libandroidbridge/kernel/network_manager.h
index 9a6a715b7..9a6a715b7 100644
--- a/src/frontends/android/jni/libandroidbridge/kernel/network_manager.h
+++ b/src/frontends/android/app/src/main/jni/libandroidbridge/kernel/network_manager.h
diff --git a/src/frontends/android/jni/libandroidbridge/vpnservice_builder.c b/src/frontends/android/app/src/main/jni/libandroidbridge/vpnservice_builder.c
index c7a6eb6da..c7a6eb6da 100644
--- a/src/frontends/android/jni/libandroidbridge/vpnservice_builder.c
+++ b/src/frontends/android/app/src/main/jni/libandroidbridge/vpnservice_builder.c
diff --git a/src/frontends/android/jni/libandroidbridge/vpnservice_builder.h b/src/frontends/android/app/src/main/jni/libandroidbridge/vpnservice_builder.h
index 08c436da6..08c436da6 100644
--- a/src/frontends/android/jni/libandroidbridge/vpnservice_builder.h
+++ b/src/frontends/android/app/src/main/jni/libandroidbridge/vpnservice_builder.h
diff --git a/src/frontends/android/res/drawable-hdpi/ic_launcher.png b/src/frontends/android/app/src/main/res/drawable-hdpi/ic_launcher.png
index 7cd1df4ee..7cd1df4ee 100644
--- a/src/frontends/android/res/drawable-hdpi/ic_launcher.png
+++ b/src/frontends/android/app/src/main/res/drawable-hdpi/ic_launcher.png
Binary files differ
diff --git a/src/frontends/android/res/drawable-mdpi/ic_launcher.png b/src/frontends/android/app/src/main/res/drawable-mdpi/ic_launcher.png
index 200ee9677..200ee9677 100644
--- a/src/frontends/android/res/drawable-mdpi/ic_launcher.png
+++ b/src/frontends/android/app/src/main/res/drawable-mdpi/ic_launcher.png
Binary files differ
diff --git a/src/frontends/android/res/drawable-xhdpi/ic_launcher.png b/src/frontends/android/app/src/main/res/drawable-xhdpi/ic_launcher.png
index 2eb6db1b6..2eb6db1b6 100644
--- a/src/frontends/android/res/drawable-xhdpi/ic_launcher.png
+++ b/src/frontends/android/app/src/main/res/drawable-xhdpi/ic_launcher.png
Binary files differ
diff --git a/src/frontends/android/res/drawable/remediation_instruction_background_large.xml b/src/frontends/android/app/src/main/res/drawable/remediation_instruction_background_large.xml
index 470fecb12..470fecb12 100644
--- a/src/frontends/android/res/drawable/remediation_instruction_background_large.xml
+++ b/src/frontends/android/app/src/main/res/drawable/remediation_instruction_background_large.xml
diff --git a/src/frontends/android/res/drawable/state_background.xml b/src/frontends/android/app/src/main/res/drawable/state_background.xml
index ee36325cc..ee36325cc 100644
--- a/src/frontends/android/res/drawable/state_background.xml
+++ b/src/frontends/android/app/src/main/res/drawable/state_background.xml
diff --git a/src/frontends/android/res/layout-large/remediation_instructions.xml b/src/frontends/android/app/src/main/res/layout-large/remediation_instructions.xml
index 5a28dd654..5a28dd654 100644
--- a/src/frontends/android/res/layout-large/remediation_instructions.xml
+++ b/src/frontends/android/app/src/main/res/layout-large/remediation_instructions.xml
diff --git a/src/frontends/android/res/layout/imc_state_fragment.xml b/src/frontends/android/app/src/main/res/layout/imc_state_fragment.xml
index 171c88d2d..171c88d2d 100644
--- a/src/frontends/android/res/layout/imc_state_fragment.xml
+++ b/src/frontends/android/app/src/main/res/layout/imc_state_fragment.xml
diff --git a/src/frontends/android/res/layout/log_activity.xml b/src/frontends/android/app/src/main/res/layout/log_activity.xml
index 80fee09fb..80fee09fb 100644
--- a/src/frontends/android/res/layout/log_activity.xml
+++ b/src/frontends/android/app/src/main/res/layout/log_activity.xml
diff --git a/src/frontends/android/res/layout/log_fragment.xml b/src/frontends/android/app/src/main/res/layout/log_fragment.xml
index c2e187a66..c2e187a66 100644
--- a/src/frontends/android/res/layout/log_fragment.xml
+++ b/src/frontends/android/app/src/main/res/layout/log_fragment.xml
diff --git a/src/frontends/android/res/layout/login_dialog.xml b/src/frontends/android/app/src/main/res/layout/login_dialog.xml
index 0262af0a3..0262af0a3 100644
--- a/src/frontends/android/res/layout/login_dialog.xml
+++ b/src/frontends/android/app/src/main/res/layout/login_dialog.xml
diff --git a/src/frontends/android/res/layout/main.xml b/src/frontends/android/app/src/main/res/layout/main.xml
index ab03e72bc..ab03e72bc 100644
--- a/src/frontends/android/res/layout/main.xml
+++ b/src/frontends/android/app/src/main/res/layout/main.xml
diff --git a/src/frontends/android/res/layout/profile_detail_view.xml b/src/frontends/android/app/src/main/res/layout/profile_detail_view.xml
index 57d5606ff..57d5606ff 100644
--- a/src/frontends/android/res/layout/profile_detail_view.xml
+++ b/src/frontends/android/app/src/main/res/layout/profile_detail_view.xml
diff --git a/src/frontends/android/res/layout/profile_list_fragment.xml b/src/frontends/android/app/src/main/res/layout/profile_list_fragment.xml
index 50d628bfa..50d628bfa 100644
--- a/src/frontends/android/res/layout/profile_list_fragment.xml
+++ b/src/frontends/android/app/src/main/res/layout/profile_list_fragment.xml
diff --git a/src/frontends/android/res/layout/profile_list_item.xml b/src/frontends/android/app/src/main/res/layout/profile_list_item.xml
index 93df7b649..93df7b649 100644
--- a/src/frontends/android/res/layout/profile_list_item.xml
+++ b/src/frontends/android/app/src/main/res/layout/profile_list_item.xml
diff --git a/src/frontends/android/res/layout/remediation_instruction.xml b/src/frontends/android/app/src/main/res/layout/remediation_instruction.xml
index 09c0d43a3..09c0d43a3 100644
--- a/src/frontends/android/res/layout/remediation_instruction.xml
+++ b/src/frontends/android/app/src/main/res/layout/remediation_instruction.xml
diff --git a/src/frontends/android/res/layout/remediation_instruction_item.xml b/src/frontends/android/app/src/main/res/layout/remediation_instruction_item.xml
index c25e6c123..c25e6c123 100644
--- a/src/frontends/android/res/layout/remediation_instruction_item.xml
+++ b/src/frontends/android/app/src/main/res/layout/remediation_instruction_item.xml
diff --git a/src/frontends/android/res/layout/remediation_instructions.xml b/src/frontends/android/app/src/main/res/layout/remediation_instructions.xml
index 84143b575..84143b575 100644
--- a/src/frontends/android/res/layout/remediation_instructions.xml
+++ b/src/frontends/android/app/src/main/res/layout/remediation_instructions.xml
diff --git a/src/frontends/android/res/layout/trusted_certificates_activity.xml b/src/frontends/android/app/src/main/res/layout/trusted_certificates_activity.xml
index 966ecf25e..966ecf25e 100644
--- a/src/frontends/android/res/layout/trusted_certificates_activity.xml
+++ b/src/frontends/android/app/src/main/res/layout/trusted_certificates_activity.xml
diff --git a/src/frontends/android/res/layout/trusted_certificates_item.xml b/src/frontends/android/app/src/main/res/layout/trusted_certificates_item.xml
index 609d06a7a..609d06a7a 100644
--- a/src/frontends/android/res/layout/trusted_certificates_item.xml
+++ b/src/frontends/android/app/src/main/res/layout/trusted_certificates_item.xml
diff --git a/src/frontends/android/res/layout/two_line_button.xml b/src/frontends/android/app/src/main/res/layout/two_line_button.xml
index 89d095295..89d095295 100644
--- a/src/frontends/android/res/layout/two_line_button.xml
+++ b/src/frontends/android/app/src/main/res/layout/two_line_button.xml
diff --git a/src/frontends/android/res/layout/vpn_profile_select.xml b/src/frontends/android/app/src/main/res/layout/vpn_profile_select.xml
index 7f49aa4e7..7f49aa4e7 100644
--- a/src/frontends/android/res/layout/vpn_profile_select.xml
+++ b/src/frontends/android/app/src/main/res/layout/vpn_profile_select.xml
diff --git a/src/frontends/android/res/layout/vpn_state_fragment.xml b/src/frontends/android/app/src/main/res/layout/vpn_state_fragment.xml
index e347c4c4b..e347c4c4b 100644
--- a/src/frontends/android/res/layout/vpn_state_fragment.xml
+++ b/src/frontends/android/app/src/main/res/layout/vpn_state_fragment.xml
diff --git a/src/frontends/android/res/menu/certificates.xml b/src/frontends/android/app/src/main/res/menu/certificates.xml
index 6066cab60..6066cab60 100644
--- a/src/frontends/android/res/menu/certificates.xml
+++ b/src/frontends/android/app/src/main/res/menu/certificates.xml
diff --git a/src/frontends/android/res/menu/log.xml b/src/frontends/android/app/src/main/res/menu/log.xml
index 1af5bd397..1af5bd397 100644
--- a/src/frontends/android/res/menu/log.xml
+++ b/src/frontends/android/app/src/main/res/menu/log.xml
diff --git a/src/frontends/android/res/menu/main.xml b/src/frontends/android/app/src/main/res/menu/main.xml
index 3dde5227e..3dde5227e 100644
--- a/src/frontends/android/res/menu/main.xml
+++ b/src/frontends/android/app/src/main/res/menu/main.xml
diff --git a/src/frontends/android/res/menu/profile_edit.xml b/src/frontends/android/app/src/main/res/menu/profile_edit.xml
index e69020ed0..e69020ed0 100644
--- a/src/frontends/android/res/menu/profile_edit.xml
+++ b/src/frontends/android/app/src/main/res/menu/profile_edit.xml
diff --git a/src/frontends/android/res/menu/profile_list.xml b/src/frontends/android/app/src/main/res/menu/profile_list.xml
index 57c9a86a4..57c9a86a4 100644
--- a/src/frontends/android/res/menu/profile_list.xml
+++ b/src/frontends/android/app/src/main/res/menu/profile_list.xml
diff --git a/src/frontends/android/res/menu/profile_list_context.xml b/src/frontends/android/app/src/main/res/menu/profile_list_context.xml
index e674ae856..e674ae856 100644
--- a/src/frontends/android/res/menu/profile_list_context.xml
+++ b/src/frontends/android/app/src/main/res/menu/profile_list_context.xml
diff --git a/src/frontends/android/res/values-de/arrays.xml b/src/frontends/android/app/src/main/res/values-de/arrays.xml
index d05140165..d05140165 100644
--- a/src/frontends/android/res/values-de/arrays.xml
+++ b/src/frontends/android/app/src/main/res/values-de/arrays.xml
diff --git a/src/frontends/android/res/values-de/strings.xml b/src/frontends/android/app/src/main/res/values-de/strings.xml
index 6cd5ba50a..6cd5ba50a 100644
--- a/src/frontends/android/res/values-de/strings.xml
+++ b/src/frontends/android/app/src/main/res/values-de/strings.xml
diff --git a/src/frontends/android/res/values-pl/arrays.xml b/src/frontends/android/app/src/main/res/values-pl/arrays.xml
index 30e43f1fb..30e43f1fb 100644
--- a/src/frontends/android/res/values-pl/arrays.xml
+++ b/src/frontends/android/app/src/main/res/values-pl/arrays.xml
diff --git a/src/frontends/android/res/values-pl/strings.xml b/src/frontends/android/app/src/main/res/values-pl/strings.xml
index fb2aba003..fb2aba003 100644
--- a/src/frontends/android/res/values-pl/strings.xml
+++ b/src/frontends/android/app/src/main/res/values-pl/strings.xml
diff --git a/src/frontends/android/res/values-ru/arrays.xml b/src/frontends/android/app/src/main/res/values-ru/arrays.xml
index 5fbd43168..5fbd43168 100644
--- a/src/frontends/android/res/values-ru/arrays.xml
+++ b/src/frontends/android/app/src/main/res/values-ru/arrays.xml
diff --git a/src/frontends/android/res/values-ru/strings.xml b/src/frontends/android/app/src/main/res/values-ru/strings.xml
index eabfc084b..eabfc084b 100644
--- a/src/frontends/android/res/values-ru/strings.xml
+++ b/src/frontends/android/app/src/main/res/values-ru/strings.xml
diff --git a/src/frontends/android/res/values-ua/arrays.xml b/src/frontends/android/app/src/main/res/values-ua/arrays.xml
index 1acc0d769..1acc0d769 100644
--- a/src/frontends/android/res/values-ua/arrays.xml
+++ b/src/frontends/android/app/src/main/res/values-ua/arrays.xml
diff --git a/src/frontends/android/res/values-ua/strings.xml b/src/frontends/android/app/src/main/res/values-ua/strings.xml
index d7c238370..d7c238370 100644
--- a/src/frontends/android/res/values-ua/strings.xml
+++ b/src/frontends/android/app/src/main/res/values-ua/strings.xml
diff --git a/src/frontends/android/res/values/arrays.xml b/src/frontends/android/app/src/main/res/values/arrays.xml
index b324b594f..b324b594f 100644
--- a/src/frontends/android/res/values/arrays.xml
+++ b/src/frontends/android/app/src/main/res/values/arrays.xml
diff --git a/src/frontends/android/res/values/attrs.xml b/src/frontends/android/app/src/main/res/values/attrs.xml
index 6c3480b0e..6c3480b0e 100644
--- a/src/frontends/android/res/values/attrs.xml
+++ b/src/frontends/android/app/src/main/res/values/attrs.xml
diff --git a/src/frontends/android/res/values/colors.xml b/src/frontends/android/app/src/main/res/values/colors.xml
index 4af28b4d4..4af28b4d4 100644
--- a/src/frontends/android/res/values/colors.xml
+++ b/src/frontends/android/app/src/main/res/values/colors.xml
diff --git a/src/frontends/android/res/values/strings.xml b/src/frontends/android/app/src/main/res/values/strings.xml
index 5c8ebab57..5c8ebab57 100644
--- a/src/frontends/android/res/values/strings.xml
+++ b/src/frontends/android/app/src/main/res/values/strings.xml
diff --git a/src/frontends/android/res/values/styles.xml b/src/frontends/android/app/src/main/res/values/styles.xml
index 739ba7000..739ba7000 100644
--- a/src/frontends/android/res/values/styles.xml
+++ b/src/frontends/android/app/src/main/res/values/styles.xml
diff --git a/src/frontends/android/build.gradle b/src/frontends/android/build.gradle
new file mode 100644
index 000000000..9b18c6e90
--- /dev/null
+++ b/src/frontends/android/build.gradle
@@ -0,0 +1,14 @@
+buildscript {
+ repositories {
+ jcenter()
+ }
+ dependencies {
+ classpath 'com.android.tools.build:gradle:1.3.0'
+ }
+}
+
+allprojects {
+ repositories {
+ jcenter()
+ }
+}
diff --git a/src/frontends/android/gradle/wrapper/gradle-wrapper.jar b/src/frontends/android/gradle/wrapper/gradle-wrapper.jar
new file mode 100644
index 000000000..8c0fb64a8
--- /dev/null
+++ b/src/frontends/android/gradle/wrapper/gradle-wrapper.jar
Binary files differ
diff --git a/src/frontends/android/gradle/wrapper/gradle-wrapper.properties b/src/frontends/android/gradle/wrapper/gradle-wrapper.properties
new file mode 100644
index 000000000..0c71e760d
--- /dev/null
+++ b/src/frontends/android/gradle/wrapper/gradle-wrapper.properties
@@ -0,0 +1,6 @@
+#Wed Apr 10 15:27:10 PDT 2013
+distributionBase=GRADLE_USER_HOME
+distributionPath=wrapper/dists
+zipStoreBase=GRADLE_USER_HOME
+zipStorePath=wrapper/dists
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/src/frontends/android/gradlew b/src/frontends/android/gradlew
new file mode 100755
index 000000000..91a7e269e
--- /dev/null
+++ b/src/frontends/android/gradlew
@@ -0,0 +1,164 @@
+#!/usr/bin/env bash
+
+##############################################################################
+##
+## Gradle start up script for UN*X
+##
+##############################################################################
+
+# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
+DEFAULT_JVM_OPTS=""
+
+APP_NAME="Gradle"
+APP_BASE_NAME=`basename "$0"`
+
+# Use the maximum available, or set MAX_FD != -1 to use that value.
+MAX_FD="maximum"
+
+warn ( ) {
+ echo "$*"
+}
+
+die ( ) {
+ echo
+ echo "$*"
+ echo
+ exit 1
+}
+
+# OS specific support (must be 'true' or 'false').
+cygwin=false
+msys=false
+darwin=false
+case "`uname`" in
+ CYGWIN* )
+ cygwin=true
+ ;;
+ Darwin* )
+ darwin=true
+ ;;
+ MINGW* )
+ msys=true
+ ;;
+esac
+
+# For Cygwin, ensure paths are in UNIX format before anything is touched.
+if $cygwin ; then
+ [ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --unix "$JAVA_HOME"`
+fi
+
+# Attempt to set APP_HOME
+# Resolve links: $0 may be a link
+PRG="$0"
+# Need this for relative symlinks.
+while [ -h "$PRG" ] ; do
+ ls=`ls -ld "$PRG"`
+ link=`expr "$ls" : '.*-> \(.*\)$'`
+ if expr "$link" : '/.*' > /dev/null; then
+ PRG="$link"
+ else
+ PRG=`dirname "$PRG"`"/$link"
+ fi
+done
+SAVED="`pwd`"
+cd "`dirname \"$PRG\"`/" >&-
+APP_HOME="`pwd -P`"
+cd "$SAVED" >&-
+
+CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
+
+# Determine the Java command to use to start the JVM.
+if [ -n "$JAVA_HOME" ] ; then
+ if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
+ # IBM's JDK on AIX uses strange locations for the executables
+ JAVACMD="$JAVA_HOME/jre/sh/java"
+ else
+ JAVACMD="$JAVA_HOME/bin/java"
+ fi
+ if [ ! -x "$JAVACMD" ] ; then
+ die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
+
+Please set the JAVA_HOME variable in your environment to match the
+location of your Java installation."
+ fi
+else
+ JAVACMD="java"
+ which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
+
+Please set the JAVA_HOME variable in your environment to match the
+location of your Java installation."
+fi
+
+# Increase the maximum file descriptors if we can.
+if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then
+ MAX_FD_LIMIT=`ulimit -H -n`
+ if [ $? -eq 0 ] ; then
+ if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then
+ MAX_FD="$MAX_FD_LIMIT"
+ fi
+ ulimit -n $MAX_FD
+ if [ $? -ne 0 ] ; then
+ warn "Could not set maximum file descriptor limit: $MAX_FD"
+ fi
+ else
+ warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT"
+ fi
+fi
+
+# For Darwin, add options to specify how the application appears in the dock
+if $darwin; then
+ GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\""
+fi
+
+# For Cygwin, switch paths to Windows format before running java
+if $cygwin ; then
+ APP_HOME=`cygpath --path --mixed "$APP_HOME"`
+ CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
+
+ # We build the pattern for arguments to be converted via cygpath
+ ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null`
+ SEP=""
+ for dir in $ROOTDIRSRAW ; do
+ ROOTDIRS="$ROOTDIRS$SEP$dir"
+ SEP="|"
+ done
+ OURCYGPATTERN="(^($ROOTDIRS))"
+ # Add a user-defined pattern to the cygpath arguments
+ if [ "$GRADLE_CYGPATTERN" != "" ] ; then
+ OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)"
+ fi
+ # Now convert the arguments - kludge to limit ourselves to /bin/sh
+ i=0
+ for arg in "$@" ; do
+ CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -`
+ CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option
+
+ if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition
+ eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"`
+ else
+ eval `echo args$i`="\"$arg\""
+ fi
+ i=$((i+1))
+ done
+ case $i in
+ (0) set -- ;;
+ (1) set -- "$args0" ;;
+ (2) set -- "$args0" "$args1" ;;
+ (3) set -- "$args0" "$args1" "$args2" ;;
+ (4) set -- "$args0" "$args1" "$args2" "$args3" ;;
+ (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
+ (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
+ (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
+ (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
+ (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
+ esac
+fi
+
+# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules
+function splitJvmOpts() {
+ JVM_OPTS=("$@")
+}
+eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS
+JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME"
+
+exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@"
diff --git a/src/frontends/android/gradlew.bat b/src/frontends/android/gradlew.bat
new file mode 100644
index 000000000..aec99730b
--- /dev/null
+++ b/src/frontends/android/gradlew.bat
@@ -0,0 +1,90 @@
+@if "%DEBUG%" == "" @echo off
+@rem ##########################################################################
+@rem
+@rem Gradle startup script for Windows
+@rem
+@rem ##########################################################################
+
+@rem Set local scope for the variables with windows NT shell
+if "%OS%"=="Windows_NT" setlocal
+
+@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
+set DEFAULT_JVM_OPTS=
+
+set DIRNAME=%~dp0
+if "%DIRNAME%" == "" set DIRNAME=.
+set APP_BASE_NAME=%~n0
+set APP_HOME=%DIRNAME%
+
+@rem Find java.exe
+if defined JAVA_HOME goto findJavaFromJavaHome
+
+set JAVA_EXE=java.exe
+%JAVA_EXE% -version >NUL 2>&1
+if "%ERRORLEVEL%" == "0" goto init
+
+echo.
+echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
+echo.
+echo Please set the JAVA_HOME variable in your environment to match the
+echo location of your Java installation.
+
+goto fail
+
+:findJavaFromJavaHome
+set JAVA_HOME=%JAVA_HOME:"=%
+set JAVA_EXE=%JAVA_HOME%/bin/java.exe
+
+if exist "%JAVA_EXE%" goto init
+
+echo.
+echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
+echo.
+echo Please set the JAVA_HOME variable in your environment to match the
+echo location of your Java installation.
+
+goto fail
+
+:init
+@rem Get command-line arguments, handling Windowz variants
+
+if not "%OS%" == "Windows_NT" goto win9xME_args
+if "%@eval[2+2]" == "4" goto 4NT_args
+
+:win9xME_args
+@rem Slurp the command line arguments.
+set CMD_LINE_ARGS=
+set _SKIP=2
+
+:win9xME_args_slurp
+if "x%~1" == "x" goto execute
+
+set CMD_LINE_ARGS=%*
+goto execute
+
+:4NT_args
+@rem Get arguments from the 4NT Shell from JP Software
+set CMD_LINE_ARGS=%$
+
+:execute
+@rem Setup the command line
+
+set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
+
+@rem Execute Gradle
+"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%
+
+:end
+@rem End local scope for the variables with windows NT shell
+if "%ERRORLEVEL%"=="0" goto mainEnd
+
+:fail
+rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
+rem the _cmd.exe /c_ return code!
+if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
+exit /b 1
+
+:mainEnd
+if "%OS%"=="Windows_NT" endlocal
+
+:omega
diff --git a/src/frontends/android/proguard.cfg b/src/frontends/android/proguard.cfg
deleted file mode 100644
index b1cdf17b5..000000000
--- a/src/frontends/android/proguard.cfg
+++ /dev/null
@@ -1,40 +0,0 @@
--optimizationpasses 5
--dontusemixedcaseclassnames
--dontskipnonpubliclibraryclasses
--dontpreverify
--verbose
--optimizations !code/simplification/arithmetic,!field/*,!class/merging/*
-
--keep public class * extends android.app.Activity
--keep public class * extends android.app.Application
--keep public class * extends android.app.Service
--keep public class * extends android.content.BroadcastReceiver
--keep public class * extends android.content.ContentProvider
--keep public class * extends android.app.backup.BackupAgentHelper
--keep public class * extends android.preference.Preference
--keep public class com.android.vending.licensing.ILicensingService
-
--keepclasseswithmembernames class * {
- native <methods>;
-}
-
--keepclasseswithmembers class * {
- public <init>(android.content.Context, android.util.AttributeSet);
-}
-
--keepclasseswithmembers class * {
- public <init>(android.content.Context, android.util.AttributeSet, int);
-}
-
--keepclassmembers class * extends android.app.Activity {
- public void *(android.view.View);
-}
-
--keepclassmembers enum * {
- public static **[] values();
- public static ** valueOf(java.lang.String);
-}
-
--keep class * implements android.os.Parcelable {
- public static final android.os.Parcelable$Creator *;
-}
diff --git a/src/frontends/android/project.properties b/src/frontends/android/project.properties
deleted file mode 100644
index bbe203c84..000000000
--- a/src/frontends/android/project.properties
+++ /dev/null
@@ -1,11 +0,0 @@
-# This file is automatically generated by Android Tools.
-# Do not modify this file -- YOUR CHANGES WILL BE ERASED!
-#
-# This file must be checked in Version Control Systems.
-#
-# To customize properties used by the Ant build system use,
-# "ant.properties", and override values to adapt the script to your
-# project structure.
-
-# Project target.
-target=android-21
diff --git a/src/frontends/android/settings.gradle b/src/frontends/android/settings.gradle
new file mode 100644
index 000000000..e7b4def49
--- /dev/null
+++ b/src/frontends/android/settings.gradle
@@ -0,0 +1 @@
+include ':app'