Skip to content
This repository has been archived by the owner on Jun 20, 2023. It is now read-only.

Commit

Permalink
Merge pull request #347 from corona-warn-app/dev
Browse files Browse the repository at this point in the history
0.8.14
  • Loading branch information
htooisap authored Jun 10, 2020
2 parents 684dd5b + 06cf451 commit f4e0fbf
Show file tree
Hide file tree
Showing 51 changed files with 664 additions and 684 deletions.
30 changes: 21 additions & 9 deletions Corona-Warn-App/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -41,24 +41,36 @@ android {
buildConfigField "String", "VERIFICATION_CDN_URL", "\"$VERIFICATION_CDN_URL\""
buildConfigField "String", "EXPORT_SIGNATURE_ID", "\"de.rki.coronawarnapp-dev\""

//override URLs with local variables
Properties properties = new Properties()
//override URLs. Use local.properties if exist.
// If environment.properties also exist, override local.properties
def propertiesFile = project.rootProject.file('local.properties')
def environmentPropertiesFile = project.rootProject.file('environment.properties')

Properties overridingProperties

if (propertiesFile.exists()) {
properties.load(propertiesFile.newDataInputStream())
def secretFile = project.rootProject.file('secrets.properties')
if (secretFile.exists())
properties.load(secretFile.newDataInputStream())
overridingProperties = new Properties()
overridingProperties.load(propertiesFile.newDataInputStream())
}

if (environmentPropertiesFile.exists()) {
overridingProperties = new Properties()
overridingProperties.load(environmentPropertiesFile.newDataInputStream())
}else if (propertiesFile.exists()) {
overridingProperties = new Properties()
overridingProperties.load(propertiesFile.newDataInputStream())
}

def DOWNLOAD_CDN_URL = properties.getProperty('DOWNLOAD_CDN_URL')
if(overridingProperties){
def DOWNLOAD_CDN_URL = overridingProperties.getProperty('DOWNLOAD_CDN_URL')
if (DOWNLOAD_CDN_URL)
buildConfigField "String", "DOWNLOAD_CDN_URL", "\"$DOWNLOAD_CDN_URL\""

def SUBMISSION_CDN_URL = properties.getProperty('SUBMISSION_CDN_URL')
def SUBMISSION_CDN_URL = overridingProperties.getProperty('SUBMISSION_CDN_URL')
if (SUBMISSION_CDN_URL)
buildConfigField "String", "SUBMISSION_CDN_URL", "\"$SUBMISSION_CDN_URL\""

def VERIFICATION_CDN_URL = properties.getProperty('VERIFICATION_CDN_URL')
def VERIFICATION_CDN_URL = overridingProperties.getProperty('VERIFICATION_CDN_URL')
if (VERIFICATION_CDN_URL)
buildConfigField "String", "VERIFICATION_CDN_URL", "\"$VERIFICATION_CDN_URL\""
}
Expand Down
9 changes: 0 additions & 9 deletions Corona-Warn-App/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
Expand Up @@ -42,15 +42,6 @@
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>

<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="coronawarnapp" />
</intent-filter>
</activity>
<activity
android:name=".ui.main.MainActivity"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@ import android.webkit.URLUtil
import de.rki.coronawarnapp.BuildConfig
import de.rki.coronawarnapp.CoronaWarnApplication
import de.rki.coronawarnapp.exception.http.ServiceFactoryException
import de.rki.coronawarnapp.http.config.DynamicURLs
import de.rki.coronawarnapp.http.config.HTTPVariables
import de.rki.coronawarnapp.http.interceptor.OfflineCacheInterceptor
import de.rki.coronawarnapp.http.interceptor.RetryInterceptor
Expand Down Expand Up @@ -160,7 +159,7 @@ class ServiceFactory {
this.newBuilder().connectionSpecs(specs).build()

private val downloadCdnUrl
get() = getValidUrl(DynamicURLs.DOWNLOAD_CDN_URL)
get() = getValidUrl(BuildConfig.DOWNLOAD_CDN_URL)

fun distributionService(): DistributionService = distributionService
private val distributionService by lazy {
Expand All @@ -173,7 +172,7 @@ class ServiceFactory {
}

private val verificationCdnUrl
get() = getValidUrl(DynamicURLs.VERIFICATION_CDN_URL)
get() = getValidUrl(BuildConfig.VERIFICATION_CDN_URL)

fun verificationService(): VerificationService = verificationService
private val verificationService by lazy {
Expand All @@ -186,7 +185,7 @@ class ServiceFactory {
}

private val submissionCdnUrl
get() = getValidUrl(DynamicURLs.SUBMISSION_CDN_URL)
get() = getValidUrl(BuildConfig.SUBMISSION_CDN_URL)

fun submissionService(): SubmissionService = submissionService
private val submissionService by lazy {
Expand Down

This file was deleted.

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,12 +1,9 @@
package de.rki.coronawarnapp.ui

import android.content.Intent
import android.net.Uri
import android.os.Bundle
import android.widget.Toast
import androidx.appcompat.app.AppCompatActivity
import androidx.lifecycle.lifecycleScope
import de.rki.coronawarnapp.http.config.DynamicURLs
import de.rki.coronawarnapp.storage.LocalData
import de.rki.coronawarnapp.ui.main.MainActivity
import de.rki.coronawarnapp.ui.onboarding.OnboardingActivity
Expand All @@ -22,42 +19,13 @@ class LauncherActivity : AppCompatActivity() {

override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
retrieveCustomURLsFromSchema(intent.data)
updateChecker = UpdateChecker(this)

lifecycleScope.launch {
updateChecker.checkForUpdate()
}
}

/**
* Retrieves the custom server URLs for testing purposes.
* The schema to start the application: coronawarnapp://launch?SUBMISSION_CDN_URL=<custom_url>&DOWNLOAD_CDN_URL=<custom_url>&VERIFICATION_CDN_URL=<custom_url>
*
* @param intentData
*/
private fun retrieveCustomURLsFromSchema(intentData: Uri?) {
if (intentData != null) {
val downloadCDNUrlFromParameter = intentData.getQueryParameter("DOWNLOAD_CDN_URL")
if (!downloadCDNUrlFromParameter.isNullOrEmpty()) {
DynamicURLs.DOWNLOAD_CDN_URL = downloadCDNUrlFromParameter
}

val submissionCDNUrlFromParameter = intentData.getQueryParameter("SUBMISSION_CDN_URL")
if (!submissionCDNUrlFromParameter.isNullOrEmpty()) {
DynamicURLs.SUBMISSION_CDN_URL = submissionCDNUrlFromParameter
}

val verificationCDNUrlFromParameter =
intentData.getQueryParameter("VERIFICATION_CDN_URL")
if (!verificationCDNUrlFromParameter.isNullOrEmpty()) {
DynamicURLs.VERIFICATION_CDN_URL = verificationCDNUrlFromParameter
}
val toast = Toast.makeText(this, "You now using custom server URLs", Toast.LENGTH_LONG)
toast.show()
}
}

override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
super.onActivityResult(requestCode, resultCode, data)

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
package de.rki.coronawarnapp.ui

import androidx.navigation.NavController
import androidx.navigation.NavDirections

/**
* Extends NavController to prevent navigation error when the user clicks on two buttons at almost
* the exact time.
*
* @see [NavController]
*/
fun NavController.doNavigate(direction: NavDirections) {
currentDestination?.getAction(direction.actionId)
?.let { navigate(direction) }
}
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,13 @@ import android.view.View
import android.view.ViewGroup
import android.view.accessibility.AccessibilityEvent
import de.rki.coronawarnapp.databinding.FragmentInformationAboutBinding
import de.rki.coronawarnapp.ui.BaseFragment
import androidx.fragment.app.Fragment
import de.rki.coronawarnapp.ui.main.MainActivity

/**
* Basic Fragment which only displays static content.
*/
class InformationAboutFragment : BaseFragment() {
class InformationAboutFragment : Fragment() {
companion object {
private val TAG: String? = InformationAboutFragment::class.simpleName
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,14 +7,14 @@ import android.view.ViewGroup
import android.view.accessibility.AccessibilityEvent
import de.rki.coronawarnapp.R
import de.rki.coronawarnapp.databinding.FragmentInformationContactBinding
import de.rki.coronawarnapp.ui.BaseFragment
import androidx.fragment.app.Fragment
import de.rki.coronawarnapp.ui.main.MainActivity
import de.rki.coronawarnapp.util.CallHelper

/**
* Basic Fragment which only displays static content.
*/
class InformationContactFragment : BaseFragment() {
class InformationContactFragment : Fragment() {
companion object {
private val TAG: String? = InformationContactFragment::class.simpleName
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,16 +5,18 @@ import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.view.accessibility.AccessibilityEvent
import androidx.navigation.fragment.findNavController
import de.rki.coronawarnapp.R
import de.rki.coronawarnapp.databinding.FragmentInformationBinding
import de.rki.coronawarnapp.ui.BaseFragment
import androidx.fragment.app.Fragment
import de.rki.coronawarnapp.ui.doNavigate
import de.rki.coronawarnapp.ui.main.MainActivity
import de.rki.coronawarnapp.util.OpenUrlHelper

/**
* Basic Fragment which links to static and web content.
*/
class InformationFragment : BaseFragment() {
class InformationFragment : Fragment() {
companion object {
private val TAG: String? = InformationFragment::class.simpleName
}
Expand Down Expand Up @@ -53,35 +55,35 @@ class InformationFragment : BaseFragment() {

private fun setButtonOnClickListener() {
binding.informationAbout.mainRow.setOnClickListener {
doNavigate(
findNavController().doNavigate(
InformationFragmentDirections.actionInformationFragmentToInformationAboutFragment()
)
}
binding.informationPrivacy.mainRow.setOnClickListener {
doNavigate(
findNavController().doNavigate(
InformationFragmentDirections.actionInformationFragmentToInformationPrivacyFragment()
)
}
binding.informationTerms.mainRow.setOnClickListener {
doNavigate(
findNavController().doNavigate(
InformationFragmentDirections.actionInformationFragmentToInformationTermsFragment()
)
}
binding.informationContact.mainRow.setOnClickListener {
doNavigate(
findNavController().doNavigate(
InformationFragmentDirections.actionInformationFragmentToInformationContactFragment()
)
}
binding.informationHelp.mainRow.setOnClickListener {
OpenUrlHelper.navigate(this, requireContext().getString(R.string.main_about_link))
}
binding.informationLegal.mainRow.setOnClickListener {
doNavigate(
findNavController().doNavigate(
InformationFragmentDirections.actionInformationFragmentToInformationLegalFragment()
)
}
binding.informationTechnical.mainRow.setOnClickListener {
doNavigate(
findNavController().doNavigate(
InformationFragmentDirections.actionInformationFragmentToInformationTechnicalFragment()
)
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,13 @@ import android.view.View
import android.view.ViewGroup
import android.view.accessibility.AccessibilityEvent
import de.rki.coronawarnapp.databinding.FragmentInformationLegalBinding
import de.rki.coronawarnapp.ui.BaseFragment
import androidx.fragment.app.Fragment
import de.rki.coronawarnapp.ui.main.MainActivity

/**
* Basic Fragment which only displays static content.
*/
class InformationLegalFragment : BaseFragment() {
class InformationLegalFragment : Fragment() {
companion object {
private val TAG: String? = InformationLegalFragment::class.simpleName
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,13 @@ import android.view.View
import android.view.ViewGroup
import android.view.accessibility.AccessibilityEvent
import de.rki.coronawarnapp.databinding.FragmentInformationPrivacyBinding
import de.rki.coronawarnapp.ui.BaseFragment
import androidx.fragment.app.Fragment
import de.rki.coronawarnapp.ui.main.MainActivity

/**
* Basic Fragment which only displays static content.
*/
class InformationPrivacyFragment : BaseFragment() {
class InformationPrivacyFragment : Fragment() {
companion object {
private val TAG: String? = InformationPrivacyFragment::class.simpleName
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,13 @@ import android.view.View
import android.view.ViewGroup
import android.view.accessibility.AccessibilityEvent
import de.rki.coronawarnapp.databinding.FragmentInformationTechnicalBinding
import de.rki.coronawarnapp.ui.BaseFragment
import androidx.fragment.app.Fragment
import de.rki.coronawarnapp.ui.main.MainActivity

/**
* Basic Fragment which only displays static content.
*/
class InformationTechnicalFragment : BaseFragment() {
class InformationTechnicalFragment : Fragment() {
companion object {
private val TAG: String? = InformationTechnicalFragment::class.simpleName
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,13 @@ import android.view.View
import android.view.ViewGroup
import android.view.accessibility.AccessibilityEvent
import de.rki.coronawarnapp.databinding.FragmentInformationTermsBinding
import de.rki.coronawarnapp.ui.BaseFragment
import androidx.fragment.app.Fragment
import de.rki.coronawarnapp.ui.main.MainActivity

/**
* Basic Fragment which only displays static content.
*/
class InformationTermsFragment : BaseFragment() {
class InformationTermsFragment : Fragment() {
companion object {
private val TAG: String? = InformationTermsFragment::class.simpleName
}
Expand Down
Loading

0 comments on commit f4e0fbf

Please sign in to comment.