diff --git a/.idea/codeStyleSettings.xml b/.idea/codeStyleSettings.xml index 18cc2a1b707792eff0db32603982ba28c7eeb524..0677e45dbda840b74b6441c24eba9f9e52693215 100644 --- a/.idea/codeStyleSettings.xml +++ b/.idea/codeStyleSettings.xml @@ -37,37 +37,15 @@ <JavaCodeStyleSettings> <option name="ANNOTATION_PARAMETER_WRAP" value="1" /> </JavaCodeStyleSettings> - <Objective-C-extensions> - <option name="GENERATE_INSTANCE_VARIABLES_FOR_PROPERTIES" value="ASK" /> - <option name="RELEASE_STYLE" value="IVAR" /> - <option name="TYPE_QUALIFIERS_PLACEMENT" value="BEFORE" /> - <file> - <option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="Import" /> - <option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="Macro" /> - <option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="Typedef" /> - <option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="Enum" /> - <option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="Constant" /> - <option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="Global" /> - <option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="Struct" /> - <option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="FunctionPredecl" /> - <option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="Function" /> - </file> - <class> - <option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="Property" /> - <option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="Synthesize" /> - <option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="InitMethod" /> - <option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="StaticMethod" /> - <option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="InstanceMethod" /> - <option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="DeallocMethod" /> - </class> - <extensions> - <pair source="cpp" header="h" /> - <pair source="c" header="h" /> - </extensions> - </Objective-C-extensions> <XML> <option name="XML_LEGACY_SETTINGS_IMPORTED" value="true" /> </XML> + <codeStyleSettings language="Groovy"> + <indentOptions> + <option name="USE_TAB_CHARACTER" value="true" /> + <option name="SMART_TABS" value="true" /> + </indentOptions> + </codeStyleSettings> <codeStyleSettings language="JAVA"> <option name="RIGHT_MARGIN" value="80" /> <option name="ALIGN_MULTILINE_PARAMETERS" value="false" /> diff --git a/briar-android-tests/build.gradle b/briar-android-tests/build.gradle index af9d13cbb6e8e0be6381a0da96e97894b989eb39..d0594e9bc1350293b93d6b99a4cb44f24ea3505f 100644 --- a/briar-android-tests/build.gradle +++ b/briar-android-tests/build.gradle @@ -1,5 +1,4 @@ apply plugin: 'com.android.library' -apply plugin: 'witness' apply plugin: 'com.neenbedankt.android-apt' android { @@ -7,20 +6,15 @@ android { buildToolsVersion "23.0.3" defaultConfig { - minSdkVersion 9 - targetSdkVersion 22 - versionCode 1 - versionName "1.0" - } - buildTypes { - release { - minifyEnabled false - proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' - } + minSdkVersion 14 + proguardFiles getDefaultProguardFile('proguard-android.txt'), '../briar-android/proguard-rules.txt' + consumerProguardFiles getDefaultProguardFile('proguard-android.txt'), '../briar-android/proguard-rules.txt' } + dexOptions { incremental true } + compileOptions { sourceCompatibility JavaVersion.VERSION_1_7 targetCompatibility JavaVersion.VERSION_1_7 @@ -28,23 +22,12 @@ android { } dependencies { - compile fileTree(dir: 'libs', include: ['*.jar']) - compile project(':briar-api') - compile project(':briar-core') + testCompile project(':briar-api') + testCompile project(':briar-core') testCompile 'junit:junit:4.12' testCompile 'net.jodah:concurrentunit:0.4.2' - compile 'com.android.support:appcompat-v7:23.2.1' + testCompile 'com.android.support:appcompat-v7:23.2.1' testApt 'com.google.dagger:dagger-compiler:2.0.2' provided 'javax.annotation:jsr250-api:1.0' testCompile project(':briar-tests') } - -dependencyVerification { - verify = [ - 'com.android.support:appcompat-v7:00f9d93acacd6731f309724054bf51492814b4b2869f16d7d5c0038dcb8c9a0d', - 'com.android.support:support-v4:81ce890f26d35c75ad17d0f998a7e3230330c3b41e0b629566bc744bee89e448', - 'com.android.support:animated-vector-drawable:06d1963b85aa917099d7757e6a7b3e4dc06889413dc747f625ae8683606db3a1', - 'com.android.support:support-vector-drawable:799bafe4c3de812386f0b291f744d5d6876452722dd40189b9ab87dbbf594ea1', - 'com.android.support:support-annotations:786ab0d060774fb95cfdaf4878771e14b85733b1af9d72a4aae762dc7c1dff9f', - ] -} diff --git a/briar-android-tests/proguard-rules.pro b/briar-android-tests/proguard-rules.pro deleted file mode 100644 index 2106d3d2c9baa446f784ed6fb1f247ecbc4e74a4..0000000000000000000000000000000000000000 --- a/briar-android-tests/proguard-rules.pro +++ /dev/null @@ -1,17 +0,0 @@ -# Add project specific ProGuard rules here. -# By default, the flags in this file are appended to flags specified -# in /home/ernir/dev/sdk/tools/proguard/proguard-android.txt -# You can edit the include path and order by changing the proguardFiles -# directive in build.gradle. -# -# For more details, see -# http://developer.android.com/guide/developing/tools/proguard.html - -# Add any project specific keep options here: - -# If your project uses WebView with JS, uncomment the following -# and specify the fully qualified class name to the JavaScript interface -# class: -#-keepclassmembers class fqcn.of.javascript.interface.for.webview { -# public *; -#} diff --git a/briar-android/build.gradle b/briar-android/build.gradle index e56648b98c7c06ece8c038d081a69537329f0306..8e75abfe40a67660b43a696458d6bf3081be7bbd 100644 --- a/briar-android/build.gradle +++ b/briar-android/build.gradle @@ -44,11 +44,6 @@ dependencies { testCompile project(path: ':briar-tests') testCompile 'org.robolectric:robolectric:3.0' testCompile 'org.mockito:mockito-core:1.10.19' - - androidTestCompile 'org.robolectric:robolectric:3.0' - androidTestCompile 'org.mockito:mockito-core:1.10.19' - androidTestApt 'com.google.dagger:dagger-compiler:2.0.2' - androidTestCompile 'junit:junit:4.12' } dependencyVerification { @@ -100,24 +95,16 @@ android { unitTests.returnDefaultValues = true } } - - - // Move the build types to build-types/<type> - // For instance, build-types/debug/java, build-types/debug/AndroidManifest.xml, ... - // This moves them out of them default location under src/<type>/... which would - // conflict with src/ being used by the main source set. - // Adding new build types or product flavors should be accompanied - // by a similar customization. - debug.setRoot('build-types/debug') - release.setRoot('build-types/release') } buildTypes { debug { + shrinkResources false minifyEnabled true proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt' } release { + shrinkResources true minifyEnabled true proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt' } diff --git a/briar-android/proguard-rules.txt b/briar-android/proguard-rules.txt index d570d88c69913b9425a9fa9c486357c268afb9fd..6a936b7e88129ba55c61805ce199eca7d83e41e7 100644 --- a/briar-android/proguard-rules.txt +++ b/briar-android/proguard-rules.txt @@ -4,17 +4,16 @@ -dontobfuscate -verbose -useuniqueclassmembernames --optimizations !code/simplification/arithmetic,!field/*,!class/merging/* +#-optimizations !code/simplification/arithmetic,!field/*,!class/merging/* # For comfortability in case we do obfuscate # -renamesourcefileattribute SourceFile --keepattributes SourceFile,LineNumberTable,*Annotation*,Signature, InnerClasses, EnclosingMethod +-keepattributes SourceFile, LineNumberTable, *Annotation*, Signature, InnerClasses, EnclosingMethod -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 com.android.vending.licensing.ILicensingService -keepclasseswithmembers class * { native <methods>; } -keepclasseswithmembers class * { public <init> (android.content.Context, android.util.AttributeSet); @@ -32,39 +31,30 @@ -keepclassmembers class * extends android.app.Activity { public void *(android.view.View); } --keepclassmembers class * { - @com.google.inject.Inject <init>(...); - @com.google.inject.Inject <fields>; -} -# Just in case Roboguice events are used --keepclassmembers class * { - void *(**On*Event); -} -keep class org.h2.** { *; } -keep class org.briarproject.** { *; } --keep class com.google.inject.** { *; } -keep class javax.inject.** { *; } --keep class javax.annotation.** { *; } --keep class roboguice.** { *; } -keep class dagger.** { *; } --keep class com.google.** { *; } +-keep class com.google.zxing.Result -dontwarn org.h2.** -dontnote org.h2.** -dontwarn net.sf.cglib.** -dontwarn org.briarproject.plugins.tcp.** --dontwarn roboguice.** +-dontnote org.briarproject.crypto.** +-dontnote org.spongycastle.crypto.parsers.ECIESPublicKeyParser -dontwarn net.sourceforge.jsocks.** -dontnote android.support.** -dontnote dagger.** -dontwarn dagger.** +-dontnote com.google.common.** -dontwarn com.google.common.** - # RSS libraries -keep class com.rometools.rome.feed.synd.impl.** { *;} -keep class com.rometools.rome.io.impl.** { *;} +-dontnote com.rometools.rome.** -dontwarn javax.xml.stream.** -dontwarn org.jaxen.** -dontwarn java.nio.** diff --git a/settings.gradle b/settings.gradle index 6de5aebc60e6dd826c77d8f3a8b8ced7eab508c7..b167af5b93487c3b27f3ab04efe7b0ab38337094 100644 --- a/settings.gradle +++ b/settings.gradle @@ -1,5 +1,6 @@ -include ':briar-api', ':briar-android-tests' +include ':briar-api' include ':briar-core' include ':briar-desktop' include ':briar-tests' include ':briar-android' +include ':briar-android-tests' \ No newline at end of file