From c2bdea702611f1fae2e09c117a01fb11fbcf60bb Mon Sep 17 00:00:00 2001 From: kunfei Date: Tue, 10 Mar 2020 19:23:20 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E4=BC=98=E5=8C=96=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/build.gradle | 12 +++++++- app/google-services.json | 29 +++++++++++++++++++ app/src/main/AndroidManifest.xml | 4 +++ .../main/java/io/legado/app/help/AppConfig.kt | 15 ++++++++++ .../io/legado/app/ui/main/my/MyFragment.kt | 6 ++++ app/src/main/res/xml/pref_main.xml | 4 ++- 6 files changed, 68 insertions(+), 2 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 037194e73..633b8ba1b 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -37,6 +37,7 @@ android { targetSdkVersion 29 versionCode gitCommits versionName version + flavorDimensions "versionCode" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" project.ext.set("archivesBaseName", name + "_" + version) multiDexEnabled true @@ -73,7 +74,15 @@ android { } } } - + productFlavors{ + app{ + manifestPlaceholders = [APP_CHANNEL_VALUE:"app"] + } + google{ + applicationId "io.legado.play" + manifestPlaceholders = [APP_CHANNEL_VALUE:"google"] + } + } compileOptions { // Flag to enable support for the new language APIs //coreLibraryDesugaringEnabled true @@ -130,6 +139,7 @@ dependencies { def room_version = '2.2.4' implementation "androidx.room:room-runtime:$room_version" kapt "androidx.room:room-compiler:$room_version" + kapt "android.arch.persistence.room:compiler:$room_version" //paging implementation 'androidx.paging:paging-runtime:2.1.1' diff --git a/app/google-services.json b/app/google-services.json index fb88090cb..314a5ea7c 100644 --- a/app/google-services.json +++ b/app/google-services.json @@ -92,6 +92,35 @@ ] } } + }, + { + "client_info": { + "mobilesdk_app_id": "1:453392274790:android:b891abd2331577dff624a7", + "android_client_info": { + "package_name": "io.legado.play.release" + } + }, + "oauth_client": [ + { + "client_id": "453392274790-hnbpatpce9hbjiggj76hgo7queu86atq.apps.googleusercontent.com", + "client_type": 3 + } + ], + "api_key": [ + { + "current_key": "AIzaSyD90mfNLhA7cAzzI9SonpSz5mrF5BnmyJA" + } + ], + "services": { + "appinvite_service": { + "other_platform_oauth_client": [ + { + "client_id": "453392274790-hnbpatpce9hbjiggj76hgo7queu86atq.apps.googleusercontent.com", + "client_type": 3 + } + ] + } + } } ], "configuration_version": "1" diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 543c13f6c..08cef5e93 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -252,6 +252,10 @@ android:name="android.support.FILE_PROVIDER_PATHS" android:resource="@xml/file_paths" /> + + \ No newline at end of file diff --git a/app/src/main/java/io/legado/app/help/AppConfig.kt b/app/src/main/java/io/legado/app/help/AppConfig.kt index 4b768b9e7..2e336fdad 100644 --- a/app/src/main/java/io/legado/app/help/AppConfig.kt +++ b/app/src/main/java/io/legado/app/help/AppConfig.kt @@ -1,6 +1,7 @@ package io.legado.app.help import android.content.Context +import android.content.pm.PackageManager import io.legado.app.App import io.legado.app.R import io.legado.app.constant.PreferKey @@ -119,4 +120,18 @@ object AppConfig { set(value) { App.INSTANCE.putPrefInt("elevation", value) } + } + +val Context.channel: String + get() { + try { + val pm = packageManager + val appInfo = pm.getApplicationInfo(packageName, PackageManager.GET_META_DATA); + return appInfo.metaData.getString("channel") ?: "" + } catch (e: Exception) { + e.printStackTrace(); + } + return "" + } + diff --git a/app/src/main/java/io/legado/app/ui/main/my/MyFragment.kt b/app/src/main/java/io/legado/app/ui/main/my/MyFragment.kt index ddb045c9e..7dcecaf11 100644 --- a/app/src/main/java/io/legado/app/ui/main/my/MyFragment.kt +++ b/app/src/main/java/io/legado/app/ui/main/my/MyFragment.kt @@ -13,6 +13,7 @@ import io.legado.app.R import io.legado.app.base.BaseFragment import io.legado.app.constant.EventBus import io.legado.app.constant.PreferKey +import io.legado.app.help.channel import io.legado.app.lib.theme.ATH import io.legado.app.service.WebService import io.legado.app.ui.about.AboutActivity @@ -24,6 +25,7 @@ import io.legado.app.ui.config.ConfigViewModel import io.legado.app.ui.filechooser.FileChooserDialog import io.legado.app.ui.replacerule.ReplaceRuleActivity import io.legado.app.ui.widget.prefs.NameListPreference +import io.legado.app.ui.widget.prefs.PreferenceCategory import io.legado.app.ui.widget.prefs.SwitchPreference import io.legado.app.utils.* import kotlinx.android.synthetic.main.view_title_bar.* @@ -81,6 +83,10 @@ class MyFragment : BaseFragment(R.layout.fragment_my_config), FileChooserDialog. true } } + if (requireContext().channel == "google") { + findPreference("aboutCategory") + ?.removePreference(findPreference("donate")) + } } override fun onViewCreated(view: View, savedInstanceState: Bundle?) { diff --git a/app/src/main/res/xml/pref_main.xml b/app/src/main/res/xml/pref_main.xml index c95b66d9e..0794203d9 100644 --- a/app/src/main/res/xml/pref_main.xml +++ b/app/src/main/res/xml/pref_main.xml @@ -56,7 +56,9 @@ - +