@ -1 +1 @@ |
|||
[{"id":"4001","question":"Come varia la pressione parziale dell\u2019ossigeno a livello polmonare, al variare dell\u2019altitudine?","answers":[{"id":"1","text":"diminuisce all\u2019aumentare dell\u2019altitudine.","correct":true},{"id":"2","text":"diminuisce all\u2019aumentare dell\u2019altitudine, ma non scende mai sotto valori di guardia."},{"id":"3","text":"aumenta all\u2019aumentare dell\u2019altitudine."}]},{"id":"4002","question":"Ad elevate altitudini nell\u2019organismo umano si instaura una situazione alterata, prodotta dalla ridotta pressione di ossigeno. Essa prende il nome di:","answers":[{"id":"1","text":"ipotermia."},{"id":"2","text":"ipossia.","correct":true},{"id":"3","text":"ipotensione."}]},{"id":"4003","question":"Che cosa \u00e8 l\u2019ipossia?","answers":[{"id":"1","text":"\u00e8 lo stato in cui l\u2019organismo viene a trovarsi a causa dell\u2019insufficiente pressione sanguigna dovuta alla quota."},{"id":"2","text":"\u00e8 lo stato in cui l\u2019organismo viene a trovarsi a causa dell\u2019insufficiente temperatura corporea dovuta alla quota."},{"id":"3","text":"\u00e8 lo stato in cui l\u2019organismo viene a trovarsi a causa dell\u2019insufficiente pressione dell\u2019ossigeno a livello degli alveoli polmonari dovuta alla quota.","correct":true}]},{"id":"4004","question":"Quali sono gli effetti dell\u2019ipossia?","answers":[{"id":"1","text":"diminuzione dell\u2019efficienza mentale, nausea, euforia, aumento del ritmo di ventilazione polmonare.","correct":true},{"id":"2","text":"vasodilatazione periferica, secchezza delle fauci, rigidit\u00e0 muscolare, diminuzione del ritmo di ventilazione polmonare."},{"id":"3","text":"diminuzione della pressione arteriosa, ischemia periferica, paralisi dei centri respiratori."}]},{"id":"4005","question":"La decompressione da alta quota pu\u00f2 dar luogo a liberazione di bolle gassose nel sangue, detti emboli. Qual \u00e8 la condizione in cui questo pericoloso fenomeno pu\u00f2 verificarsi con maggiore facilit\u00e0?","answers":[{"id":"1","text":"lenta ascensione oltre i 7000 metri."},{"id":"2","text":"rapida ascensione a 7000 metri ed oltre.","correct":true},{"id":"3","text":"permanenza ad alta quota dopo lungo periodo di ambientamento. DEL VOLO"}]},{"id":"4006","question":"Durante il volo il corpo umano \u00e8 sottoposto a vari tipi di accelerazione. Quali sono meglio sopportate tra quelle positive (testa-piedi) e quelle negative (piedi-testa)?","answers":[{"id":"1","text":"entrambe in uguale misura."},{"id":"2","text":"quelle negative."},{"id":"3","text":"quelle positive.","correct":true}]},{"id":"4007","question":"Le accelerazioni positive (testa-piedi) corrispondono a un aumento dei \u201cG\u201d o meglio a un aumento fittizio dell\u2019accelerazione di gravit\u00e0. Quando si possono manifestare in volo?","answers":[{"id":"1","text":"durante virate corrette.","correct":true},{"id":"2","text":"durante il volo su traiettoria rettilinea con forte pendenza."},{"id":"3","text":"durante brusche manovre di picchiata."}]},{"id":"4008","question":"Le accelerazioni negative (piedi-testa) corrispondono a una diminuzione dei \u201cG\u201d o meglio a una diminuzione fittizia della accelerazione di gravit\u00e0. Quando si possono manifestare in volo?","answers":[{"id":"1","text":"durante una brusca richiamata."},{"id":"2","text":"durante brusche manovre di picchiata.","correct":true},{"id":"3","text":"durante il volo su traiettoria rettilinea con forte pendenza."}]},{"id":"4009","question":"Quando sussiste in volo il rischio che il pilota soffra di un oscuramento della vista a seguito di manovre che inducono forti accelerazioni?","answers":[{"id":"1","text":"quando le accelerazioni indotte sono del tipo positivo (testa-piedi) e superano i 4 \u201cG\u201d per un tempo superiore a 4 secondi.","correct":true},{"id":"2","text":"quando comunque sono del tipo negativo (piedi-testa)."},{"id":"3","text":"quando si passa da accelerazioni positive ad accelerazioni negative senza soluzione di continuit\u00e0 in meno di 4 secondi."}]}] |
|||
[{"id":"4001","question":"Come varia la pressione parziale dell\u2019ossigeno a livello polmonare, al variare dell\u2019altitudine?","points":"2","answers":[{"id":"1","text":"Diminuisce all\u2019aumentare dell\u2019altitudine.","correct":true},{"id":"2","text":"Diminuisce all\u2019aumentare dell\u2019altitudine, ma non scende mai sotto valori di guardia."},{"id":"3","text":"Aumenta all\u2019aumentare dell\u2019altitudine."}]},{"id":"4002","question":"Ad elevate altitudini nell\u2019organismo umano si instaura una situazione alterata, prodotta dalla ridotta pressione di ossigeno. Essa prende il nome di:","points":"2","answers":[{"id":"1","text":"ipotermia."},{"id":"2","text":"ipossia.","correct":true},{"id":"3","text":"ipotensione."}]},{"id":"4003","question":"Che cosa \u00e8 l\u2019ipossia?","points":"2","answers":[{"id":"1","text":"\u00c8 lo stato in cui l\u2019organismo viene a trovarsi a causa dell\u2019insufficiente pressione sanguigna dovuta alla quota."},{"id":"2","text":"\u00c8 lo stato in cui l\u2019organismo viene a trovarsi a causa dell\u2019insufficiente temperatura corporea dovuta alla quota."},{"id":"3","text":"\u00c8 lo stato in cui l\u2019organismo viene a trovarsi a causa dell\u2019insufficiente pressione dell\u2019ossigeno a livello degli alveoli polmonari dovuta alla quota.","correct":true}]},{"id":"4004","question":"Quali sono gli effetti dell\u2019ipossia?","points":"2","answers":[{"id":"1","text":"Diminuzione dell\u2019efficienza mentale, nausea, euforia, aumento del ritmo di ventilazione polmonare.","correct":true},{"id":"2","text":"Vasodilatazione periferica, secchezza delle fauci, rigidit\u00e0 muscolare, diminuzione del ritmo di ventilazione polmonare."},{"id":"3","text":"Diminuzione della pressione arteriosa, ischemia periferica, paralisi dei centri respiratori."}]},{"id":"4005","question":"La decompressione da alta quota pu\u00f2 dar luogo a liberazione di bolle gassose nel sangue, detti emboli. Qual \u00e8 la condizione in cui questo pericoloso fenomeno pu\u00f2 verificarsi con maggiore facilit\u00e0?","points":"2","answers":[{"id":"1","text":"Lenta ascensione oltre i 7000 metri."},{"id":"2","text":"Rapida ascensione a 7000 metri ed oltre.","correct":true},{"id":"3","text":"Permanenza ad alta quota dopo lungo periodo di ambientamento. DEL VOLO"}]},{"id":"4006","question":"Durante il volo il corpo umano \u00e8 sottoposto a vari tipi di accelerazione. Quali sono meglio sopportate tra quelle positive (testa-piedi) e quelle negative (piedi-testa)?","points":"2","answers":[{"id":"1","text":"Entrambe in uguale misura."},{"id":"2","text":"Quelle negative."},{"id":"3","text":"Quelle positive.","correct":true}]},{"id":"4007","question":"Le accelerazioni positive (testa-piedi) corrispondono a un aumento dei \u201cG\u201d o meglio a un aumento fittizio dell\u2019accelerazione di gravit\u00e0. Quando si possono manifestare in volo?","points":"2","answers":[{"id":"1","text":"Durante virate corrette.","correct":true},{"id":"2","text":"Durante il volo su traiettoria rettilinea con forte pendenza."},{"id":"3","text":"Durante brusche manovre di picchiata."}]},{"id":"4008","question":"Le accelerazioni negative (piedi-testa) corrispondono a una diminuzione dei \u201cG\u201d o meglio a una diminuzione fittizia della accelerazione di gravit\u00e0. Quando si possono manifestare in volo?","points":"2","answers":[{"id":"1","text":"Durante una brusca richiamata."},{"id":"2","text":"Durante brusche manovre di picchiata.","correct":true},{"id":"3","text":"Durante il volo su traiettoria rettilinea con forte pendenza."}]},{"id":"4009","question":"Quando sussiste in volo il rischio che il pilota soffra di un oscuramento della vista a seguito di manovre che inducono forti accelerazioni?","points":"2","answers":[{"id":"1","text":"Quando le accelerazioni indotte sono del tipo positivo (testa-piedi) e superano i 4 \u201cG\u201d per un tempo superiore a 4 secondi.","correct":true},{"id":"2","text":"Quando comunque sono del tipo negativo (piedi-testa)."},{"id":"3","text":"Quando si passa da accelerazioni positive ad accelerazioni negative senza soluzione di continuit\u00e0 in meno di 4 secondi."}]}] |
|||
|
@ -1,205 +0,0 @@ |
|||
buildscript { |
|||
repositories { |
|||
google() |
|||
maven { url 'https://maven.fabric.io/public' } |
|||
} |
|||
|
|||
dependencies { |
|||
classpath 'io.fabric.tools:gradle:1.26.1' |
|||
} |
|||
} |
|||
apply plugin: 'com.android.application' |
|||
apply plugin: 'io.fabric' |
|||
apply plugin: 'devicefarm' |
|||
|
|||
repositories { |
|||
maven { url 'https://maven.fabric.io/public' } |
|||
} |
|||
|
|||
def safeExtGet(prop, fallback) { |
|||
rootProject.ext.has(prop) ? rootProject.ext.get(prop) : fallback |
|||
} |
|||
|
|||
android { |
|||
compileSdkVersion safeExtGet("compileSdkVersion", 28) |
|||
|
|||
compileOptions { |
|||
sourceCompatibility JavaVersion.VERSION_1_8 |
|||
targetCompatibility JavaVersion.VERSION_1_8 |
|||
} |
|||
|
|||
defaultConfig { |
|||
applicationId 'com.dslak.vdsquiz' |
|||
minSdkVersion safeExtGet("minSdkVersion", 21) |
|||
targetSdkVersion safeExtGet("targetSdkVersion", 28) |
|||
versionCode 1 |
|||
versionName '1.0.0' |
|||
|
|||
multiDexEnabled true |
|||
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" |
|||
// Deprecated. Used by net.openid:appauth |
|||
manifestPlaceholders = [ |
|||
'appAuthRedirectScheme': 'host.exp.exponent' |
|||
] |
|||
} |
|||
dexOptions { |
|||
javaMaxHeapSize System.getenv("DISABLE_DEX_MAX_HEAP") ? null : "8g" |
|||
} |
|||
|
|||
signingConfigs { |
|||
debug { |
|||
storeFile file('../debug.keystore') |
|||
} |
|||
release { |
|||
storeFile file(System.getenv("ANDROID_KEYSTORE_PATH") ?: "release-key.jks") |
|||
storePassword System.getenv("ANDROID_KEYSTORE_PASSWORD") |
|||
keyAlias System.getenv("ANDROID_KEY_ALIAS") |
|||
keyPassword System.getenv("ANDROID_KEY_PASSWORD") |
|||
} |
|||
} |
|||
buildTypes { |
|||
debug { |
|||
debuggable true |
|||
ext.enableCrashlytics = false |
|||
} |
|||
release { |
|||
minifyEnabled true |
|||
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' |
|||
consumerProguardFiles 'proguard-rules.pro' |
|||
signingConfig signingConfigs.release |
|||
} |
|||
} |
|||
lintOptions { |
|||
abortOnError false |
|||
} |
|||
packagingOptions { |
|||
pickFirst "**" |
|||
} |
|||
} |
|||
|
|||
devicefarm { |
|||
projectName System.getenv("DEVICEFARM_PROJECT_NAME") |
|||
devicePool System.getenv("DEVICEFARM_DEVICE_POOL") |
|||
executionTimeoutMinutes 40 |
|||
authentication { |
|||
|
|||
accessKey System.getenv("AWS_ACCESS_KEY_ID") |
|||
secretKey System.getenv("AWS_SECRET_ACCESS_KEY") |
|||
} |
|||
} |
|||
|
|||
configurations.all { |
|||
resolutionStrategy { |
|||
force 'org.webkit:android-jsc:r245459' |
|||
} |
|||
} |
|||
|
|||
// WHEN_PREPARING_SHELL_REMOVE_FROM_HERE |
|||
|
|||
apply from: 'expo.gradle' |
|||
|
|||
// WHEN_PREPARING_SHELL_REMOVE_TO_HERE |
|||
|
|||
apply from: "../../node_modules/react-native-unimodules/gradle.groovy" |
|||
|
|||
dependencies { |
|||
implementation fileTree(dir: 'libs', include: ['*.jar']) |
|||
|
|||
implementation 'com.android.support:multidex:1.0.1' |
|||
|
|||
// Our dependencies |
|||
implementation "com.android.support:appcompat-v7:$supportLibVersion" |
|||
|
|||
// Our dependencies from ExpoView |
|||
// DON'T ADD ANYTHING HERE THAT ISN'T IN EXPOVIEW. ONLY COPY THINGS FROM EXPOVIEW TO HERE. |
|||
implementation "com.android.support:appcompat-v7:$supportLibVersion" |
|||
implementation 'com.facebook.android:facebook-android-sdk:5.0.1' |
|||
implementation('com.facebook.android:audience-network-sdk:5.1.1') { |
|||
exclude module: 'play-services-ads' |
|||
} |
|||
compileOnly 'org.glassfish:javax.annotation:3.1.1' |
|||
implementation 'com.jakewharton:butterknife:9.0.0' |
|||
implementation 'de.greenrobot:eventbus:2.4.0' |
|||
|
|||
implementation 'com.squareup.picasso:picasso:2.5.2' |
|||
implementation 'com.google.android.gms:play-services-gcm:15.0.1' |
|||
implementation 'com.google.android.gms:play-services-analytics:16.0.1' |
|||
implementation 'com.google.android.gms:play-services-maps:15.0.1' |
|||
implementation 'com.google.android.gms:play-services-auth:15.0.1' |
|||
implementation 'com.google.android.gms:play-services-location:15.0.1' |
|||
implementation "com.madgag.spongycastle:core:1.53.0.0" |
|||
implementation "com.madgag.spongycastle:prov:1.53.0.0" |
|||
debugImplementation 'com.squareup.leakcanary:leakcanary-android-no-op:1.4-beta1' |
|||
// debugImplementation 'com.squareup.leakcanary:leakcanary-android:1.4-beta1' |
|||
releaseImplementation 'com.squareup.leakcanary:leakcanary-android-no-op:1.4-beta1' |
|||
implementation 'com.facebook.device.yearclass:yearclass:2.1.0' |
|||
implementation 'commons-io:commons-io:1.4' |
|||
implementation 'me.leolin:ShortcutBadger:1.1.4@aar' |
|||
implementation 'com.theartofdev.edmodo:android-image-cropper:2.7.0' |
|||
implementation 'commons-codec:commons-codec:1.10' |
|||
implementation 'com.segment.analytics.android:analytics:4.3.0' |
|||
implementation 'com.google.zxing:core:3.3.3' |
|||
implementation 'net.openid:appauth:0.4.1' |
|||
implementation 'com.airbnb.android:lottie:2.5.6' |
|||
implementation('io.nlopez.smartlocation:library:3.2.11') { |
|||
transitive = false |
|||
} |
|||
implementation "com.android.support:exifinterface:${safeExtGet("supportLibVersion", "28.0.0")}" |
|||
implementation 'com.squareup.okio:okio:1.9.0' |
|||
implementation 'com.facebook.soloader:soloader:0.6.0' |
|||
|
|||
// expo-file-system |
|||
implementation 'com.squareup.okhttp3:okhttp:3.10.0' |
|||
implementation 'com.squareup.okhttp3:okhttp-urlconnection:3.10.0' |
|||
|
|||
// Testing |
|||
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1' |
|||
// We use a modified build of com.android.support.test:runner:1.0.1. Explanation in maven-test/README |
|||
androidTestImplementation 'com.android.support.test:runner:1.0.1' |
|||
androidTestImplementation "com.android.support:support-annotations:${safeExtGet("supportLibVersion", "28.0.0")}" |
|||
androidTestImplementation 'com.google.code.findbugs:jsr305:3.0.0' |
|||
androidTestImplementation 'com.android.support.test.uiautomator:uiautomator-v18:2.1.1' |
|||
androidTestImplementation 'com.azimolabs.conditionwatcher:conditionwatcher:0.2' |
|||
|
|||
testImplementation 'junit:junit:4.12' |
|||
testImplementation 'org.mockito:mockito-core:1.10.19' |
|||
testImplementation 'org.robolectric:robolectric:3.8' |
|||
testImplementation 'com.android.support.test:runner:1.0.2-alpha1' |
|||
testImplementation 'com.android.support.test:rules:1.0.2-alpha1' |
|||
|
|||
|
|||
implementation('host.exp.exponent:expoview:35.0.0@aar') { |
|||
transitive = true |
|||
exclude group: 'com.squareup.okhttp3', module: 'okhttp' |
|||
exclude group: 'com.squareup.okhttp3', module: 'okhttp-urlconnection' |
|||
} |
|||
|
|||
|
|||
|
|||
|
|||
api 'org.webkit:android-jsc:r245459' // needs to be before react-native |
|||
api 'com.facebook.react:react-native:33.0.0' |
|||
|
|||
|
|||
|
|||
|
|||
addUnimodulesDependencies([ |
|||
modulesPaths : [ |
|||
'../../node_modules' |
|||
], |
|||
configuration: 'api', |
|||
target : 'react-native', |
|||
exclude : [ |
|||
// You can exclude unneeded modules here, eg. |
|||
// 'unimodules-face-detector-interface', |
|||
// 'expo-face-detector' |
|||
|
|||
// Adding a name here will also remove the package |
|||
// from auto-generated BasePackageList.java |
|||
] |
|||
]) |
|||
|
|||
} |
|||
|
|||
// This has to be down here for some reason |
|||
apply plugin: 'com.google.gms.google-services' |
@ -1,68 +0,0 @@ |
|||
// Gradle script for detached apps. |
|||
|
|||
import org.apache.tools.ant.taskdefs.condition.Os |
|||
|
|||
void runBefore(String dependentTaskName, Task task) { |
|||
Task dependentTask = tasks.findByPath(dependentTaskName); |
|||
if (dependentTask != null) { |
|||
dependentTask.dependsOn task |
|||
} |
|||
} |
|||
|
|||
afterEvaluate { |
|||
def expoRoot = file("../../") |
|||
def inputExcludes = ["android/**", "ios/**"] |
|||
|
|||
task exponentPrebuildStep(type: Exec) { |
|||
workingDir expoRoot |
|||
if (Os.isFamily(Os.FAMILY_WINDOWS)) { |
|||
commandLine "cmd", "/c", ".\\node_modules\\expokit\\detach-scripts\\run-exp.bat" |
|||
} else { |
|||
commandLine "./node_modules/expokit/detach-scripts/run-exp.sh", "prepare-detached-build", "--platform", "android", expoRoot |
|||
} |
|||
} |
|||
runBefore("preBuild", exponentPrebuildStep) |
|||
|
|||
// Based on https://github.com/facebook/react-native/blob/master/react.gradle |
|||
|
|||
android.applicationVariants.each { variant -> |
|||
def folderName = variant.name |
|||
def targetName = folderName.capitalize() |
|||
|
|||
def assetsDir = file("$buildDir/intermediates/merged_assets/${folderName}/merge${targetName}Assets/out") |
|||
|
|||
// Bundle task name for variant |
|||
def bundleExpoAssetsTaskName = "bundle${targetName}ExpoAssets" |
|||
|
|||
def currentBundleTask = tasks.create( |
|||
name: bundleExpoAssetsTaskName, |
|||
type: Exec) { |
|||
description = "Expo bundle assets for ${targetName}." |
|||
|
|||
// Create dirs if they are not there (e.g. the "clean" task just ran) |
|||
doFirst { |
|||
assetsDir.mkdirs() |
|||
} |
|||
|
|||
// Set up inputs and outputs so gradle can cache the result |
|||
inputs.files fileTree(dir: expoRoot, excludes: inputExcludes) |
|||
outputs.dir assetsDir |
|||
|
|||
// Set up the call to exp |
|||
workingDir expoRoot |
|||
|
|||
if (Os.isFamily(Os.FAMILY_WINDOWS)) { |
|||
commandLine("cmd", "/c", ".\\node_modules\\expokit\\detach-scripts\\run-exp.bat", "bundle-assets", expoRoot, "--platform", "android", "--dest", assetsDir) |
|||
} else { |
|||
commandLine("./node_modules/expokit/detach-scripts/run-exp.sh", "bundle-assets", expoRoot, "--platform", "android", "--dest", assetsDir) |
|||
} |
|||
|
|||
enabled targetName.toLowerCase().contains("release") || targetName.toLowerCase().contains("prod") |
|||
} |
|||
|
|||
currentBundleTask.dependsOn("merge${targetName}Resources") |
|||
currentBundleTask.dependsOn("merge${targetName}Assets") |
|||
|
|||
runBefore("process${targetName}Resources", currentBundleTask) |
|||
} |
|||
} |
@ -1,3 +0,0 @@ |
|||
#Contains API Secret used to validate your application. Commit to internal source control; avoid making secret public. |
|||
#Sun Dec 13 13:22:06 PST 2015 |
|||
apiSecret=83176563693e1eefa1a91359c4151b88c3fd17e52ddf6d64416b7f1e0fa9cede |
@ -1,50 +0,0 @@ |
|||
{ |
|||
"project_info": { |
|||
"project_id": "exponent-5dd6d", |
|||
"project_number": "367315174693", |
|||
"name": "Expo Client" |
|||
}, |
|||
"client": [ |
|||
{ |
|||
"client_info": { |
|||
"mobilesdk_app_id": "1:367315174693:android:f968efbb41d1fa7a", |
|||
"client_id": "android:host.exp.exponent", |
|||
"client_type": 1, |
|||
"android_client_info": { |
|||
"package_name": "com.dslak.vdsquiz", |
|||
"certificate_hash": "" |
|||
} |
|||
}, |
|||
"oauth_client": [], |
|||
"api_key": [ |
|||
{ |
|||
"current_key": "" |
|||
} |
|||
], |
|||
"services": { |
|||
"analytics_service": { |
|||
"status": 2, |
|||
"analytics_property": { |
|||
"tracking_id": "UA-76673608-1" |
|||
} |
|||
}, |
|||
"cloud_messaging_service": { |
|||
"status": 2, |
|||
"apns_config": [] |
|||
}, |
|||
"appinvite_service": { |
|||
"status": 1, |
|||
"other_platform_oauth_client": [] |
|||
}, |
|||
"google_signin_service": { |
|||
"status": 1 |
|||
}, |
|||
"ads_service": { |
|||
"status": 1 |
|||
} |
|||
} |
|||
} |
|||
], |
|||
"client_info": [], |
|||
"ARTIFACT_VERSION": "1" |
|||
} |
@ -1,152 +0,0 @@ |
|||
# Add project specific ProGuard rules here. |
|||
# By default, the flags in this file are appended to flags specified |
|||
# in /Users/ide/Library/Android/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 *; |
|||
#} |
|||
|
|||
|
|||
# THIS IS VERY VERY BAD. REMOVE AS SOON AS VERSIONING IS FIXED |
|||
-dontwarn ** |
|||
|
|||
|
|||
-dontnote ** |
|||
|
|||
-keep class host.exp.exponent.generated.AppConstants { *; } |
|||
|
|||
##### Crashlytics ##### |
|||
-keepattributes SourceFile,LineNumberTable |
|||
|
|||
##### Expo Universal Modules ##### |
|||
|
|||
-keepclassmembers class * { |
|||
@**.expo.core.interfaces.ExpoProp *; |
|||
} |
|||
-keepclassmembers class * { |
|||
@**.expo.core.interfaces.ExpoMethod *; |
|||
} |
|||
|
|||
-keep @**.expo.core.interfaces.DoNotStrip class * |
|||
-keepclassmembers class * { |
|||
@**.expo.core.interfaces.DoNotStrip *; |
|||
} |
|||
|
|||
##### React Native ##### |
|||
-keep,allowobfuscation @interface **.facebook.proguard.annotations.DoNotStrip |
|||
-keep,allowobfuscation @interface **.facebook.proguard.annotations.KeepGettersAndSetters |
|||
-keep,allowobfuscation @interface **.facebook.react.bridge.ReadableType |
|||
|
|||
# Do not strip any method/class that is annotated with @DoNotStrip |
|||
-keep @**.facebook.proguard.annotations.DoNotStrip class * |
|||
-keepclassmembers class * { |
|||
@**.facebook.proguard.annotations.DoNotStrip *; |
|||
} |
|||
|
|||
-keepclassmembers @**.facebook.proguard.annotations.KeepGettersAndSetters class * { |
|||
void set*(***); |
|||
*** get*(); |
|||
} |
|||
|
|||
-keep class * extends **.facebook.react.bridge.JavaScriptModule { *; } |
|||
-keep class * extends **.facebook.react.bridge.NativeModule { *; } |
|||
-keepclassmembers class * { @**.facebook.react.uimanager.UIProp <fields>; } |
|||
-keepclassmembers class * { @**.facebook.react.uimanager.ReactProp <methods>; } |
|||
-keepclassmembers class * { @**.facebook.react.uimanager.ReactPropGroup <methods>; } |
|||
|
|||
# TODO: shouldn't need these two rules |
|||
-keep interface **.facebook.react.bridge.** { *; } |
|||
-keep enum **.facebook.react.bridge.** { *; } |
|||
|
|||
##### Versioned React Native ##### |
|||
-keep class **.facebook.** { *; } |
|||
-keep class abi** { *; } |
|||
-keep class versioned** { *; } |
|||
-keep class expo.modules** { *; } |
|||
|
|||
##### Butterknife ##### |
|||
-keep class butterknife.** { *; } |
|||
-dontwarn butterknife.internal.** |
|||
-keep class **$$ViewBinder { *; } |
|||
|
|||
-keepclasseswithmembernames class * { |
|||
@butterknife.* <fields>; |
|||
} |
|||
|
|||
-keepclasseswithmembernames class * { |
|||
@butterknife.* <methods>; |
|||
} |
|||
|
|||
##### Stetho ##### |
|||
-keep class **.facebook.stetho.** { *; } |
|||
-dontwarn **.facebook.stetho.** |
|||
|
|||
##### fresco ##### |
|||
# Keep our interfaces so they can be used by other ProGuard rules. |
|||
# See http://sourceforge.net/p/proguard/bugs/466/ |
|||
-keep,allowobfuscation @interface **.facebook.common.internal.DoNotStrip |
|||
|
|||
# Do not strip any method/class that is annotated with @DoNotStrip |
|||
-keep @**.facebook.common.internal.DoNotStrip class * |
|||
-keepclassmembers class * { |
|||
@**.facebook.common.internal.DoNotStrip *; |
|||
} |
|||
|
|||
# Keep native methods |
|||
-keepclassmembers class * { |
|||
native <methods>; |
|||
} |
|||
|
|||
-dontwarn okio.** |
|||
-dontwarn javax.annotation.** |
|||
-dontwarn com.android.volley.toolbox.** |
|||
|
|||
##### okhttp ##### |
|||
-keepattributes Signature |
|||
-keepattributes *Annotation* |
|||
-keep class com.squareup.okhttp.** { *; } |
|||
-keep interface com.squareup.okhttp.** { *; } |
|||
# This is also needed by Picasso |
|||
-dontwarn com.squareup.okhttp.** |
|||
|
|||
-keep class okhttp3.** { *; } |
|||
-keep interface okhttp3.** { *; } |
|||
# This is also needed by Picasso |
|||
-dontwarn okhttp3.** |
|||
|
|||
##### okio ##### |
|||
-keep class sun.misc.Unsafe { *; } |
|||
-dontwarn java.nio.file.* |
|||
-dontwarn org.codehaus.mojo.animal_sniffer.IgnoreJRERequirement |
|||
-dontwarn okio.** |
|||
|
|||
##### EventBus ##### |
|||
-keepclassmembers class ** { |
|||
public void onEvent*(***); |
|||
} |
|||
|
|||
# Only required if you use AsyncExecutor |
|||
-keepclassmembers class * extends de.greenrobot.event.util.ThrowableFailureEvent { |
|||
<init>(java.lang.Throwable); |
|||
} |
|||
|
|||
##### Amplitude ##### |
|||
-keep class com.amplitude.api.** {*;} |
|||
|
|||
##### DBFlow ##### |
|||
-keep class com.raizlabs.android.dbflow.config.GeneratedDatabaseHolder |
|||
|
|||
##### SpongyCastle ##### |
|||
-keep class org.spongycastle.** |
|||
-dontwarn org.spongycastle.jce.provider.X509LDAPCertStoreSpi |
|||
-dontwarn org.spongycastle.x509.util.LDAPStoreHelper |
@ -1,369 +0,0 @@ |
|||
<?xml version="1.0" encoding="utf-8"?> |
|||
<manifest |
|||
package="host.exp.exponent" |
|||
xmlns:android="http://schemas.android.com/apk/res/android" |
|||
xmlns:tools="http://schemas.android.com/tools"> |
|||
|
|||
<permission |
|||
android:name="com.dslak.vdsquiz.permission.C2D_MESSAGE" |
|||
android:protectionLevel="signature"/> |
|||
|
|||
<!-- These are required permissions to make the app run --> |
|||
<uses-permission android:name="com.dslak.vdsquiz.permission.C2D_MESSAGE" /> |
|||
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" /> |
|||
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> |
|||
<uses-permission android:name="android.permission.INTERNET" /> |
|||
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" /> |
|||
<uses-permission android:name="android.permission.WAKE_LOCK" /> |
|||
|
|||
|
|||
<uses-permission android:name="android.permission.INTERNET" /> |
|||
<uses-permission android:name="android.permission.VIBRATE" /> |
|||
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" tools:node="remove" /> |
|||
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" tools:node="remove" /> |
|||
<uses-permission android:name="android.permission.CAMERA" tools:node="remove" /> |
|||
<uses-permission android:name="android.permission.MANAGE_DOCUMENTS" tools:node="remove" /> |
|||
<uses-permission android:name="android.permission.READ_CONTACTS" tools:node="remove" /> |
|||
<uses-permission android:name="android.permission.WRITE_CONTACTS" tools:node="remove" /> |
|||
<uses-permission android:name="android.permission.READ_CALENDAR" tools:node="remove" /> |
|||
<uses-permission android:name="android.permission.WRITE_CALENDAR" tools:node="remove" /> |
|||
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" tools:node="remove" /> |
|||
<uses-permission android:name="android.permission.READ_INTERNAL_STORAGE" tools:node="remove" /> |
|||
<uses-permission android:name="android.permission.READ_PHONE_STATE" tools:node="remove" /> |
|||
<uses-permission android:name="android.permission.RECORD_AUDIO" tools:node="remove" /> |
|||
<uses-permission android:name="android.permission.USE_FINGERPRINT" tools:node="remove" /> |
|||
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" tools:node="remove" /> |
|||
<uses-permission android:name="android.permission.READ_SMS" tools:node="remove" /> |
|||
<uses-permission android:name="com.anddoes.launcher.permission.UPDATE_COUNT" tools:node="remove" /> |
|||
<uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT" tools:node="remove" /> |
|||
<uses-permission android:name="com.google.android.gms.permission.ACTIVITY_RECOGNITION" tools:node="remove" /> |
|||
<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" tools:node="remove" /> |
|||
<uses-permission android:name="com.htc.launcher.permission.READ_SETTINGS" tools:node="remove" /> |
|||
<uses-permission android:name="com.htc.launcher.permission.UPDATE_SHORTCUT" tools:node="remove" /> |
|||
<uses-permission android:name="com.majeur.launcher.permission.UPDATE_BADGE" tools:node="remove" /> |
|||
<uses-permission android:name="com.sec.android.provider.badge.permission.READ" tools:node="remove" /> |
|||
<uses-permission android:name="com.sec.android.provider.badge.permission.WRITE" tools:node="remove" /> |
|||
<uses-permission android:name="com.sonyericsson.home.permission.BROADCAST_BADGE" tools:node="remove" /> |
|||
|
|||
|
|||
<!-- ADD TEST PERMISSIONS HERE --> |
|||
|
|||
<uses-feature android:glEsVersion="0x00020000" android:required="false" /> |
|||
<uses-feature android:name="android.software.leanback" android:required="false" /> |
|||
<uses-feature android:name="android.hardware.touchscreen" android:required="false" /> |
|||
|
|||
<application |
|||
android:name=".MainApplication" |
|||
android:allowBackup="true" |
|||
android:icon="@mipmap/ic_launcher" |
|||
android:label="@string/app_name" |
|||
android:largeHeap="true" |
|||
android:usesCleartextTraffic="true"> |
|||
|
|||
<activity |
|||
android:name=".LauncherActivity" |
|||
android:exported="true" |
|||
android:launchMode="singleTask" |
|||
android:theme="@android:style/Theme.Translucent.NoTitleBar"> |
|||
</activity> |
|||
|
|||
<activity |
|||
android:name=".experience.ExperienceActivity" |
|||
android:configChanges="keyboard|keyboardHidden|orientation|screenSize" |
|||
android:theme="@style/Theme.Exponent.Light" |
|||
android:windowSoftInputMode="adjustResize"> |
|||
</activity> |
|||
|
|||
<activity |
|||
android:name=".MainActivity" |
|||
android:launchMode="singleTask" |
|||
android:configChanges="keyboard|keyboardHidden|orientation|screenSize" |
|||
android:theme="@style/Theme.Exponent.Splash" |
|||
android:windowSoftInputMode="adjustResize"> |
|||
<intent-filter> |
|||
<data android:scheme="expc1313981c09d48258582690c225378d8"/> |
|||
|
|||
<action android:name="android.intent.action.VIEW"/> |
|||
|
|||
<category android:name="android.intent.category.DEFAULT"/> |
|||
<category android:name="android.intent.category.BROWSABLE"/> |
|||
</intent-filter> |
|||
<intent-filter> |
|||
<action android:name="android.intent.action.MAIN"/> |
|||
|
|||
<category android:name="android.intent.category.LAUNCHER"/> |
|||
</intent-filter> |
|||
<!-- ADD DETACH APP SPECIFIC INTENT FILTERS --> |
|||
</activity> |
|||
|
|||
<activity |
|||
android:name=".experience.HomeActivity" |
|||
android:label="@string/app_name" |
|||
android:launchMode="singleTask" |
|||
android:screenOrientation="portrait" |
|||
android:theme="@style/Theme.Exponent.Light"> |
|||
</activity> |
|||
|
|||
<activity |
|||
android:name=".experience.TvActivity" |
|||
android:label="@string/app_name" |
|||
android:theme="@style/Theme.Exponent.Light" |
|||
android:screenOrientation="landscape"> |
|||
<intent-filter> |
|||
<action android:name="android.intent.action.MAIN" /> |
|||
<category android:name="android.intent.category.LEANBACK_LAUNCHER" /> |
|||
</intent-filter> |
|||
</activity> |
|||
|
|||
|
|||
|
|||
<activity android:name="com.facebook.react.devsupport.DevSettingsActivity"/> |
|||
<!-- WHEN_PREPARING_SHELL_REMOVE_FROM_HERE --> |
|||
<!-- ADD DEV SETTINGS HERE --> |
|||
<!-- BEGIN_SDK_35 --> |
|||
<activity android:name="abi35_0_0.com.facebook.react.devsupport.DevSettingsActivity"/> |
|||
<!-- END_SDK_35 --> |
|||
<!-- BEGIN_SDK_34 --> |
|||
<activity android:name="abi34_0_0.com.facebook.react.devsupport.DevSettingsActivity"/> |
|||
<!-- END_SDK_34 --> |
|||
<!-- BEGIN_SDK_33 --> |
|||
<activity android:name="abi33_0_0.com.facebook.react.devsupport.DevSettingsActivity"/> |
|||
<!-- END_SDK_33 --> |
|||
<!-- WHEN_PREPARING_SHELL_REMOVE_TO_HERE --> |
|||
|
|||
<activity |
|||
android:name=".ExponentDevActivity" |
|||
android:exported="true" |
|||
android:label="@string/dev_activity_name" |
|||
android:screenOrientation="portrait" |
|||
android:theme="@style/Theme.Exponent.Dark" |
|||
android:windowSoftInputMode="adjustPan"> |
|||
</activity> |
|||
|
|||
<activity |
|||
android:name=".oauth.OAuthWebViewActivity" |
|||
android:screenOrientation="portrait" |
|||
android:theme="@style/Theme.Exponent.Light"> |
|||
</activity> |
|||
|
|||
<activity |
|||
android:name="net.openid.appauth.RedirectUriReceiverActivity" |
|||
tools:node="replace"> |
|||
<intent-filter> |
|||
<action android:name="android.intent.action.VIEW"/> |
|||
<category android:name="android.intent.category.DEFAULT"/> |
|||
<category android:name="android.intent.category.BROWSABLE"/> |
|||
<data android:scheme="com.dslak.vdsquiz" android:path="oauthredirect"/> |
|||
</intent-filter> |
|||
</activity> |
|||
|
|||
<activity |
|||
android:name=".oauth.OAuthResultActivity"> |
|||
</activity> |
|||
|
|||
<!-- START OF STRIPE SCHEMES --> |
|||
<activity |
|||
android:exported="true" |
|||
android:launchMode="singleTask" |
|||
android:name="expo.modules.payments.stripe.RedirectUriReceiver" |
|||
android:theme="@android:style/Theme.Translucent.NoTitleBar.Fullscreen"> |
|||
<intent-filter> |
|||
<action android:name="android.intent.action.VIEW" /> |
|||
<category android:name="android.intent.category.DEFAULT" /> |
|||
<category android:name="android.intent.category.BROWSABLE" /> |
|||
<data android:scheme="expo.modules.payments.stripe.85c6cb4a-a530-402e-a683-229b365707be" /> |
|||
</intent-filter> |
|||
</activity> |
|||
<!-- Versioned Activity for Stripe --> |
|||
<!-- BEGIN_SDK_abi35_0_0 --> |
|||
<activity |
|||
android:exported="true" |
|||
android:launchMode="singleTask" |
|||
android:name="abiabi35_0_0.expo.modules.payments.stripe.RedirectUriReceiver" |
|||
android:theme="@android:style/Theme.Translucent.NoTitleBar.Fullscreen"> |
|||
<intent-filter> |
|||
<action android:name="android.intent.action.VIEW" /> |
|||
<category android:name="android.intent.category.DEFAULT" /> |
|||
<category android:name="android.intent.category.BROWSABLE" /> |
|||
<data android:scheme="abiabi35_0_0.expo.modules.payments.stripe" /> |
|||
</intent-filter> |
|||
</activity> |
|||
<!-- END_SDK_abi35_0_0 --> |
|||
<!-- BEGIN_SDK_34 --> |
|||
<activity |
|||
android:exported="true" |
|||
android:launchMode="singleTask" |
|||
android:name="abi34_0_0.expo.modules.payments.stripe.RedirectUriReceiver" |
|||
android:theme="@android:style/Theme.Translucent.NoTitleBar.Fullscreen"> |
|||
<intent-filter> |
|||
<action android:name="android.intent.action.VIEW" /> |
|||
<category android:name="android.intent.category.DEFAULT" /> |
|||
<category android:name="android.intent.category.BROWSABLE" /> |
|||
<data android:scheme="abi34_0_0.expo.modules.payments.stripe" /> |
|||
</intent-filter> |
|||
</activity> |
|||
<!-- END_SDK_34 --> |
|||
<!-- BEGIN_SDK_33 --> |
|||
<activity |
|||
android:exported="true" |
|||
android:launchMode="singleTask" |
|||
android:name="abi33_0_0.expo.modules.payments.stripe.RedirectUriReceiver" |
|||
android:theme="@android:style/Theme.Translucent.NoTitleBar.Fullscreen"> |
|||
<intent-filter> |
|||
<action android:name="android.intent.action.VIEW" /> |
|||
<category android:name="android.intent.category.DEFAULT" /> |
|||
<category android:name="android.intent.category.BROWSABLE" /> |
|||
<data android:scheme="abi33_0_0.expo.modules.payments.stripe" /> |
|||
</intent-filter> |
|||
</activity> |
|||
<!-- END_SDK_33 --> |
|||
<!-- END OF STRIPE SCHEMES --> |
|||
|
|||
<activity |
|||
android:name=".chrometabs.ChromeTabsManagerActivity"> |
|||
</activity> |
|||
|
|||
<activity |
|||
android:name=".experience.ErrorActivity" |
|||
android:theme="@style/Theme.Exponent.Dark" |
|||
android:screenOrientation="portrait"> |
|||
</activity> |
|||
|
|||
<activity |
|||
android:name=".experience.InfoActivity" |
|||
android:screenOrientation="portrait" |
|||
android:theme="@style/Theme.Exponent.Light"> |
|||
</activity> |
|||
|
|||
<activity |
|||
android:name="com.facebook.FacebookActivity" |
|||
android:configChanges="keyboard|keyboardHidden|screenLayout|screenSize|orientation" |
|||
android:label="@string/app_name" |
|||
android:theme="@android:style/Theme.Translucent.NoTitleBar" |
|||
tools:replace="android:theme" /> |
|||
|
|||
<activity |
|||
android:name="com.facebook.ads.InterstitialAdActivity" |
|||
android:configChanges="keyboard|keyboardHidden|screenLayout|screenSize|orientation" |
|||
android:label="@string/app_name" |
|||
android:theme="@android:style/Theme.Translucent.NoTitleBar" /> |
|||
|
|||
<service |
|||
android:name=".ExponentIntentService" |
|||
android:exported="false" /> |
|||
|
|||
<!-- Analytics --> |
|||
<receiver |
|||
android:name="host.exp.exponent.referrer.InstallReferrerReceiver" |
|||
android:exported="true"> |
|||
<intent-filter> |
|||
<action android:name="com.android.vending.INSTALL_REFERRER" /> |
|||
</intent-filter> |
|||
</receiver> |
|||
|
|||
<!-- |
|||
This crashes: https://code.google.com/p/analytics-issues/issues/detail?id=667 |
|||
TODO: turn it back on when it's fixed |
|||
<service |
|||
android:name="com.google.android.gms.analytics.CampaignTrackingService" |
|||
android:enabled="true" |
|||
android:exported="false" />--> |
|||
|
|||
<receiver android:name="com.google.android.gms.analytics.AnalyticsReceiver" |
|||
android:enabled="true"> |
|||
<intent-filter> |
|||
<action android:name="com.google.android.gms.analytics.ANALYTICS_DISPATCH" /> |
|||
</intent-filter> |
|||
</receiver> |
|||
|
|||
<service android:name="com.google.android.gms.analytics.AnalyticsService" |
|||
android:enabled="true" |
|||
android:exported="false"/> |
|||
|
|||
<!-- GCM --> |
|||
<receiver |
|||
android:name="com.google.android.gms.gcm.GcmReceiver" |
|||
android:exported="true" |
|||
android:permission="com.google.android.c2dm.permission.SEND"> |
|||
<intent-filter> |
|||
<action android:name="com.google.android.c2dm.intent.RECEIVE"/> |
|||
<action android:name="com.google.android.c2dm.intent.REGISTRATION"/> |
|||
|
|||
<category android:name="com.dslak.vdsquiz"/> |
|||
</intent-filter> |
|||
</receiver> |
|||
|
|||
<service |
|||
android:name=".gcm.ExponentGcmListenerService" |
|||
android:exported="false"> |
|||
<intent-filter> |
|||
<action android:name="com.google.android.c2dm.intent.RECEIVE"/> |
|||
</intent-filter> |
|||
</service> |
|||
<service |
|||
android:name=".gcm.ExponentInstanceIDListenerService" |
|||
android:exported="false"> |
|||
<intent-filter> |
|||
<action android:name="com.google.android.gms.iid.InstanceID"/> |
|||
</intent-filter> |
|||
</service> |
|||
<service |
|||
android:name=".gcm.GcmRegistrationIntentService" |
|||
android:exported="false"> |
|||
</service> |
|||
|
|||
<!-- FCM --> |
|||
<service |
|||
android:name=".fcm.ExpoFcmMessagingService"> |
|||
<intent-filter> |
|||
<action android:name="com.google.firebase.MESSAGING_EVENT"/> |
|||
</intent-filter> |
|||
</service> |
|||
<meta-data |
|||
android:name="com.google.firebase.messaging.default_notification_icon" |
|||
android:resource="@drawable/shell_notification_icon" /> |
|||
<meta-data |
|||
android:name="com.google.firebase.messaging.default_notification_color" |
|||
android:resource="@color/colorAccent" /> |
|||
<service |
|||
android:name=".fcm.FcmRegistrationIntentService" |
|||
android:exported="false"> |
|||
</service> |
|||
|
|||
<!-- ImagePicker native module --> |
|||
<activity |
|||
android:name="com.theartofdev.edmodo.cropper.CropImageActivity" |
|||
android:theme="@style/Base.Theme.AppCompat"> |
|||
</activity> |
|||
|
|||
|
|||
<!-- ADD FABRIC CONFIG HERE --> |
|||
<!-- BEGIN FABRIC CONFIG --> |
|||
<meta-data |
|||
android:name="io.fabric.ApiKey" |
|||
android:value="a25fafe9f9edee11a9882b32e0cd7a26df6e2c42"/> |
|||
<!-- END FABRIC CONFIG --> |
|||
|
|||
<!-- ADD GOOGLE MAPS CONFIG HERE --> |
|||
<!-- BEGIN GOOGLE MAPS CONFIG --> |
|||
<meta-data |
|||
android:name="com.google.android.geo.API_KEY" |
|||
android:value="AIzaSyDh7eDB9snEFSYtf-k0gfxA45HFoR0L--I"/> |
|||
<!-- END GOOGLE MAPS CONFIG --> |
|||
|
|||
<!-- ADD GOOGLE MOBILE ADS CONFIG HERE --> |
|||
<!-- BEGIN GOOGLE MOBILE ADS CONFIG --> |
|||
<meta-data |
|||
android:name="com.google.android.gms.ads.APPLICATION_ID" |
|||
android:value="ca-app-pub-3940256099942544~3347511713"/> |
|||
<!-- END GOOGLE MOBILE ADS CONFIG --> |
|||
|
|||
<!-- ADD BRANCH CONFIG HERE --> |
|||
|
|||
<!-- The Facebook SDK runs FacebookInitProvider on startup and crashes if there isn't an ID here --> |
|||
<meta-data android:name="com.facebook.sdk.ApplicationId" android:value="fb0"/> |
|||
|
|||
<meta-data android:name="standaloneStripeScheme" android:value="85c6cb4a-a530-402e-a683-229b365707be" /> |
|||
</application> |
|||
|
|||
</manifest> |
@ -1 +0,0 @@ |
|||
{"android":{"package":"host.exp.exponent","publishBundlePath":"../android/app/src/main/assets/kernel.android.bundle"},"dependencies":["@expo/react-native-action-sheet","@expo/react-native-touchable-native-feedback-safe","@react-navigation/web","apollo-boost","apollo-cache-inmemory","dedent","es6-error","expo","expo-analytics-amplitude","expo-asset","expo-barcode-scanner","expo-blur","expo-camera","expo-constants","expo-font","expo-linear-gradient","expo-location","expo-permissions","expo-task-manager","expo-web-browser","graphql","graphql-tag","immutable","lodash","prop-types","querystring","react","react-apollo","react-native","react-native-appearance","react-native-fade-in-image","react-native-gesture-handler","react-native-infinite-scroll-view","react-native-maps","react-navigation","react-navigation-material-bottom-tabs","react-navigation-stack","react-navigation-tabs","react-redux","redux","redux-thunk","semver","sha1","url"],"description":"","extra":{"amplitudeApiKey":"081e5ec53f869b440b225d5e40ec73f9"},"icon":"https://s3.amazonaws.com/exp-brand-assets/ExponentEmptyManifest_192.png","iconUrl":"https://s3.amazonaws.com/exp-brand-assets/ExponentEmptyManifest_192.png","ios":{"bundleIdentifier":"host.exp.exponent","publishBundlePath":"../ios/Exponent/Supporting/kernel.ios.bundle","supportsTablet":true},"isKernel":true,"kernel":{"androidManifestPath":"../android/app/src/main/assets/kernel-manifest.json","iosManifestPath":"../ios/Exponent/Supporting/kernel-manifest.json"},"locales":{},"name":"expo-home","orientation":"portrait","packagerOpts":{"config":"metro.config.js"},"platforms":["ios","android"],"primaryColor":"#cccccc","privacy":"unlisted","scheme":"exp","sdkVersion":"UNVERSIONED","slug":"home","updates":{"checkAutomatically":"ON_LOAD","fallbackToCacheTimeout":0},"version":"35.0.0","id":"@exponent/home","revisionId":"35.0.0-r.j5K6M6VmKq","publishedTime":"2019-09-16T21:21:42.975Z","commitTime":"2019-09-16T21:21:43.016Z","bundleUrl":"https://exp.host/@exponent/home/bundle","releaseChannel":"default","hostUri":"exp.host/@exponent/home"} |
@ -1,46 +0,0 @@ |
|||
package host.exp.exponent; |
|||
|
|||
import android.os.Bundle; |
|||
|
|||
import com.facebook.react.ReactPackage; |
|||
|
|||
import org.unimodules.core.interfaces.Package; |
|||
|
|||
import java.util.List; |
|||
|
|||
import host.exp.exponent.experience.DetachActivity; |
|||
import host.exp.exponent.generated.DetachBuildConstants; |
|||
|
|||
public class MainActivity extends DetachActivity { |
|||
|
|||
@Override |
|||
public String publishedUrl() { |
|||
return "exp://exp.host/@dslaky/VDS-Quiz"; |
|||
} |
|||
|
|||
@Override |
|||
public String developmentUrl() { |
|||
return DetachBuildConstants.DEVELOPMENT_URL; |
|||
} |
|||
|
|||
@Override |
|||
public List<ReactPackage> reactPackages() { |
|||
return ((MainApplication) getApplication()).getPackages(); |
|||
} |
|||
|
|||
@Override |
|||
public List<Package> expoPackages() { |
|||
return ((MainApplication) getApplication()).getExpoPackages(); |
|||
} |
|||
|
|||
@Override |
|||
public boolean isDebug() { |
|||
return BuildConfig.DEBUG; |
|||
} |
|||
|
|||
@Override |
|||
public Bundle initialProps(Bundle expBundle) { |
|||
// Add extra initialProps here
|
|||
return expBundle; |
|||
} |
|||
} |
@ -1,48 +0,0 @@ |
|||
package host.exp.exponent; |
|||
|
|||
import com.facebook.react.ReactPackage; |
|||
|
|||
import org.unimodules.core.interfaces.Package; |
|||
|
|||
import java.util.Arrays; |
|||
import java.util.List; |
|||
|
|||
import expo.loaders.provider.interfaces.AppLoaderPackagesProviderInterface; |
|||
import host.exp.exponent.generated.BasePackageList; |
|||
import okhttp3.OkHttpClient; |
|||
|
|||
// Needed for `react-native link`
|
|||
// import com.facebook.react.ReactApplication;
|
|||
|
|||
public class MainApplication extends ExpoApplication implements AppLoaderPackagesProviderInterface<ReactPackage> { |
|||
|
|||
@Override |
|||
public boolean isDebug() { |
|||
return BuildConfig.DEBUG; |
|||
} |
|||
|
|||
// Needed for `react-native link`
|
|||
public List<ReactPackage> getPackages() { |
|||
return Arrays.<ReactPackage>asList( |
|||
// Add your own packages here!
|
|||
// TODO: add native modules!
|
|||
|
|||
// Needed for `react-native link`
|
|||
// new MainReactPackage()
|
|||
); |
|||
} |
|||
|
|||
public List<Package> getExpoPackages() { |
|||
return new BasePackageList().getPackageList(); |
|||
} |
|||
|
|||
@Override |
|||
public String gcmSenderId() { |
|||
return getString(R.string.gcm_defaultSenderId); |
|||
} |
|||
|
|||
public static OkHttpClient.Builder okHttpClientBuilder(OkHttpClient.Builder builder) { |
|||
// Customize/override OkHttp client here
|
|||
return builder; |
|||
} |
|||
} |
@ -1,46 +0,0 @@ |
|||
package host.exp.exponent.generated; |
|||
|
|||
import com.facebook.common.internal.DoNotStrip; |
|||
|
|||
import java.util.ArrayList; |
|||
import java.util.List; |
|||
|
|||
import host.exp.exponent.BuildConfig; |
|||
import host.exp.exponent.Constants; |
|||
|
|||
@DoNotStrip |
|||
public class AppConstants { |
|||
|
|||
public static final String VERSION_NAME = "1.0.0"; |
|||
public static String INITIAL_URL = "exp://exp.host/@dslaky/VDS-Quiz"; |
|||
public static final String SHELL_APP_SCHEME = "expc1313981c09d48258582690c225378d8"; |
|||
public static final String RELEASE_CHANNEL = "default"; |
|||
public static boolean SHOW_LOADING_VIEW_IN_SHELL_APP = true; |
|||
public static boolean ARE_REMOTE_UPDATES_ENABLED = true; |
|||
public static final List<Constants.EmbeddedResponse> EMBEDDED_RESPONSES; |
|||
public static boolean FCM_ENABLED = false; |
|||
|
|||
static { |
|||
List<Constants.EmbeddedResponse> embeddedResponses = new ArrayList<>(); |
|||
|
|||
// ADD EMBEDDED RESPONSES HERE
|
|||
// START EMBEDDED RESPONSES
|
|||
// END EMBEDDED RESPONSES
|
|||
EMBEDDED_RESPONSES = embeddedResponses; |
|||
} |
|||
|
|||
// Called from expoview/Constants
|
|||
public static Constants.ExpoViewAppConstants get() { |
|||
Constants.ExpoViewAppConstants constants = new Constants.ExpoViewAppConstants(); |
|||
constants.VERSION_NAME = VERSION_NAME; |
|||
constants.INITIAL_URL = INITIAL_URL; |
|||
constants.SHELL_APP_SCHEME = SHELL_APP_SCHEME; |
|||
constants.RELEASE_CHANNEL = RELEASE_CHANNEL; |
|||
constants.SHOW_LOADING_VIEW_IN_SHELL_APP = SHOW_LOADING_VIEW_IN_SHELL_APP; |
|||
constants.ARE_REMOTE_UPDATES_ENABLED = ARE_REMOTE_UPDATES_ENABLED; |
|||
constants.EMBEDDED_RESPONSES = EMBEDDED_RESPONSES; |
|||
constants.ANDROID_VERSION_CODE = BuildConfig.VERSION_CODE; |
|||
constants.FCM_ENABLED = FCM_ENABLED; |
|||
return constants; |
|||
} |
|||
} |
@ -1,8 +0,0 @@ |
|||
package host.exp.exponent.generated; |
|||
|
|||
// This file is auto-generated. Please don't rename!
|
|||
public class DetachBuildConstants { |
|||
|
|||
public static final String DEVELOPMENT_URL = ""; |
|||
|
|||
} |
Before Width: | Height: | Size: 367 B |
Before Width: | Height: | Size: 403 B |
Before Width: | Height: | Size: 1.8 KiB |
Before Width: | Height: | Size: 693 B |
Before Width: | Height: | Size: 711 B |
Before Width: | Height: | Size: 287 B |
Before Width: | Height: | Size: 320 B |
Before Width: | Height: | Size: 1.5 KiB |
Before Width: | Height: | Size: 531 B |
Before Width: | Height: | Size: 506 B |
Before Width: | Height: | Size: 410 B |
Before Width: | Height: | Size: 423 B |
Before Width: | Height: | Size: 2.1 KiB |
Before Width: | Height: | Size: 875 B |
Before Width: | Height: | Size: 857 B |
Before Width: | Height: | Size: 563 B |
Before Width: | Height: | Size: 625 B |
Before Width: | Height: | Size: 2.8 KiB |
Before Width: | Height: | Size: 1.3 KiB |
Before Width: | Height: | Size: 1.2 KiB |
Before Width: | Height: | Size: 22 KiB |
Before Width: | Height: | Size: 22 KiB |
Before Width: | Height: | Size: 20 KiB |
Before Width: | Height: | Size: 15 KiB |
Before Width: | Height: | Size: 720 B |
Before Width: | Height: | Size: 798 B |
Before Width: | Height: | Size: 3.3 KiB |
Before Width: | Height: | Size: 1.7 KiB |
Before Width: | Height: | Size: 1.6 KiB |
Before Width: | Height: | Size: 2.4 KiB |
Before Width: | Height: | Size: 1.9 KiB |
Before Width: | Height: | Size: 2.7 KiB |
Before Width: | Height: | Size: 208 KiB |
Before Width: | Height: | Size: 2.4 KiB |
@ -1,8 +0,0 @@ |
|||
<?xml version="1.0" encoding="utf-8"?> |
|||
<layer-list xmlns:android="http://schemas.android.com/apk/res/android"> |
|||
|
|||
<item android:drawable="@color/splashBackground"/> |
|||
|
|||
|
|||
|
|||
</layer-list> |
@ -1,9 +0,0 @@ |
|||
<?xml version="1.0" encoding="utf-8"?> |
|||
<android.support.v4.view.ViewPager |
|||
xmlns:android="http://schemas.android.com/apk/res/android" |
|||
xmlns:app="http://schemas.android.com/apk/res-auto" |
|||
android:id="@+id/error_viewPager" |
|||
android:layout_width="match_parent" |
|||
android:layout_height="match_parent" |
|||
android:fitsSystemWindows="true" |
|||
/> |
@ -1,56 +0,0 @@ |
|||
<?xml version="1.0" encoding="utf-8"?> |
|||
<LinearLayout |
|||
xmlns:android="http://schemas.android.com/apk/res/android" |
|||
xmlns:tools="http://schemas.android.com/tools" |
|||
android:layout_width="match_parent" |
|||
android:layout_height="wrap_content" |
|||
android:layout_gravity="top" |
|||
android:gravity="top" |
|||
android:orientation="vertical" |
|||
tools:context="host.exp.exponent.experience.ErrorActivity"> |
|||
|
|||
<LinearLayout |
|||
android:layout_width="match_parent" |
|||
android:layout_height="wrap_content" |
|||
android:layout_below="@+id/console_editText" |
|||
android:layout_centerHorizontal="true" |
|||
android:layout_marginLeft="40dp" |
|||
android:layout_marginRight="40dp" |
|||
android:layout_marginTop="10dp" |
|||
android:layout_marginBottom="10dp" |
|||
android:weightSum="2" |
|||
android:gravity="center_horizontal" |
|||
android:orientation="horizontal"> |
|||
|
|||
<host.exp.exponent.views.ExponentImageButton |
|||
android:id="@+id/console_home_button" |
|||
android:layout_width="wrap_content" |
|||
android:layout_height="wrap_content" |
|||
android:layout_weight="1" |
|||
android:background="@android:color/transparent" |
|||
android:src="@drawable/ic_home_white_36dp" |
|||
android:textColor="@color/colorPrimaryDark" |
|||
android:textSize="15sp"/> |
|||
|
|||
<host.exp.exponent.views.ExponentImageButton |
|||
android:id="@+id/console_reload_button" |
|||
android:layout_width="wrap_content" |
|||
android:layout_height="wrap_content" |
|||
android:layout_weight="1" |
|||
android:background="@android:color/transparent" |
|||
android:src="@drawable/ic_refresh_white_36dp" |
|||
android:textColor="@color/colorPrimaryDark" |
|||
android:textSize="15sp"/> |
|||
</LinearLayout> |
|||
|
|||
<ListView |
|||
android:id="@+id/list_view" |
|||
android:layout_width="match_parent" |
|||
android:layout_height="match_parent" |
|||
android:paddingBottom="10dp" |
|||
android:paddingLeft="10dp" |
|||
android:paddingRight="10dp" |
|||
android:background="@color/white" /> |
|||
|
|||
|
|||
</LinearLayout> |
@ -1,31 +0,0 @@ |
|||
<?xml version="1.0" encoding="utf-8"?> |
|||
<LinearLayout |
|||
xmlns:android="http://schemas.android.com/apk/res/android" |
|||
android:layout_width="wrap_content" |
|||
android:layout_height="wrap_content" |
|||
android:layout_gravity="top" |
|||
android:paddingTop="10dp" |
|||
android:paddingBottom="10dp" |
|||
android:gravity="top" |
|||
android:orientation="vertical"> |
|||
|
|||
<TextView |
|||
android:id="@+id/error_console_item_message" |
|||
android:layout_width="wrap_content" |
|||
android:layout_height="wrap_content" |
|||
android:text="@string/error_header" |
|||
android:textColor="@color/errorMessage" |
|||
android:textSize="14sp"/> |
|||
|
|||
<TextView |
|||
android:id="@+id/error_console_item_stack_preview" |
|||
android:layout_width="wrap_content" |
|||
android:layout_height="wrap_content" |
|||
android:textSize="14sp"/> |
|||
|
|||
<TextView |
|||
android:id="@+id/error_console_item_timestamp" |
|||
android:layout_width="wrap_content" |
|||
android:layout_height="wrap_content" |
|||
android:textSize="12sp"/> |
|||
</LinearLayout> |
@ -1,96 +0,0 @@ |
|||
<?xml version="1.0" encoding="utf-8"?> |
|||
<RelativeLayout |
|||
xmlns:android="http://schemas.android.com/apk/res/android" |
|||
xmlns:tools="http://schemas.android.com/tools" |
|||
android:layout_width="match_parent" |
|||
android:layout_height="wrap_content" |
|||
android:orientation="vertical" |
|||
android:paddingBottom="@dimen/activity_vertical_margin" |
|||
android:paddingLeft="@dimen/activity_horizontal_margin" |
|||
android:paddingRight="@dimen/activity_horizontal_margin" |
|||
android:paddingTop="@dimen/activity_vertical_margin" |
|||
tools:context="host.exp.exponent.experience.ErrorActivity"> |
|||
|
|||
<LinearLayout |
|||
android:layout_width="match_parent" |
|||
android:layout_height="match_parent" |
|||
android:layout_gravity="center_vertical" |
|||
android:layout_above="@+id/view_error_log" |
|||
android:gravity="center" |
|||
android:orientation="vertical"> |
|||
|
|||
<TextView |
|||
android:id="@+id/error_header" |
|||
android:layout_width="wrap_content" |
|||
android:layout_height="wrap_content" |
|||
android:layout_centerHorizontal="true" |
|||
android:layout_marginTop="30dp" |
|||
android:text="@string/error_header" |
|||
android:textColor="@color/white" |
|||
android:textSize="24sp"/> |
|||
|
|||
<TextView |
|||
android:id="@+id/error_message" |
|||
android:layout_width="wrap_content" |
|||
android:layout_height="wrap_content" |
|||
android:layout_centerHorizontal="true" |
|||
android:layout_marginTop="20dp" |
|||
android:layout_marginLeft="40dp" |
|||
android:layout_marginRight="40dp" |
|||
android:gravity="center" |
|||
android:text="@string/error_default_client" |
|||
android:textColor="@color/white" |
|||
android:textSize="16sp"/> |
|||
|
|||
<LinearLayout |
|||
android:layout_width="match_parent" |
|||
android:layout_height="wrap_content" |
|||
android:layout_below="@+id/editText" |
|||
android:layout_centerHorizontal="true" |
|||
android:layout_marginTop="140dp" |
|||
android:layout_marginLeft="40dp" |
|||
android:layout_marginRight="40dp" |
|||
android:weightSum="2" |
|||
android:gravity="center_horizontal" |
|||
android:orientation="horizontal"> |
|||
|
|||
<host.exp.exponent.views.ExponentImageButton |
|||
android:id="@+id/home_button" |
|||
android:layout_width="wrap_content" |
|||
android:layout_height="wrap_content" |
|||
android:layout_weight="1" |
|||
android:background="@android:color/transparent" |
|||
android:src="@drawable/ic_home_white_36dp" |
|||
android:textColor="@color/colorPrimaryDark" |
|||
android:textSize="15sp"/> |
|||
|
|||
<host.exp.exponent.views.ExponentImageButton |
|||
android:id="@+id/reload_button" |
|||
android:layout_width="wrap_content" |
|||
android:layout_height="wrap_content" |
|||
android:layout_weight="1" |
|||
android:background="@android:color/transparent" |
|||
android:src="@drawable/ic_refresh_white_36dp" |
|||
android:textColor="@color/colorPrimaryDark" |
|||
android:textSize="15sp"/> |
|||
</LinearLayout> |
|||
</LinearLayout> |
|||
|
|||
<TextView |
|||
android:id="@id/view_error_log" |
|||
android:layout_width="wrap_content" |
|||
android:layout_height="wrap_content" |
|||
android:layout_centerHorizontal="true" |
|||
android:layout_alignParentBottom="true" |
|||
android:paddingBottom="20dp" |
|||
android:paddingLeft="20dp" |
|||
android:paddingRight="20dp" |
|||
android:paddingTop="20dp" |
|||
android:gravity="center" |
|||
android:clickable="true" |
|||
android:text="@string/view_error_log" |
|||
android:textColor="@color/errorLogButton" |
|||
android:textSize="13sp"/> |
|||
|
|||
|
|||
</RelativeLayout> |
@ -1,8 +0,0 @@ |
|||
<?xml version="1.0" encoding="utf-8"?> |
|||
<Button |
|||
style="@style/ExponentButton" |
|||
xmlns:android="http://schemas.android.com/apk/res/android" |
|||
android:orientation="vertical" |
|||
android:layout_width="match_parent" |
|||
android:layout_height="match_parent"> |
|||
</Button> |
@ -1,8 +0,0 @@ |
|||
<?xml version="1.0" encoding="utf-8"?> |
|||
<CheckBox |
|||
style="@style/ExponentCheckBox" |
|||
xmlns:android="http://schemas.android.com/apk/res/android" |
|||
android:layout_width="match_parent" |
|||
android:layout_height="match_parent"> |
|||
|
|||
</CheckBox> |
@ -1,31 +0,0 @@ |
|||
<?xml version="1.0" encoding="utf-8"?> |
|||
<ScrollView |
|||
xmlns:android="http://schemas.android.com/apk/res/android" |
|||
xmlns:tools="http://schemas.android.com/tools" |
|||
android:layout_width="wrap_content" |
|||
android:layout_height="wrap_content" |
|||
tools:context="host.exp.exponent.ExponentDevActivity"> |
|||
|
|||
<LinearLayout |
|||
android:id="@+id/linearLayout" |
|||
android:layout_width="match_parent" |
|||
android:layout_height="match_parent" |
|||
android:layout_below="@+id/textView" |
|||
android:layout_marginTop="30dp" |
|||
android:focusable="true" |
|||
android:orientation="vertical" |
|||
android:padding="20dp"> |
|||
|
|||
<TextView |
|||
android:id="@+id/textView" |
|||
android:layout_width="wrap_content" |
|||
android:layout_height="wrap_content" |
|||
android:layout_alignParentTop="true" |
|||
android:layout_centerHorizontal="true" |
|||
android:layout_marginBottom="20dp" |
|||
android:layout_marginTop="15dp" |
|||
android:text="Dev Menu" |
|||
android:textAppearance="?android:attr/textAppearanceLarge" |
|||
android:textColor="@color/colorText"/> |
|||
</LinearLayout> |
|||
</ScrollView> |
@ -1,67 +0,0 @@ |
|||
<?xml version="1.0" encoding="utf-8"?> |
|||
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" |
|||
android:layout_width="match_parent" |
|||
android:layout_height="match_parent" |
|||
android:background="@color/colorPrimary"> |
|||
|
|||
<ImageButton |
|||
android:id="@+id/home_image_button" |
|||
android:layout_width="42dp" |
|||
android:layout_height="42dp" |
|||
android:layout_alignParentStart="true" |
|||
android:layout_centerVertical="true" |
|||
android:layout_marginLeft="11dp" |
|||
android:layout_marginTop="11dp" |
|||
android:layout_marginBottom="11dp" |
|||
android:background="@android:color/transparent" |
|||
android:scaleType="fitCenter" |
|||
android:src="@mipmap/ic_launcher"/> |
|||
|
|||
<Button |
|||
android:id="@+id/home_text_button" |
|||
style="?android:attr/borderlessButtonStyle" |
|||
android:singleLine="true" |
|||
android:ellipsize="end" |
|||
android:gravity="left|center_vertical" |
|||
android:layout_width="wrap_content" |
|||
android:layout_height="wrap_content" |
|||
android:layout_centerVertical="true" |
|||
android:layout_marginLeft="10dp" |
|||
android:layout_toEndOf="@+id/home_image_button" |
|||
android:layout_marginRight="12dp" |
|||
android:background="@android:color/transparent" |
|||
android:text="Expo" |
|||
android:textAppearance="?android:attr/textAppearanceMedium" |
|||
android:textColor="@color/white"/> |
|||
|
|||
<ImageButton |
|||
android:id="@+id/reload_button" |
|||
android:layout_width="wrap_content" |
|||
android:layout_height="wrap_content" |
|||
android:layout_alignParentEnd="true" |
|||
android:layout_centerVertical="true" |
|||
android:layout_marginRight="12dp" |
|||
android:background="@android:color/transparent" |
|||
android:src="@drawable/ic_refresh_white_36dp"/> |
|||
|
|||
<ImageButton |
|||
android:id="@+id/share_button" |
|||
android:layout_width="wrap_content" |
|||
android:layout_height="wrap_content" |
|||
android:layout_centerVertical="true" |
|||
android:layout_marginRight="12dp" |
|||
android:layout_toLeftOf="@+id/reload_button" |
|||
android:background="@android:color/transparent" |
|||
android:src="@drawable/ic_share_white_36dp"/> |
|||
|
|||
<ImageButton |
|||
android:id="@+id/save_button" |
|||
android:layout_width="wrap_content" |
|||
android:layout_height="wrap_content" |
|||
android:layout_centerVertical="true" |
|||
android:layout_marginRight="12dp" |
|||
android:layout_toLeftOf="@+id/share_button" |
|||
android:background="@android:color/transparent" |
|||
android:src="@drawable/pin_white"/> |
|||
|
|||
</RelativeLayout> |
@ -1,47 +0,0 @@ |
|||
<?xml version="1.0" encoding="utf-8"?> |
|||
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" |
|||
android:layout_width="match_parent" |
|||
android:layout_height="match_parent" |
|||
android:background="@color/colorPrimary"> |
|||
|
|||
<ImageButton |
|||
android:id="@+id/home_image_button" |
|||
android:layout_width="42dp" |
|||
android:layout_height="42dp" |
|||
android:layout_alignParentStart="true" |
|||
android:layout_centerVertical="true" |
|||
android:layout_marginLeft="11dp" |
|||
android:background="@android:color/transparent" |
|||
android:scaleType="fitCenter" |
|||
android:src="@mipmap/ic_launcher"/> |
|||
|
|||
<Button |
|||
android:id="@+id/home_text_button" |
|||
style="?android:attr/borderlessButtonStyle" |
|||
android:singleLine="true" |
|||
android:ellipsize="end" |
|||
android:gravity="left|center_vertical" |
|||
android:layout_width="wrap_content" |
|||
android:layout_height="wrap_content" |
|||
android:layout_centerVertical="true" |
|||
android:layout_marginLeft="10dp" |
|||
android:layout_toEndOf="@+id/home_image_button" |
|||
android:layout_toLeftOf="@+id/reload_button" |
|||
android:layout_marginRight="12dp" |
|||
android:background="@android:color/transparent" |
|||
android:text="Exponent" |
|||
android:textAppearance="?android:attr/textAppearanceMedium" |
|||
android:textColor="@color/white"/> |
|||
|
|||
<ImageButton |
|||
android:id="@+id/reload_button" |
|||
android:layout_width="wrap_content" |
|||
android:layout_height="wrap_content" |
|||
android:layout_alignParentEnd="true" |
|||
android:layout_centerVertical="true" |
|||
android:layout_marginRight="12dp" |
|||
android:background="@android:color/transparent" |
|||
android:src="@drawable/ic_refresh_white_36dp"/> |
|||
|
|||
|
|||
</RelativeLayout> |
Before Width: | Height: | Size: 4.4 KiB |
Before Width: | Height: | Size: 27 KiB |
Before Width: | Height: | Size: 2.9 KiB |
Before Width: | Height: | Size: 27 KiB |
Before Width: | Height: | Size: 6.3 KiB |
Before Width: | Height: | Size: 27 KiB |
Before Width: | Height: | Size: 9.9 KiB |
Before Width: | Height: | Size: 27 KiB |
Before Width: | Height: | Size: 13 KiB |
Before Width: | Height: | Size: 27 KiB |
@ -1,6 +0,0 @@ |
|||
<resources> |
|||
<!-- Example customization of dimensions originally defined in res/values/dimens.xml |
|||
(such as screen margins) for screens with more than 820dp of available width. This |
|||
would include 7" and 10" devices in landscape (~960dp and ~1280dp respectively). --> |
|||
<dimen name="activity_horizontal_margin">64dp</dimen> |
|||
</resources> |
@ -1,14 +0,0 @@ |
|||
<?xml version="1.0" encoding="utf-8"?> |
|||
<resources> |
|||
<color name="colorPrimary">#1b73b4</color> |
|||
<color name="colorPrimaryDark">#011A2D</color> |
|||
<color name="colorAccentLight">#1b73b4</color> |
|||
<color name="colorAccentDark">#FFFFFF</color> |
|||
<color name="colorText">#FFFFFF</color> |
|||
<color name="white">#FFFFFF</color> |
|||
<color name="errorMessage">#FF0000</color> |
|||
<color name="errorLogButton">#66FFFFFF</color> |
|||
<color name="colorLight">#F6F6F7</color> |
|||
<color name="splashBackground">#8c0072</color> |
|||
<color name="iconBackground">#FFFFFF</color> |
|||
</resources> |
@ -1,6 +0,0 @@ |
|||
<resources> |
|||
<!-- Default screen margins, per the Android Design guidelines. --> |
|||
<dimen name="activity_horizontal_margin">16dp</dimen> |
|||
<dimen name="activity_vertical_margin">16dp</dimen> |
|||
<dimen name="fab_margin">16dp</dimen> |
|||
</resources> |
@ -1,14 +0,0 @@ |
|||
<resources> |
|||
<string name="app_name">VDS Quiz</string> |
|||
<string name="dev_activity_name">Exponent Dev</string> |
|||
<string name="preference_file_key">host.exp.exponent.SharedPreferences</string> |
|||
<string name="error_header">Something went wrong.</string> |
|||
<string name="error_default_client">Sorry about that. You can go back to Expo home or try to reload the project.</string> |
|||
<string name="error_default_shell">Sorry about that. Press the reload button to try again.</string> |
|||
<string name="error_unable_to_load_experience">Unable to load Experience.</string> |
|||
<string name="error_uncaught">Uncaught Error: %s</string> |
|||
<string name="view_error_log">View error log</string> |
|||
<string name="default_notification_channel_group">Default</string> |
|||
<string name="persistent_notification_channel_name">Experience notifications</string> |
|||
<string name="persistent_notification_channel_desc">Persistent notifications that provide debug info about open experiences</string> |
|||
</resources> |
@ -1,47 +0,0 @@ |
|||
<resources xmlns:tools="http://schemas.android.com/tools"> |
|||
|
|||
<style name="Theme.Exponent.Light" parent="Theme.AppCompat.Light.NoActionBar"> |
|||
<item name="android:windowTranslucentStatus" tools:targetApi="19">true</item> |
|||
<item name="colorPrimary">@color/colorPrimary</item> |
|||
<item name="colorPrimaryDark">@color/colorPrimaryDark</item> |
|||
<item name="colorAccent">@color/colorAccentLight</item> |
|||
<item name="android:windowBackground">@color/white</item> |
|||
</style> |
|||
|
|||
<style name="Theme.Exponent.Dark" parent="Theme.AppCompat.Light.NoActionBar"> |
|||
<item name="android:windowTranslucentStatus" tools:targetApi="19">true</item> |
|||
<item name="colorPrimary">@color/colorPrimary</item> |
|||
<item name="colorPrimaryDark">@color/colorPrimaryDark</item> |
|||
<item name="colorAccent">@color/colorAccentDark</item> |
|||
<item name="android:windowBackground">@color/colorPrimary</item> |
|||
</style> |
|||
|
|||
<style name="ExponentCheckBox"> |
|||
<item name="android:theme">@style/DevAppTheme</item> |
|||
</style> |
|||
|
|||
<style name="ExponentButton"> |
|||
<item name="android:theme">@style/DevAppTheme</item> |
|||
<item name="android:textColor"> |
|||
@color/colorPrimaryDark |
|||
</item> |
|||
</style> |
|||
|
|||
<style name="ExponentEditText" parent="@android:style/Widget.EditText"> |
|||
<item name="android:padding">0dp</item> |
|||
<item name="android:textColorHint">#c8c8c8</item> |
|||
<item name="android:textColor">#000000</item> |
|||
</style> |
|||
|
|||
<style name="DevAppTheme"> |
|||
<item name="android:colorAccent"> |
|||
@color/white |
|||
</item> |
|||
<item name="android:colorControlNormal"> |
|||
@color/white |
|||
</item> |
|||
<item name="android:colorControlHighlight"> |
|||
@color/white |
|||
</item> |
|||
</style> |
|||
</resources> |
@ -1,79 +0,0 @@ |
|||
// Top-level build file where you can add configuration options common to all sub-projects/modules. |
|||
|
|||
buildscript { |
|||
ext { |
|||
minSdkVersion = 21 |
|||
targetSdkVersion = 28 |
|||
compileSdkVersion = 28 |
|||
|
|||
buildToolsVersion = '28.0.0' |
|||
supportLibVersion = '28.0.0' |
|||
kotlinVersion = '1.3.21' |
|||
repositoryUrl = "file:${System.env.HOME}/.m2/repository/" |
|||
} |
|||
repositories { |
|||
google() |
|||
jcenter() |
|||
maven { url 'https://dl.bintray.com/android/android-tools/' } |
|||
} |
|||
dependencies { |
|||
classpath 'com.android.tools.build:gradle:3.3.2' |
|||
classpath 'com.google.gms:google-services:3.2.1' |
|||
classpath 'de.undercouch:gradle-download-task:2.0.0' |
|||
|
|||
// https://github.com/awslabs/aws-device-farm-gradle-plugin/releases |
|||
classpath 'com.amazonaws:aws-devicefarm-gradle-plugin:1.3' |
|||
|
|||
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlinVersion" |
|||
} |
|||
} |
|||
|
|||
allprojects { |
|||
repositories { |
|||
// For non-detach |
|||
maven { |
|||
url "$rootDir/maven" |
|||
} |
|||
// For old expoviews to work |
|||
maven { |
|||
url "$rootDir/versioned-abis/expoview-abi33_0_0/maven" |
|||
} |
|||
maven { |
|||
url "$rootDir/versioned-abis/expoview-abi34_0_0/maven" |
|||
} |
|||
maven { |
|||
url "$rootDir/versioned-abis/expoview-abi35_0_0/maven" |
|||
} |
|||
maven { |
|||
url "$rootDir/versioned-abis/maven" |
|||
} |
|||
// For detach |
|||
maven { |
|||
url "$rootDir/../node_modules/expokit/maven" |
|||
} |
|||
maven { |
|||
// We use a modified build of com.android.support.test:runner:1.0.1. Explanation in maven-test/README |
|||
url "$rootDir/maven-test" |
|||
} |
|||
google() |
|||
jcenter() |
|||
maven { |
|||
// Local Maven repo containing AARs with JSC built for Android |
|||
url "$rootDir/../node_modules/jsc-android/dist" |
|||
} |
|||
flatDir { |
|||
dirs 'libs' |
|||
// dirs project(':expoview').file('libs') |
|||
} |
|||
// https://github.com/google/ExoPlayer/issues/5225#issuecomment-445739013 |
|||
maven { url 'https://google.bintray.com/exoplayer' } |
|||
maven { url "https://jitpack.io" } |
|||
|
|||
// Want this last so that we never end up with a stale cache |
|||
mavenLocal() |
|||
} |
|||
} |
|||
|
|||
task clean(type: Delete) { |
|||
delete rootProject.buildDir |
|||
} |
@ -1,6 +0,0 @@ |
|||
android.useDeprecatedNdk=true |
|||
org.gradle.parallel=true |
|||
org.gradle.daemon=true |
|||
org.gradle.jvmargs=-Xmx9216M -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 |
|||
org.gradle.configureondemand=true |
|||
org.gradle.internal.repository.initial.backoff=1000 |
@ -1,6 +0,0 @@ |
|||
#Thu Nov 15 09:24:08 CET 2018 |
|||
distributionBase=GRADLE_USER_HOME |
|||
distributionPath=wrapper/dists |
|||
zipStoreBase=GRADLE_USER_HOME |
|||
zipStorePath=wrapper/dists |
|||
distributionUrl=https\://services.gradle.org/distributions/gradle-4.10.2-all.zip |
@ -1,160 +0,0 @@ |
|||
#!/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 |
|||
|
|||
# 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\"`/" >/dev/null |
|||
APP_HOME="`pwd -P`" |
|||
cd "$SAVED" >/dev/null |
|||
|
|||
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"` |
|||
JAVACMD=`cygpath --unix "$JAVACMD"` |
|||
|
|||
# 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 "$@" |
@ -1,9 +0,0 @@ |
|||
include ':app' |
|||
|
|||
|
|||
// Import gradle helpers for unimodules. |
|||
apply from: '../node_modules/react-native-unimodules/gradle.groovy' |
|||
|
|||
// Include unimodules. |
|||
includeUnimodulesProjects( |
|||
) |