-
Notifications
You must be signed in to change notification settings - Fork 496
Improve Explanation for usage of location services (EXPOSUREAPP-2384) #1137
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hi, just minor request from UA: The '.' at the end of the sentence looks like it is part of the link (blue). Is there any chance you could change this? Thanks.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
UA reviewed
} | ||
|
||
private fun setUrl() { | ||
setUrl( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This crashes when the language is not set to german (i.e. English), because the default translations in strings.xml
are missing the replacement marker "FAQ", and the URL.
@harambasicluka ping
Process: de.rki.coronawarnapp.dev, PID: 8741
android.view.InflateException: Binary XML file line #88 in de.rki.coronawarnapp.dev:layout/fragment_settings_tracing: Binary XML file line #74 in de.rki.coronawarnapp.dev:layout/include_tracing_status_card_location: Error inflating class de.rki.coronawarnapp.ui.view.LocationTracingStatusCardBodyTextView
Caused by: android.view.InflateException: Binary XML file line #74 in de.rki.coronawarnapp.dev:layout/include_tracing_status_card_location: Error inflating class de.rki.coronawarnapp.ui.view.LocationTracingStatusCardBodyTextView
Caused by: java.lang.reflect.InvocationTargetException
at java.lang.reflect.Constructor.newInstance0(Native Method)
at java.lang.reflect.Constructor.newInstance(Constructor.java:343)
at android.view.LayoutInflater.createView(LayoutInflater.java:854)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:1006)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:961)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:1123)
at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:1084)
at android.view.LayoutInflater.parseInclude(LayoutInflater.java:1263)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:1119)
at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:1084)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:1126)
at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:1084)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:1126)
at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:1084)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:1126)
at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:1084)
at android.view.LayoutInflater.inflate(LayoutInflater.java:682)
at android.view.LayoutInflater.inflate(LayoutInflater.java:534)
at androidx.databinding.DataBindingUtil.inflate(DataBindingUtil.java:126)
at androidx.databinding.ViewDataBinding.inflateInternal(ViewDataBinding.java:1368)
at de.rki.coronawarnapp.databinding.FragmentSettingsTracingBinding.inflate(FragmentSettingsTracingBinding.java:149)
at de.rki.coronawarnapp.databinding.FragmentSettingsTracingBinding.inflate(FragmentSettingsTracingBinding.java:135)
at de.rki.coronawarnapp.ui.settings.SettingsTracingFragment.onCreateView(SettingsTracingFragment.kt:56)
at androidx.fragment.app.Fragment.performCreateView(Fragment.java:2698)
at androidx.fragment.app.FragmentStateManager.createView(FragmentStateManager.java:320)
at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1187)
at androidx.fragment.app.FragmentManager.addAddedFragments(FragmentManager.java:2224)
at androidx.fragment.app.FragmentManager.executeOpsTogether(FragmentManager.java:1997)
at androidx.fragment.app.FragmentManager.removeRedundantOperationsAndExecute(FragmentManager.java:1953)
at androidx.fragment.app.FragmentManager.execPendingActions(FragmentManager.java:1849)
at androidx.fragment.app.FragmentManager$4.run(FragmentManager.java:413)
at android.os.Handler.handleCallback(Handler.java:883)
at android.os.Handler.dispatchMessage(Handler.java:100)
at android.os.Looper.loop(Looper.java:214)
at android.app.ActivityThread.main(ActivityThread.java:7397)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:935)
Caused by: java.lang.IndexOutOfBoundsException: setSpan (-1 ... 2) starts before 0
at android.text.SpannableStringInternal.checkRange(SpannableStringInternal.java:496)
at android.text.SpannableStringInternal.setSpan(SpannableStringInternal.java:196)
at android.text.SpannableStringInternal.setSpan(SpannableStringInternal.java:183)
at android.text.SpannableString.setSpan(SpannableString.java:60)
at de.rki.coronawarnapp.util.ViewsKt.setUrl(Views.kt:41)
E/AndroidRuntime: at de.rki.coronawarnapp.ui.view.LocationTracingStatusCardBodyTextView.setUrl(LocationTracingStatusCardBodyTextView.kt:28)
at de.rki.coronawarnapp.ui.view.LocationTracingStatusCardBodyTextView.<init>(LocationTracingStatusCardBodyTextView.kt:16)
... 38 more
I/Process: Sending signal. PID: 8741 SIG: 9
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would recommend to return the string without the link if the replacement marker isn't part of the string. after the translation it should be part of it.
Kudos, SonarCloud Quality Gate passed! 0 Bugs |
Updated german location text and also enabled links for this text.
Steps to reproduce