Commit 390e2591 authored by wanglei's avatar wanglei

...处理弹窗问题

parent d613a963
import java.text.SimpleDateFormat
import java.util.Locale
plugins { plugins {
alias(libs.plugins.android.application) alias(libs.plugins.android.application)
alias(libs.plugins.kotlin.android) alias(libs.plugins.kotlin.android)
...@@ -17,8 +19,10 @@ android { ...@@ -17,8 +19,10 @@ android {
versionName = "1.0" versionName = "1.0"
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
fun Long.toFormatTime3(): String {
setProperty("archivesBaseName", "pdf-v$versionName-$versionCode") return SimpleDateFormat("yyyy-MM-dd-HH-mm-ss", Locale.ENGLISH).format(this)
}
setProperty("archivesBaseName", "pdf-v${System.currentTimeMillis().toFormatTime3()}")
signingConfigs { signingConfigs {
create("release") { create("release") {
......
...@@ -74,6 +74,7 @@ class DocumentAdapter( ...@@ -74,6 +74,7 @@ class DocumentAdapter(
binding.root.setOnClickListener { binding.root.setOnClickListener {
itemClickAction?.invoke(item) itemClickAction?.invoke(item)
} }
} }
} }
......
...@@ -162,10 +162,6 @@ fun getAllDocument(context: Context): MutableList<DocumentBean> { ...@@ -162,10 +162,6 @@ fun getAllDocument(context: Context): MutableList<DocumentBean> {
if (File(pdfDemo.path).exists()) { if (File(pdfDemo.path).exists()) {
new.add(0, pdfDemo) new.add(0, pdfDemo)
} }
// new.forEach { document ->
// LogEx.logDebug("getAllDocument", "document=$document")
// }
return new return new
} }
......
...@@ -9,7 +9,6 @@ import android.os.Build ...@@ -9,7 +9,6 @@ import android.os.Build
import android.text.Spannable import android.text.Spannable
import android.text.SpannableString import android.text.SpannableString
import android.text.style.ForegroundColorSpan import android.text.style.ForegroundColorSpan
import android.util.Log
import androidx.activity.addCallback import androidx.activity.addCallback
import androidx.core.view.GravityCompat import androidx.core.view.GravityCompat
import androidx.core.view.updatePadding import androidx.core.view.updatePadding
...@@ -22,6 +21,7 @@ import com.base.pdfreaderallpdfreader.R ...@@ -22,6 +21,7 @@ import com.base.pdfreaderallpdfreader.R
import com.base.pdfreaderallpdfreader.ads.AdmobHelper import com.base.pdfreaderallpdfreader.ads.AdmobHelper
import com.base.pdfreaderallpdfreader.ads.AdmobHelper.lastScanShowAd import com.base.pdfreaderallpdfreader.ads.AdmobHelper.lastScanShowAd
import com.base.pdfreaderallpdfreader.ads.admob.AdmobBannerUtils import com.base.pdfreaderallpdfreader.ads.admob.AdmobBannerUtils
import com.base.pdfreaderallpdfreader.ads.admob.AdmobInterstitialUtils
import com.base.pdfreaderallpdfreader.base.BaseActivity import com.base.pdfreaderallpdfreader.base.BaseActivity
import com.base.pdfreaderallpdfreader.bean.ConstObject.NOTIFICATION_ACTION_BOOKMARK import com.base.pdfreaderallpdfreader.bean.ConstObject.NOTIFICATION_ACTION_BOOKMARK
import com.base.pdfreaderallpdfreader.bean.ConstObject.NOTIFICATION_ACTION_NEW_IMAGE_PDF import com.base.pdfreaderallpdfreader.bean.ConstObject.NOTIFICATION_ACTION_NEW_IMAGE_PDF
...@@ -32,6 +32,7 @@ import com.base.pdfreaderallpdfreader.helper.ConfigHelper ...@@ -32,6 +32,7 @@ import com.base.pdfreaderallpdfreader.helper.ConfigHelper
import com.base.pdfreaderallpdfreader.ui.feedback.FeedbackActivity import com.base.pdfreaderallpdfreader.ui.feedback.FeedbackActivity
import com.base.pdfreaderallpdfreader.ui.language.LanguageActivity import com.base.pdfreaderallpdfreader.ui.language.LanguageActivity
import com.base.pdfreaderallpdfreader.ui.pdf.PdfActivity import com.base.pdfreaderallpdfreader.ui.pdf.PdfActivity
import com.base.pdfreaderallpdfreader.ui.search.SearchActivity
import com.base.pdfreaderallpdfreader.ui.view.MainDialog.showAppExitDialog import com.base.pdfreaderallpdfreader.ui.view.MainDialog.showAppExitDialog
import com.base.pdfreaderallpdfreader.ui.view.MainDialog.showNotificationDialog import com.base.pdfreaderallpdfreader.ui.view.MainDialog.showNotificationDialog
import com.base.pdfreaderallpdfreader.ui.view.MainDialog.showStoragePermission import com.base.pdfreaderallpdfreader.ui.view.MainDialog.showStoragePermission
...@@ -114,18 +115,20 @@ class MainActivity : BaseActivity<ActivityMainBinding>() { ...@@ -114,18 +115,20 @@ class MainActivity : BaseActivity<ActivityMainBinding>() {
addDeskShortCut() addDeskShortCut()
} }
private var jumpPermission: Boolean = false private var jumpOutPage: Boolean = false
override fun onResume() { override fun onResume() {
super.onResume() super.onResume()
LogEx.logDebug(TAG, "onResume") LogEx.logDebug(TAG, "onResume")
if (checkStorePermission()) { if (checkStorePermission()) {
if (!jumpPermission) { if (!jumpOutPage) {
showMainBanner() showMainBanner()
} }
jumpPermission = false
} else { } else {
showStoragePermission(launcher, jumpAction = { jumpPermission = true }) if (!jumpOutPage) {
showStoragePermission(launcher, jumpAction = { jumpOutPage = true })
}
} }
jumpOutPage = false
} }
override fun initListener() { override fun initListener() {
...@@ -152,11 +155,11 @@ class MainActivity : BaseActivity<ActivityMainBinding>() { ...@@ -152,11 +155,11 @@ class MainActivity : BaseActivity<ActivityMainBinding>() {
binding.llLanguage.setOnClickListener { binding.llLanguage.setOnClickListener {
startActivity(Intent(this, LanguageActivity::class.java)) startActivity(Intent(this, LanguageActivity::class.java))
} }
binding.includeMain.includeContentMain.ivScan.setOnClickListener {
showStoragePermission(launcher)
}
binding.includeMain.ivSearch.setOnClickListener { binding.includeMain.ivSearch.setOnClickListener {
showStoragePermission(launcher) startActivity(Intent(this, SearchActivity::class.java))
}
binding.includeMain.includeContentMain.ivScan.setOnClickListener {
starAdGmsScan()
} }
binding.llFileManager.setOnClickListener { binding.llFileManager.setOnClickListener {
val intent = Intent(Intent.ACTION_OPEN_DOCUMENT) val intent = Intent(Intent.ACTION_OPEN_DOCUMENT)
...@@ -164,6 +167,7 @@ class MainActivity : BaseActivity<ActivityMainBinding>() { ...@@ -164,6 +167,7 @@ class MainActivity : BaseActivity<ActivityMainBinding>() {
intent.setType("application/pdf") intent.setType("application/pdf")
intent.flags = Intent.FLAG_GRANT_WRITE_URI_PERMISSION intent.flags = Intent.FLAG_GRANT_WRITE_URI_PERMISSION
jumpOutPage = true
launcher.launch(intent) { launcher.launch(intent) {
val uri = it.data?.data val uri = it.data?.data
uri?.let { uri?.let {
...@@ -211,6 +215,7 @@ class MainActivity : BaseActivity<ActivityMainBinding>() { ...@@ -211,6 +215,7 @@ class MainActivity : BaseActivity<ActivityMainBinding>() {
} }
NOTIFICATION_ACTION_NEW_IMAGE_PDF -> { NOTIFICATION_ACTION_NEW_IMAGE_PDF -> {
jumpOutPage = true
mainViewModel.starGmsScan(this) mainViewModel.starGmsScan(this)
} }
} }
...@@ -243,13 +248,16 @@ class MainActivity : BaseActivity<ActivityMainBinding>() { ...@@ -243,13 +248,16 @@ class MainActivity : BaseActivity<ActivityMainBinding>() {
private fun starAdGmsScan() { private fun starAdGmsScan() {
if (AdmobHelper.isShowScanInter() && AdmobHelper.canCommonShowAd()) { if (AdmobHelper.isShowScanInter() && AdmobHelper.canCommonShowAd()) {
com.base.pdfreaderallpdfreader.ads.admob.AdmobInterstitialUtils.showInterstitialAd(this) { jumpOutPage = true
AdmobInterstitialUtils.showInterstitialAd(this) {
if (it) { if (it) {
lastScanShowAd = System.currentTimeMillis() lastScanShowAd = System.currentTimeMillis()
} }
jumpOutPage = true
mainViewModel.starGmsScan(this) mainViewModel.starGmsScan(this)
} }
} else { } else {
jumpOutPage = true
mainViewModel.starGmsScan(this) mainViewModel.starGmsScan(this)
} }
......
...@@ -22,6 +22,7 @@ import com.base.pdfreaderallpdfreader.utils.PdfBoxUtils.checkPdfEncryption ...@@ -22,6 +22,7 @@ import com.base.pdfreaderallpdfreader.utils.PdfBoxUtils.checkPdfEncryption
import com.base.pdfreaderallpdfreader.utils.SpStringUtils import com.base.pdfreaderallpdfreader.utils.SpStringUtils
import com.base.pdfreaderallpdfreader.utils.SpStringUtils.BOOKMARK_KEY import com.base.pdfreaderallpdfreader.utils.SpStringUtils.BOOKMARK_KEY
import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.delay
import kotlinx.coroutines.launch import kotlinx.coroutines.launch
import java.io.File import java.io.File
import kotlin.random.Random import kotlin.random.Random
...@@ -119,12 +120,11 @@ class RecentFragment() : Fragment(), DialogCallBack { ...@@ -119,12 +120,11 @@ class RecentFragment() : Fragment(), DialogCallBack {
} }
private fun initData() { private fun initData() {
// if (!recentNeedRefresh) return
// recentNeedRefresh = false
binding.swipeRefreshLayout.isRefreshing = true
lifecycleScope.launch(Dispatchers.IO) { lifecycleScope.launch(Dispatchers.IO) {
launch(Dispatchers.Main) {
delay(5000)
binding.swipeRefreshLayout.isRefreshing = false
}
val recentList = recentViewModel.getRecentDocument(requireContext()) val recentList = recentViewModel.getRecentDocument(requireContext())
launch(Dispatchers.Main) { launch(Dispatchers.Main) {
if (recentList.isEmpty()) { if (recentList.isEmpty()) {
......
...@@ -482,15 +482,17 @@ class PdfActivity : BaseActivity<ActivityPdfBinding>() { ...@@ -482,15 +482,17 @@ class PdfActivity : BaseActivity<ActivityPdfBinding>() {
private fun createPdfUI() { private fun createPdfUI() {
if (muPDFCore == null) return if (muPDFCore == null) return
binding.tvPageCount.text = "1/${muPDFCore?.countPages()}" val countPages = muPDFCore?.countPages()
binding.tvPageCount.text = "1/${countPages}"
binding.mupdfReaderView.setListener(object : MuPDFReaderViewListener { binding.mupdfReaderView.setListener(object : MuPDFReaderViewListener {
@SuppressLint("SetTextI18n") @SuppressLint("SetTextI18n")
override fun onMoveToChild(i: Int) { override fun onMoveToChild(i: Int) {
binding.tvPageCount.text = "${i + 1}/${muPDFCore?.countPages()}" binding.tvPageCount.text = "${i + 1}/$countPages}"
pdfPageAdapter.changeSelectPager(i) pdfPageAdapter.changeSelectPager(i)
binding.rvPager.scrollToPosition(i) binding.rvPager.scrollToPosition(i)
setVerticalSeekbar(i + 1, muPDFCore?.countPages() ?: 0) setVerticalSeekbar(i + 1, countPages ?: 0)
} }
override fun onTapMainDocArea() { override fun onTapMainDocArea() {
......
...@@ -18,11 +18,14 @@ import com.base.pdfreaderallpdfreader.ads.AdmobHelper.initAdmobAd ...@@ -18,11 +18,14 @@ import com.base.pdfreaderallpdfreader.ads.AdmobHelper.initAdmobAd
import com.base.pdfreaderallpdfreader.ads.admob.AdmobInterstitialUtils import com.base.pdfreaderallpdfreader.ads.admob.AdmobInterstitialUtils
import com.base.pdfreaderallpdfreader.ads.admob.AdmobOpenUtils import com.base.pdfreaderallpdfreader.ads.admob.AdmobOpenUtils
import com.base.pdfreaderallpdfreader.base.BaseActivity import com.base.pdfreaderallpdfreader.base.BaseActivity
import com.base.pdfreaderallpdfreader.bean.ConstObject.DO_MERGE_PDF
import com.base.pdfreaderallpdfreader.bean.ConstObject.DO_SPLIT_PDF import com.base.pdfreaderallpdfreader.bean.ConstObject.DO_SPLIT_PDF
import com.base.pdfreaderallpdfreader.bean.ConstObject.NOTIFICATION_ACTION_DOCUMENT import com.base.pdfreaderallpdfreader.bean.ConstObject.NOTIFICATION_ACTION_DOCUMENT
import com.base.pdfreaderallpdfreader.bean.ConstObject.NOTIFICATION_ACTION_IMPORTANT_DOCUMENT import com.base.pdfreaderallpdfreader.bean.ConstObject.NOTIFICATION_ACTION_IMPORTANT_DOCUMENT
import com.base.pdfreaderallpdfreader.bean.ConstObject.NOTIFICATION_ACTION_READ_PDF import com.base.pdfreaderallpdfreader.bean.ConstObject.NOTIFICATION_ACTION_READ_PDF
import com.base.pdfreaderallpdfreader.bean.ConstObject.NOTIFICATION_ACTION_UN_VIEW_FILES import com.base.pdfreaderallpdfreader.bean.ConstObject.NOTIFICATION_ACTION_UN_VIEW_FILES
import com.base.pdfreaderallpdfreader.bean.ConstObject.SHORTCUT_MERGE_PDF
import com.base.pdfreaderallpdfreader.bean.ConstObject.SHORTCUT_SPLIT_PDF
import com.base.pdfreaderallpdfreader.bean.ConstObject.ifAgreePrivacy import com.base.pdfreaderallpdfreader.bean.ConstObject.ifAgreePrivacy
import com.base.pdfreaderallpdfreader.bean.ConstObject.isFirstStart import com.base.pdfreaderallpdfreader.bean.ConstObject.isFirstStart
import com.base.pdfreaderallpdfreader.databinding.ActivitySplashBinding import com.base.pdfreaderallpdfreader.databinding.ActivitySplashBinding
...@@ -254,6 +257,14 @@ class MyStartActivity : BaseActivity<ActivitySplashBinding>() { ...@@ -254,6 +257,14 @@ class MyStartActivity : BaseActivity<ActivitySplashBinding>() {
}) })
} }
SHORTCUT_SPLIT_PDF -> {
jumpPdfSelect(this, DO_SPLIT_PDF)
}
SHORTCUT_MERGE_PDF -> {
jumpPdfSelect(this, DO_MERGE_PDF)
}
else -> { else -> {
LogEx.logDebug(TAG, "show main handle actionId $actionId") LogEx.logDebug(TAG, "show main handle actionId $actionId")
startActivity(Intent(this, MainActivity::class.java).apply { startActivity(Intent(this, MainActivity::class.java).apply {
......
...@@ -56,7 +56,7 @@ object MainDialog { ...@@ -56,7 +56,7 @@ object MainDialog {
dialog.setOnDismissListener { dialog.setOnDismissListener {
dismissAction?.invoke() dismissAction?.invoke()
} }
val text = "To read and edit documents on your device, please allow PDF Reader to access all your files" val text = "To read and edit more documents on your device, please allow PDF Reader to access all your document files"
val redText = "PDF Reader" val redText = "PDF Reader"
val spannableString = SpannableString(text) val spannableString = SpannableString(text)
val startIndex = text.indexOf(redText) val startIndex = text.indexOf(redText)
......
...@@ -27,6 +27,7 @@ import com.base.pdfreaderallpdfreader.utils.KotlinExt.toFormatSize ...@@ -27,6 +27,7 @@ import com.base.pdfreaderallpdfreader.utils.KotlinExt.toFormatSize
import com.base.pdfreaderallpdfreader.utils.KotlinExt.toFormatTime import com.base.pdfreaderallpdfreader.utils.KotlinExt.toFormatTime
import com.base.pdfreaderallpdfreader.utils.LogEx import com.base.pdfreaderallpdfreader.utils.LogEx
import com.base.pdfreaderallpdfreader.utils.NumberRangeFilter import com.base.pdfreaderallpdfreader.utils.NumberRangeFilter
import com.base.pdfreaderallpdfreader.utils.PermissionUtils.checkStorePermission
import com.base.pdfreaderallpdfreader.utils.SpStringUtils import com.base.pdfreaderallpdfreader.utils.SpStringUtils
import com.base.pdfreaderallpdfreader.utils.SpStringUtils.BOOKMARK_KEY import com.base.pdfreaderallpdfreader.utils.SpStringUtils.BOOKMARK_KEY
import com.base.pdfreaderallpdfreader.utils.ToastUtils.toast import com.base.pdfreaderallpdfreader.utils.ToastUtils.toast
......
...@@ -95,7 +95,7 @@ ...@@ -95,7 +95,7 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_gravity="center_horizontal" android:layout_gravity="center_horizontal"
android:layout_marginTop="8dp" android:layout_marginTop="8dp"
android:text="@string/no_recent" android:text="@string/no_result"
android:textColor="#2A2A2A" android:textColor="#2A2A2A"
android:textSize="15sp" android:textSize="15sp"
android:textStyle="bold" /> android:textStyle="bold" />
......
...@@ -37,6 +37,7 @@ ...@@ -37,6 +37,7 @@
android:layout_width="30dp" android:layout_width="30dp"
android:layout_height="30dp" android:layout_height="30dp"
android:layout_gravity="center_horizontal" android:layout_gravity="center_horizontal"
android:layout_marginTop="3dp"
android:src="@mipmap/pdf_document" android:src="@mipmap/pdf_document"
tools:ignore="ContentDescription" /> tools:ignore="ContentDescription" />
...@@ -44,7 +45,7 @@ ...@@ -44,7 +45,7 @@
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_gravity="center_horizontal" android:layout_gravity="center_horizontal"
android:layout_marginTop="2dp" android:layout_marginTop="5dp"
android:includeFontPadding="false" android:includeFontPadding="false"
android:text="Document" android:text="Document"
android:textColor="@color/black" android:textColor="@color/black"
...@@ -65,6 +66,7 @@ ...@@ -65,6 +66,7 @@
android:layout_width="30dp" android:layout_width="30dp"
android:layout_height="30dp" android:layout_height="30dp"
android:layout_gravity="center_horizontal" android:layout_gravity="center_horizontal"
android:layout_marginTop="3dp"
android:src="@mipmap/pdf_bookmark" android:src="@mipmap/pdf_bookmark"
tools:ignore="ContentDescription" /> tools:ignore="ContentDescription" />
...@@ -72,7 +74,7 @@ ...@@ -72,7 +74,7 @@
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_gravity="center_horizontal" android:layout_gravity="center_horizontal"
android:layout_marginTop="2dp" android:layout_marginTop="5dp"
android:includeFontPadding="false" android:includeFontPadding="false"
android:text="Bookmark" android:text="Bookmark"
android:textColor="@color/black" android:textColor="@color/black"
...@@ -94,6 +96,7 @@ ...@@ -94,6 +96,7 @@
android:layout_width="30dp" android:layout_width="30dp"
android:layout_height="30dp" android:layout_height="30dp"
android:layout_gravity="center_horizontal" android:layout_gravity="center_horizontal"
android:layout_marginTop="3dp"
android:src="@mipmap/pdf_image" android:src="@mipmap/pdf_image"
tools:ignore="ContentDescription" /> tools:ignore="ContentDescription" />
...@@ -101,7 +104,7 @@ ...@@ -101,7 +104,7 @@
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_gravity="center_horizontal" android:layout_gravity="center_horizontal"
android:layout_marginTop="2dp" android:layout_marginTop="5dp"
android:includeFontPadding="false" android:includeFontPadding="false"
android:text="Image PDF" android:text="Image PDF"
android:textColor="@color/black" android:textColor="@color/black"
......
...@@ -113,6 +113,7 @@ ...@@ -113,6 +113,7 @@
<string name="select_a_project_merge">Select projects for merge</string> <string name="select_a_project_merge">Select projects for merge</string>
<string name="select_a_project_lock">Select a project to lock</string> <string name="select_a_project_lock">Select a project to lock</string>
<string name="select_a_project_unlock">Select a project to unlock</string> <string name="select_a_project_unlock">Select a project to unlock</string>
<string name="no_result">No Result</string>
</resources> </resources>
\ No newline at end of file
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