Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Sign in / Register
Toggle navigation
P
pdf all reader
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Packages
Packages
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wanglei
pdf all reader
Commits
390e2591
Commit
390e2591
authored
Nov 15, 2024
by
wanglei
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
...处理弹窗问题
parent
d613a963
Show whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
56 additions
and
29 deletions
+56
-29
build.gradle.kts
app/build.gradle.kts
+6
-2
DocumentAdapter.kt
...com/base/pdfreaderallpdfreader/ui/main/DocumentAdapter.kt
+1
-0
DocumentEx.kt
...java/com/base/pdfreaderallpdfreader/ui/main/DocumentEx.kt
+0
-4
MainActivity.kt
...va/com/base/pdfreaderallpdfreader/ui/main/MainActivity.kt
+18
-10
RecentFragment.kt
...se/pdfreaderallpdfreader/ui/main/recent/RecentFragment.kt
+5
-5
PdfActivity.kt
...java/com/base/pdfreaderallpdfreader/ui/pdf/PdfActivity.kt
+5
-3
MyStartActivity.kt
...m/base/pdfreaderallpdfreader/ui/splash/MyStartActivity.kt
+11
-0
MainDialog.kt
...java/com/base/pdfreaderallpdfreader/ui/view/MainDialog.kt
+1
-1
PdfDialog.kt
.../java/com/base/pdfreaderallpdfreader/ui/view/PdfDialog.kt
+1
-0
activity_search.xml
app/src/main/res/layout/activity_search.xml
+1
-1
stay_notification_big.xml
app/src/main/res/layout/stay_notification_big.xml
+6
-3
strings.xml
app/src/main/res/values/strings.xml
+1
-0
No files found.
app/build.gradle.kts
View file @
390e2591
import
java.text.SimpleDateFormat
import
java.util.Locale
plugins
{
alias
(
libs
.
plugins
.
android
.
application
)
alias
(
libs
.
plugins
.
kotlin
.
android
)
...
...
@@ -17,8 +19,10 @@ android {
versionName
=
"1.0"
testInstrumentationRunner
=
"androidx.test.runner.AndroidJUnitRunner"
setProperty
(
"archivesBaseName"
,
"pdf-v$versionName-$versionCode"
)
fun
Long
.
toFormatTime3
():
String
{
return
SimpleDateFormat
(
"yyyy-MM-dd-HH-mm-ss"
,
Locale
.
ENGLISH
).
format
(
this
)
}
setProperty
(
"archivesBaseName"
,
"pdf-v${System.currentTimeMillis().toFormatTime3()}"
)
signingConfigs
{
create
(
"release"
)
{
...
...
app/src/main/java/com/base/pdfreaderallpdfreader/ui/main/DocumentAdapter.kt
View file @
390e2591
...
...
@@ -74,6 +74,7 @@ class DocumentAdapter(
binding
.
root
.
setOnClickListener
{
itemClickAction
?.
invoke
(
item
)
}
}
}
...
...
app/src/main/java/com/base/pdfreaderallpdfreader/ui/main/DocumentEx.kt
View file @
390e2591
...
...
@@ -162,10 +162,6 @@ fun getAllDocument(context: Context): MutableList<DocumentBean> {
if
(
File
(
pdfDemo
.
path
).
exists
())
{
new
.
add
(
0
,
pdfDemo
)
}
// new.forEach { document ->
// LogEx.logDebug("getAllDocument", "document=$document")
// }
return
new
}
...
...
app/src/main/java/com/base/pdfreaderallpdfreader/ui/main/MainActivity.kt
View file @
390e2591
...
...
@@ -9,7 +9,6 @@ import android.os.Build
import
android.text.Spannable
import
android.text.SpannableString
import
android.text.style.ForegroundColorSpan
import
android.util.Log
import
androidx.activity.addCallback
import
androidx.core.view.GravityCompat
import
androidx.core.view.updatePadding
...
...
@@ -22,6 +21,7 @@ import com.base.pdfreaderallpdfreader.R
import
com.base.pdfreaderallpdfreader.ads.AdmobHelper
import
com.base.pdfreaderallpdfreader.ads.AdmobHelper.lastScanShowAd
import
com.base.pdfreaderallpdfreader.ads.admob.AdmobBannerUtils
import
com.base.pdfreaderallpdfreader.ads.admob.AdmobInterstitialUtils
import
com.base.pdfreaderallpdfreader.base.BaseActivity
import
com.base.pdfreaderallpdfreader.bean.ConstObject.NOTIFICATION_ACTION_BOOKMARK
import
com.base.pdfreaderallpdfreader.bean.ConstObject.NOTIFICATION_ACTION_NEW_IMAGE_PDF
...
...
@@ -32,6 +32,7 @@ import com.base.pdfreaderallpdfreader.helper.ConfigHelper
import
com.base.pdfreaderallpdfreader.ui.feedback.FeedbackActivity
import
com.base.pdfreaderallpdfreader.ui.language.LanguageActivity
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.showNotificationDialog
import
com.base.pdfreaderallpdfreader.ui.view.MainDialog.showStoragePermission
...
...
@@ -114,19 +115,21 @@ class MainActivity : BaseActivity<ActivityMainBinding>() {
addDeskShortCut
()
}
private
var
jump
Permission
:
Boolean
=
false
private
var
jump
OutPage
:
Boolean
=
false
override
fun
onResume
()
{
super
.
onResume
()
LogEx
.
logDebug
(
TAG
,
"onResume"
)
if
(
checkStorePermission
())
{
if
(!
jump
Permission
)
{
if
(!
jump
OutPage
)
{
showMainBanner
()
}
jumpPermission
=
false
}
else
{
showStoragePermission
(
launcher
,
jumpAction
=
{
jumpPermission
=
true
})
if
(!
jumpOutPage
)
{
showStoragePermission
(
launcher
,
jumpAction
=
{
jumpOutPage
=
true
})
}
}
jumpOutPage
=
false
}
override
fun
initListener
()
{
super
.
initListener
()
...
...
@@ -152,11 +155,11 @@ class MainActivity : BaseActivity<ActivityMainBinding>() {
binding
.
llLanguage
.
setOnClickListener
{
startActivity
(
Intent
(
this
,
LanguageActivity
::
class
.
java
))
}
binding
.
includeMain
.
includeContentMain
.
ivScan
.
setOnClickListener
{
showStoragePermission
(
launcher
)
}
binding
.
includeMain
.
ivSearch
.
setOnClickListener
{
showStoragePermission
(
launcher
)
startActivity
(
Intent
(
this
,
SearchActivity
::
class
.
java
))
}
binding
.
includeMain
.
includeContentMain
.
ivScan
.
setOnClickListener
{
starAdGmsScan
()
}
binding
.
llFileManager
.
setOnClickListener
{
val
intent
=
Intent
(
Intent
.
ACTION_OPEN_DOCUMENT
)
...
...
@@ -164,6 +167,7 @@ class MainActivity : BaseActivity<ActivityMainBinding>() {
intent
.
setType
(
"application/pdf"
)
intent
.
flags
=
Intent
.
FLAG_GRANT_WRITE_URI_PERMISSION
jumpOutPage
=
true
launcher
.
launch
(
intent
)
{
val
uri
=
it
.
data
?.
data
uri
?.
let
{
...
...
@@ -211,6 +215,7 @@ class MainActivity : BaseActivity<ActivityMainBinding>() {
}
NOTIFICATION_ACTION_NEW_IMAGE_PDF
->
{
jumpOutPage
=
true
mainViewModel
.
starGmsScan
(
this
)
}
}
...
...
@@ -243,13 +248,16 @@ class MainActivity : BaseActivity<ActivityMainBinding>() {
private
fun
starAdGmsScan
()
{
if
(
AdmobHelper
.
isShowScanInter
()
&&
AdmobHelper
.
canCommonShowAd
())
{
com
.
base
.
pdfreaderallpdfreader
.
ads
.
admob
.
AdmobInterstitialUtils
.
showInterstitialAd
(
this
)
{
jumpOutPage
=
true
AdmobInterstitialUtils
.
showInterstitialAd
(
this
)
{
if
(
it
)
{
lastScanShowAd
=
System
.
currentTimeMillis
()
}
jumpOutPage
=
true
mainViewModel
.
starGmsScan
(
this
)
}
}
else
{
jumpOutPage
=
true
mainViewModel
.
starGmsScan
(
this
)
}
...
...
app/src/main/java/com/base/pdfreaderallpdfreader/ui/main/recent/RecentFragment.kt
View file @
390e2591
...
...
@@ -22,6 +22,7 @@ import com.base.pdfreaderallpdfreader.utils.PdfBoxUtils.checkPdfEncryption
import
com.base.pdfreaderallpdfreader.utils.SpStringUtils
import
com.base.pdfreaderallpdfreader.utils.SpStringUtils.BOOKMARK_KEY
import
kotlinx.coroutines.Dispatchers
import
kotlinx.coroutines.delay
import
kotlinx.coroutines.launch
import
java.io.File
import
kotlin.random.Random
...
...
@@ -119,12 +120,11 @@ class RecentFragment() : Fragment(), DialogCallBack {
}
private
fun
initData
()
{
// if (!recentNeedRefresh) return
// recentNeedRefresh = false
binding
.
swipeRefreshLayout
.
isRefreshing
=
true
lifecycleScope
.
launch
(
Dispatchers
.
IO
)
{
launch
(
Dispatchers
.
Main
)
{
delay
(
5000
)
binding
.
swipeRefreshLayout
.
isRefreshing
=
false
}
val
recentList
=
recentViewModel
.
getRecentDocument
(
requireContext
())
launch
(
Dispatchers
.
Main
)
{
if
(
recentList
.
isEmpty
())
{
...
...
app/src/main/java/com/base/pdfreaderallpdfreader/ui/pdf/PdfActivity.kt
View file @
390e2591
...
...
@@ -482,15 +482,17 @@ class PdfActivity : BaseActivity<ActivityPdfBinding>() {
private
fun
createPdfUI
()
{
if
(
muPDFCore
==
null
)
return
binding
.
tvPageCount
.
text
=
"1/${muPDFCore?.countPages()}"
val
countPages
=
muPDFCore
?.
countPages
()
binding
.
tvPageCount
.
text
=
"1/${countPages}"
binding
.
mupdfReaderView
.
setListener
(
object
:
MuPDFReaderViewListener
{
@SuppressLint
(
"SetTextI18n"
)
override
fun
onMoveToChild
(
i
:
Int
)
{
binding
.
tvPageCount
.
text
=
"${i + 1}/$
{muPDFCore?.countPages()
}"
binding
.
tvPageCount
.
text
=
"${i + 1}/$
countPages
}"
pdfPageAdapter
.
changeSelectPager
(
i
)
binding
.
rvPager
.
scrollToPosition
(
i
)
setVerticalSeekbar
(
i
+
1
,
muPDFCore
?.
countPages
()
?:
0
)
setVerticalSeekbar
(
i
+
1
,
countPages
?:
0
)
}
override
fun
onTapMainDocArea
()
{
...
...
app/src/main/java/com/base/pdfreaderallpdfreader/ui/splash/MyStartActivity.kt
View file @
390e2591
...
...
@@ -18,11 +18,14 @@ import com.base.pdfreaderallpdfreader.ads.AdmobHelper.initAdmobAd
import
com.base.pdfreaderallpdfreader.ads.admob.AdmobInterstitialUtils
import
com.base.pdfreaderallpdfreader.ads.admob.AdmobOpenUtils
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.NOTIFICATION_ACTION_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_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.isFirstStart
import
com.base.pdfreaderallpdfreader.databinding.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
->
{
LogEx
.
logDebug
(
TAG
,
"show main handle actionId $actionId"
)
startActivity
(
Intent
(
this
,
MainActivity
::
class
.
java
).
apply
{
...
...
app/src/main/java/com/base/pdfreaderallpdfreader/ui/view/MainDialog.kt
View file @
390e2591
...
...
@@ -56,7 +56,7 @@ object MainDialog {
dialog
.
setOnDismissListener
{
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
spannableString
=
SpannableString
(
text
)
val
startIndex
=
text
.
indexOf
(
redText
)
...
...
app/src/main/java/com/base/pdfreaderallpdfreader/ui/view/PdfDialog.kt
View file @
390e2591
...
...
@@ -27,6 +27,7 @@ import com.base.pdfreaderallpdfreader.utils.KotlinExt.toFormatSize
import
com.base.pdfreaderallpdfreader.utils.KotlinExt.toFormatTime
import
com.base.pdfreaderallpdfreader.utils.LogEx
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.BOOKMARK_KEY
import
com.base.pdfreaderallpdfreader.utils.ToastUtils.toast
...
...
app/src/main/res/layout/activity_search.xml
View file @
390e2591
...
...
@@ -95,7 +95,7 @@
android:layout_height=
"wrap_content"
android:layout_gravity=
"center_horizontal"
android:layout_marginTop=
"8dp"
android:text=
"@string/no_re
cen
t"
android:text=
"@string/no_re
sul
t"
android:textColor=
"#2A2A2A"
android:textSize=
"15sp"
android:textStyle=
"bold"
/>
...
...
app/src/main/res/layout/stay_notification_big.xml
View file @
390e2591
...
...
@@ -37,6 +37,7 @@
android:layout_width=
"30dp"
android:layout_height=
"30dp"
android:layout_gravity=
"center_horizontal"
android:layout_marginTop=
"3dp"
android:src=
"@mipmap/pdf_document"
tools:ignore=
"ContentDescription"
/>
...
...
@@ -44,7 +45,7 @@
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center_horizontal"
android:layout_marginTop=
"
2
dp"
android:layout_marginTop=
"
5
dp"
android:includeFontPadding=
"false"
android:text=
"Document"
android:textColor=
"@color/black"
...
...
@@ -65,6 +66,7 @@
android:layout_width=
"30dp"
android:layout_height=
"30dp"
android:layout_gravity=
"center_horizontal"
android:layout_marginTop=
"3dp"
android:src=
"@mipmap/pdf_bookmark"
tools:ignore=
"ContentDescription"
/>
...
...
@@ -72,7 +74,7 @@
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center_horizontal"
android:layout_marginTop=
"
2
dp"
android:layout_marginTop=
"
5
dp"
android:includeFontPadding=
"false"
android:text=
"Bookmark"
android:textColor=
"@color/black"
...
...
@@ -94,6 +96,7 @@
android:layout_width=
"30dp"
android:layout_height=
"30dp"
android:layout_gravity=
"center_horizontal"
android:layout_marginTop=
"3dp"
android:src=
"@mipmap/pdf_image"
tools:ignore=
"ContentDescription"
/>
...
...
@@ -101,7 +104,7 @@
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center_horizontal"
android:layout_marginTop=
"
2
dp"
android:layout_marginTop=
"
5
dp"
android:includeFontPadding=
"false"
android:text=
"Image PDF"
android:textColor=
"@color/black"
...
...
app/src/main/res/values/strings.xml
View file @
390e2591
...
...
@@ -113,6 +113,7 @@
<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_unlock"
>
Select a project to unlock
</string>
<string
name=
"no_result"
>
No Result
</string>
</resources>
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment