From 73595a2a11c08ac08c2f7224f98bb9730e13ff4b Mon Sep 17 00:00:00 2001 From: Sean Mac Gillicuddy Date: Fri, 27 Sep 2019 14:45:49 +0100 Subject: [PATCH] fix Build.ApplicationId issue --- .../org/kiwix/kiwixmobile/main/AddNoteDialog.java | 3 +-- .../kiwix/kiwixmobile/main/KiwixWebViewClient.java | 2 +- .../java/org/kiwix/kiwixmobile/main/MainActivity.java | 11 ++++++----- .../java/org/kiwix/kiwixmobile/utils/Constants.java | 2 -- .../java/org/kiwix/kiwixmobile/utils/UpdateUtils.java | 6 ++++-- .../org/kiwix/kiwixmobile/utils/files/FileUtils.kt | 5 +++-- .../kiwix/kiwixmobile/zim_manager/ZimFileReader.kt | 2 +- .../zim_manager/fileselect_view/effects/ShareFiles.kt | 3 ++- 8 files changed, 18 insertions(+), 16 deletions(-) diff --git a/core/src/main/java/org/kiwix/kiwixmobile/main/AddNoteDialog.java b/core/src/main/java/org/kiwix/kiwixmobile/main/AddNoteDialog.java index 5394e2970..92705e909 100644 --- a/core/src/main/java/org/kiwix/kiwixmobile/main/AddNoteDialog.java +++ b/core/src/main/java/org/kiwix/kiwixmobile/main/AddNoteDialog.java @@ -36,7 +36,6 @@ import java.io.FileOutputStream; import java.io.IOException; import javax.inject.Inject; import org.kiwix.kiwixmobile.KiwixApplication; -import org.kiwix.kiwixmobile.core.BuildConfig; import org.kiwix.kiwixmobile.core.R; import org.kiwix.kiwixmobile.core.R2; import org.kiwix.kiwixmobile.utils.SharedPreferenceUtil; @@ -390,7 +389,7 @@ public class AddNoteDialog extends DialogFragment // From Nougat 7 (API 24) access to files is shared temporarily with other apps // Need to use FileProvider for the same noteFileUri = - FileProvider.getUriForFile(getContext(), BuildConfig.APPLICATION_ID + ".fileprovider", + FileProvider.getUriForFile(getContext(), getContext().getPackageName() + ".fileprovider", noteFile); } else { noteFileUri = Uri.fromFile(noteFile); diff --git a/core/src/main/java/org/kiwix/kiwixmobile/main/KiwixWebViewClient.java b/core/src/main/java/org/kiwix/kiwixmobile/main/KiwixWebViewClient.java index e633febe5..ce79d375e 100644 --- a/core/src/main/java/org/kiwix/kiwixmobile/main/KiwixWebViewClient.java +++ b/core/src/main/java/org/kiwix/kiwixmobile/main/KiwixWebViewClient.java @@ -110,7 +110,7 @@ public class KiwixWebViewClient extends WebViewClient { @Override public void onPageFinished(WebView view, String url) { - boolean invalidUrl = url.equals("content://" + BuildConfig.APPLICATION_ID + ".zim.base/null"); + boolean invalidUrl = url.equals("content://" + KiwixApplication.getInstance().getPackageName() + ".zim.base/null"); Log.d(TAG_KIWIX, "invalidUrl = " + invalidUrl); if (invalidUrl) { diff --git a/core/src/main/java/org/kiwix/kiwixmobile/main/MainActivity.java b/core/src/main/java/org/kiwix/kiwixmobile/main/MainActivity.java index dcf99a7b1..107625a24 100644 --- a/core/src/main/java/org/kiwix/kiwixmobile/main/MainActivity.java +++ b/core/src/main/java/org/kiwix/kiwixmobile/main/MainActivity.java @@ -94,11 +94,12 @@ import javax.inject.Inject; import kotlin.Unit; import org.jetbrains.annotations.NotNull; import org.json.JSONArray; -import org.kiwix.kiwixmobile.core.BuildConfig; -import org.kiwix.kiwixmobile.core.R; +import org.kiwix.kiwixmobile.KiwixApplication; import org.kiwix.kiwixmobile.base.BaseActivity; import org.kiwix.kiwixmobile.bookmark.BookmarkItem; import org.kiwix.kiwixmobile.bookmark.BookmarksActivity; +import org.kiwix.kiwixmobile.core.BuildConfig; +import org.kiwix.kiwixmobile.core.R; import org.kiwix.kiwixmobile.core.R2; import org.kiwix.kiwixmobile.help.HelpActivity; import org.kiwix.kiwixmobile.history.HistoryActivity; @@ -368,7 +369,7 @@ public class MainActivity extends BaseActivity implements WebViewCallback, setupDocumentParser(); if (BuildConfig.IS_CUSTOM_APP) { - Log.d(TAG_KIWIX, "This is a custom app:" + BuildConfig.APPLICATION_ID); + Log.d(TAG_KIWIX, "This is a custom app:" + getPackageName()); if (loadCustomAppContent()) { Log.d(TAG_KIWIX, "Found custom content, continuing..."); // Continue @@ -1827,7 +1828,7 @@ public class MainActivity extends BaseActivity implements WebViewCallback, filePath = libDir.listFiles()[0].getPath() + "/" + BuildConfig.ZIM_FILE_NAME; } if (filePath.isEmpty() || !new File(filePath).exists()) { - filePath = String.format("/data/data/%s/lib/%s", BuildConfig.APPLICATION_ID, + filePath = String.format("/data/data/%s/lib/%s", getPackageName(), BuildConfig.ZIM_FILE_NAME); } } else { @@ -1846,7 +1847,7 @@ public class MainActivity extends BaseActivity implements WebViewCallback, final Activity activity = this; zimFileMissingBuilder.setPositiveButton(getString(R.string.go_to_play_store), (dialog, which) -> { - String market_uri = "market://details?id=" + BuildConfig.APPLICATION_ID; + String market_uri = "market://details?id=" + getPackageName(); Intent intent = new Intent(Intent.ACTION_VIEW); intent.setData(Uri.parse(market_uri)); startActivity(intent); diff --git a/core/src/main/java/org/kiwix/kiwixmobile/utils/Constants.java b/core/src/main/java/org/kiwix/kiwixmobile/utils/Constants.java index 1477b9dd6..51065b0de 100644 --- a/core/src/main/java/org/kiwix/kiwixmobile/utils/Constants.java +++ b/core/src/main/java/org/kiwix/kiwixmobile/utils/Constants.java @@ -93,6 +93,4 @@ public final class Constants { public static final String ONGOING_DOWNLOAD_CHANNEL_ID = "ongoing_downloads_channel_id"; public static final String OLD_PROVIDER_DOMAIN = "org.kiwix.zim.base"; - - public static final String NEW_PROVIDER_DOMAIN = BuildConfig.APPLICATION_ID + ".zim.base"; } diff --git a/core/src/main/java/org/kiwix/kiwixmobile/utils/UpdateUtils.java b/core/src/main/java/org/kiwix/kiwixmobile/utils/UpdateUtils.java index 1201d96eb..f6db64ebe 100644 --- a/core/src/main/java/org/kiwix/kiwixmobile/utils/UpdateUtils.java +++ b/core/src/main/java/org/kiwix/kiwixmobile/utils/UpdateUtils.java @@ -1,10 +1,12 @@ package org.kiwix.kiwixmobile.utils; -import static org.kiwix.kiwixmobile.utils.Constants.NEW_PROVIDER_DOMAIN; +import org.kiwix.kiwixmobile.KiwixApplication; + import static org.kiwix.kiwixmobile.utils.Constants.OLD_PROVIDER_DOMAIN; public class UpdateUtils { public static String reformatProviderUrl(String url) { - return url.replace(OLD_PROVIDER_DOMAIN, NEW_PROVIDER_DOMAIN); + return url.replace(OLD_PROVIDER_DOMAIN, + KiwixApplication.getInstance().getPackageName() + ".zim.base"); } } diff --git a/core/src/main/java/org/kiwix/kiwixmobile/utils/files/FileUtils.kt b/core/src/main/java/org/kiwix/kiwixmobile/utils/files/FileUtils.kt index f6badea1d..52a0f3211 100644 --- a/core/src/main/java/org/kiwix/kiwixmobile/utils/files/FileUtils.kt +++ b/core/src/main/java/org/kiwix/kiwixmobile/utils/files/FileUtils.kt @@ -24,6 +24,7 @@ import android.os.Build import android.os.Environment import android.provider.DocumentsContract import android.util.Log +import org.kiwix.kiwixmobile.KiwixApplication import org.kiwix.kiwixmobile.core.BuildConfig import org.kiwix.kiwixmobile.downloader.ChunkUtils import org.kiwix.kiwixmobile.extensions.get @@ -37,7 +38,7 @@ object FileUtils { private val saveFilePath = "${Environment.getExternalStorageDirectory()}${File.separator}Android" + - "${File.separator}obb${File.separator}${BuildConfig.APPLICATION_ID}" + "${File.separator}obb${File.separator}${KiwixApplication.getInstance().packageName}" @JvmStatic fun getFileCacheDir(context: Context): File = if (Environment.MEDIA_MOUNTED == Environment.getExternalStorageState()) { @@ -101,7 +102,7 @@ object FileUtils { */ @JvmStatic fun getExpansionAPKFileName(mainFile: Boolean) = "${if (mainFile) "main." else "patch."}${BuildConfig.CONTENT_VERSION_CODE}" + - ".${BuildConfig.APPLICATION_ID}.obb" + ".${KiwixApplication.getInstance().packageName}.obb" /** * Returns the filename (where the file should be saved) from info about a download diff --git a/core/src/main/java/org/kiwix/kiwixmobile/zim_manager/ZimFileReader.kt b/core/src/main/java/org/kiwix/kiwixmobile/zim_manager/ZimFileReader.kt index fc9b2b674..15d690dab 100644 --- a/core/src/main/java/org/kiwix/kiwixmobile/zim_manager/ZimFileReader.kt +++ b/core/src/main/java/org/kiwix/kiwixmobile/zim_manager/ZimFileReader.kt @@ -220,7 +220,7 @@ class ZimFileReader( @JvmField val UI_URI: Uri? = Uri.parse("content://org.kiwix.ui/") @JvmField - val CONTENT_URI: Uri? = Uri.parse("content://${BuildConfig.APPLICATION_ID}.zim.base/") + val CONTENT_URI: Uri? = Uri.parse("content://${KiwixApplication.getInstance().packageName}.zim.base/") private const val INVERT_IMAGES_VIDEO = "img, video { \n -webkit-filter: invert(1); \n filter: invert(1); \n} \n" private val VIDEO_REGEX = Regex("([^\\s]+(\\.(?i)(3gp|mp4|m4a|webm|mkv|ogg|ogv))\$)") diff --git a/core/src/main/java/org/kiwix/kiwixmobile/zim_manager/fileselect_view/effects/ShareFiles.kt b/core/src/main/java/org/kiwix/kiwixmobile/zim_manager/fileselect_view/effects/ShareFiles.kt index e374e8ed9..4695e78ba 100644 --- a/core/src/main/java/org/kiwix/kiwixmobile/zim_manager/fileselect_view/effects/ShareFiles.kt +++ b/core/src/main/java/org/kiwix/kiwixmobile/zim_manager/fileselect_view/effects/ShareFiles.kt @@ -5,6 +5,7 @@ import android.content.Intent import android.net.Uri import android.os.Build import androidx.core.content.FileProvider +import org.kiwix.kiwixmobile.KiwixApplication import org.kiwix.kiwixmobile.core.BuildConfig import org.kiwix.kiwixmobile.core.R import org.kiwix.kiwixmobile.zim_manager.fileselect_view.adapter.BooksOnDiskListItem.BookOnDisk @@ -18,7 +19,7 @@ class ShareFiles(private val selectedBooks: List) : SideEffect if (Build.VERSION.SDK_INT >= 24) { FileProvider.getUriForFile( activity, - BuildConfig.APPLICATION_ID + ".fileprovider", + activity.packageName + ".fileprovider", it.file ) } else {