Commit da8b2952 authored by Mygod's avatar Mygod

Add missing oss licenses

parent 571f52f3
...@@ -30,6 +30,7 @@ buildscript { ...@@ -30,6 +30,7 @@ buildscript {
dependencies { dependencies {
classpath 'com.android.tools.build:gradle:4.0.0-alpha09' classpath 'com.android.tools.build:gradle:4.0.0-alpha09'
classpath 'com.github.ben-manes:gradle-versions-plugin:0.27.0' classpath 'com.github.ben-manes:gradle-versions-plugin:0.27.0'
classpath 'com.google.android.gms:oss-licenses-plugin:0.9.5'
classpath 'com.google.gms:google-services:4.3.3' classpath 'com.google.gms:google-services:4.3.3'
classpath 'com.vanniktech:gradle-maven-publish-plugin:0.8.0' classpath 'com.vanniktech:gradle-maven-publish-plugin:0.8.0'
classpath 'io.fabric.tools:gradle:1.31.2' classpath 'io.fabric.tools:gradle:1.31.2'
......
...@@ -63,6 +63,7 @@ dependencies { ...@@ -63,6 +63,7 @@ dependencies {
api "androidx.work:work-runtime-ktx:$workVersion" api "androidx.work:work-runtime-ktx:$workVersion"
api "androidx.work:work-gcm:$workVersion" api "androidx.work:work-gcm:$workVersion"
api 'com.crashlytics.sdk.android:crashlytics:2.10.1' api 'com.crashlytics.sdk.android:crashlytics:2.10.1'
api 'com.google.android.gms:play-services-oss-licenses:17.0.0'
api 'com.google.code.gson:gson:2.8.6' api 'com.google.code.gson:gson:2.8.6'
api 'com.google.firebase:firebase-analytics:17.2.2' api 'com.google.firebase:firebase-analytics:17.2.2'
api 'com.google.firebase:firebase-config:19.1.0' api 'com.google.firebase:firebase-config:19.1.0'
......
...@@ -3,6 +3,8 @@ import java.util.regex.Matcher ...@@ -3,6 +3,8 @@ import java.util.regex.Matcher
import java.util.regex.Pattern import java.util.regex.Pattern
apply plugin: 'com.android.application' apply plugin: 'com.android.application'
apply plugin: 'com.google.android.gms.oss-licenses-plugin'
apply plugin: 'com.google.gms.google-services'
apply plugin: 'io.fabric' apply plugin: 'io.fabric'
apply plugin: 'kotlin-android' apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions' apply plugin: 'kotlin-android-extensions'
...@@ -79,8 +81,6 @@ repositories { ...@@ -79,8 +81,6 @@ repositories {
mavenCentral() mavenCentral()
} }
apply plugin: 'com.google.gms.google-services'
ext.abiCodes = ['armeabi-v7a': 1, 'arm64-v8a': 2, x86: 3, x86_64: 4] ext.abiCodes = ['armeabi-v7a': 1, 'arm64-v8a': 2, x86: 3, x86_64: 4]
if (getCurrentFlavor() == 'release') android.applicationVariants.all { variant -> if (getCurrentFlavor() == 'release') android.applicationVariants.all { variant ->
variant.outputs.each { output -> variant.outputs.each { output ->
......
...@@ -35,6 +35,7 @@ import androidx.core.text.HtmlCompat ...@@ -35,6 +35,7 @@ import androidx.core.text.HtmlCompat
import androidx.core.text.parseAsHtml import androidx.core.text.parseAsHtml
import com.github.shadowsocks.widget.ListHolderListener import com.github.shadowsocks.widget.ListHolderListener
import com.github.shadowsocks.widget.MainListListener import com.github.shadowsocks.widget.MainListListener
import com.google.android.gms.oss.licenses.OssLicensesMenuActivity
class AboutFragment : ToolbarFragment() { class AboutFragment : ToolbarFragment() {
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? = override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? =
...@@ -50,13 +51,17 @@ class AboutFragment : ToolbarFragment() { ...@@ -50,13 +51,17 @@ class AboutFragment : ToolbarFragment() {
.parseAsHtml(HtmlCompat.FROM_HTML_SEPARATOR_LINE_BREAK_LIST_ITEM)).apply { .parseAsHtml(HtmlCompat.FROM_HTML_SEPARATOR_LINE_BREAK_LIST_ITEM)).apply {
for (span in getSpans(0, length, URLSpan::class.java)) { for (span in getSpans(0, length, URLSpan::class.java)) {
setSpan(object : ClickableSpan() { setSpan(object : ClickableSpan() {
override fun onClick(view: View) { override fun onClick(view: View) = when {
if (span.url.startsWith("mailto:")) { span.url.startsWith("#") -> {
startActivity(Intent(context, OssLicensesMenuActivity::class.java))
}
span.url.startsWith("mailto:") -> {
startActivity(Intent.createChooser(Intent().apply { startActivity(Intent.createChooser(Intent().apply {
action = Intent.ACTION_SENDTO action = Intent.ACTION_SENDTO
data = span.url.toUri() data = span.url.toUri()
}, getString(R.string.send_email))) }, getString(R.string.send_email)))
} else (activity as MainActivity).launchUrl(span.url) }
else -> (activity as MainActivity).launchUrl(span.url)
} }
}, getSpanStart(span), getSpanEnd(span), getSpanFlags(span)) }, getSpanStart(span), getSpanEnd(span), getSpanFlags(span))
removeSpan(span) removeSpan(span)
......
...@@ -28,6 +28,7 @@ ...@@ -28,6 +28,7 @@
<li>shadowsocks-libev: <a href="https://github.com/shadowsocks/shadowsocks-libev/blob/master/LICENSE">GPLv3</a>&nbsp;</li> <li>shadowsocks-libev: <a href="https://github.com/shadowsocks/shadowsocks-libev/blob/master/LICENSE">GPLv3</a>&nbsp;</li>
<li>libev: <a href="https://github.com/shadowsocks/libev/blob/master/LICENSE">GPLv2</a>&nbsp;</li> <li>libev: <a href="https://github.com/shadowsocks/libev/blob/master/LICENSE">GPLv2</a>&nbsp;</li>
<li>libsodium: <a href="https://github.com/jedisct1/libsodium/blob/master/LICENSE">ISC</a>&nbsp;</li> <li>libsodium: <a href="https://github.com/jedisct1/libsodium/blob/master/LICENSE">ISC</a>&nbsp;</li>
<li><a href="#other-licenses">Other licenses</a></li>
</ul> </ul>
</body> </body>
</html> </html>
...@@ -3,6 +3,8 @@ import java.util.regex.Matcher ...@@ -3,6 +3,8 @@ import java.util.regex.Matcher
import java.util.regex.Pattern import java.util.regex.Pattern
apply plugin: 'com.android.application' apply plugin: 'com.android.application'
apply plugin: 'com.google.android.gms.oss-licenses-plugin'
apply plugin: 'com.google.gms.google-services'
apply plugin: 'io.fabric' apply plugin: 'io.fabric'
apply plugin: 'kotlin-android' apply plugin: 'kotlin-android'
apply plugin: 'kotlin-kapt' apply plugin: 'kotlin-kapt'
...@@ -60,8 +62,6 @@ dependencies { ...@@ -60,8 +62,6 @@ dependencies {
implementation 'androidx.leanback:leanback-preference:1.1.0-alpha03' implementation 'androidx.leanback:leanback-preference:1.1.0-alpha03'
} }
apply plugin: 'com.google.gms.google-services'
ext.abiCodes = ['armeabi-v7a': 1, 'arm64-v8a': 2, x86: 3, x86_64: 4] ext.abiCodes = ['armeabi-v7a': 1, 'arm64-v8a': 2, x86: 3, x86_64: 4]
if (getCurrentFlavor() == 'release') android.applicationVariants.all { variant -> if (getCurrentFlavor() == 'release') android.applicationVariants.all { variant ->
variant.outputs.each { output -> variant.outputs.each { output ->
......
...@@ -60,5 +60,9 @@ ...@@ -60,5 +60,9 @@
<Preference <Preference
app:key="about" app:key="about"
app:title="@string/about"/> app:title="@string/about"/>
<Preference
app:key="about.ossLicenses"
app:title="@string/oss_license_title"
app:summary="@string/preferences_license_summary"/>
</PreferenceScreen> </PreferenceScreen>
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment