Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Sign in / Register
Toggle navigation
S
Super PDF 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
Super PDF Reader
Commits
16983440
Commit
16983440
authored
Jun 28, 2024
by
wanglei
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
...需同步到功能...
parent
2d1715ce
Hide whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
212 additions
and
26 deletions
+212
-26
AndroidManifest.xml
app/src/main/AndroidManifest.xml
+24
-15
MainActivity.kt
app/src/main/java/com/base/superpdfreader/MainActivity.kt
+3
-4
ImageSelectionActivity.kt
...om/base/superpdfreader/activity/ImageSelectionActivity.kt
+14
-1
SplashActivity.kt
...n/java/com/base/superpdfreader/activity/SplashActivity.kt
+65
-0
DocumentListFragment.kt
.../com/base/superpdfreader/fragment/DocumentListFragment.kt
+8
-4
BarUtils.kt
app/src/main/java/com/base/superpdfreader/utils/BarUtils.kt
+0
-2
shape_splash_s.xml
app/src/main/res/drawable/shape_splash_s.xml
+25
-0
splash_bp.xml
app/src/main/res/drawable/splash_bp.xml
+11
-0
activity_splash.xml
app/src/main/res/layout/activity_splash.xml
+62
-0
logo.png
app/src/main/res/mipmap-xxhdpi/logo.png
+0
-0
qdylogo.png
app/src/main/res/mipmap-xxhdpi/qdylogo.png
+0
-0
No files found.
app/src/main/AndroidManifest.xml
View file @
16983440
...
@@ -12,13 +12,35 @@
...
@@ -12,13 +12,35 @@
android:allowBackup=
"true"
android:allowBackup=
"true"
android:dataExtractionRules=
"@xml/data_extraction_rules"
android:dataExtractionRules=
"@xml/data_extraction_rules"
android:fullBackupContent=
"@xml/backup_rules"
android:fullBackupContent=
"@xml/backup_rules"
android:icon=
"@mipmap/
ic_launcher
"
android:icon=
"@mipmap/
logo
"
android:label=
"@string/app_name"
android:label=
"@string/app_name"
android:roundIcon=
"@mipmap/
ic_launcher_round
"
android:roundIcon=
"@mipmap/
logo
"
android:supportsRtl=
"true"
android:supportsRtl=
"true"
android:theme=
"@style/Theme.SuperPDFReader"
android:theme=
"@style/Theme.SuperPDFReader"
tools:targetApi=
"33"
>
tools:targetApi=
"33"
>
<activity
android:name=
".activity.SplashActivity"
android:exported=
"true"
android:launchMode=
"singleTask"
android:screenOrientation=
"portrait"
tools:ignore=
"DiscouragedApi,LockedOrientationActivity"
>
<intent-filter>
<action
android:name=
"android.intent.action.MAIN"
/>
<category
android:name=
"android.intent.category.LAUNCHER"
/>
</intent-filter>
</activity>
<activity
android:name=
".MainActivity"
android:exported=
"true"
android:launchMode=
"singleTask"
android:screenOrientation=
"portrait"
tools:ignore=
"DiscouragedApi,LockedOrientationActivity"
>
</activity>
<activity
<activity
android:name=
".activity.PdfConvertedActivity"
android:name=
".activity.PdfConvertedActivity"
android:exported=
"false"
android:exported=
"false"
...
@@ -43,18 +65,7 @@
...
@@ -43,18 +65,7 @@
android:launchMode=
"singleTop"
android:launchMode=
"singleTop"
android:screenOrientation=
"portrait"
android:screenOrientation=
"portrait"
tools:ignore=
"DiscouragedApi,LockedOrientationActivity"
/>
tools:ignore=
"DiscouragedApi,LockedOrientationActivity"
/>
<activity
android:name=
".MainActivity"
android:exported=
"true"
android:launchMode=
"singleTask"
android:screenOrientation=
"portrait"
tools:ignore=
"DiscouragedApi,LockedOrientationActivity"
>
<intent-filter>
<action
android:name=
"android.intent.action.MAIN"
/>
<category
android:name=
"android.intent.category.LAUNCHER"
/>
</intent-filter>
</activity>
<provider
<provider
android:name=
"androidx.core.content.FileProvider"
android:name=
"androidx.core.content.FileProvider"
...
@@ -69,8 +80,6 @@
...
@@ -69,8 +80,6 @@
<meta-data
<meta-data
android:name=
"com.facebook.sdk.ApplicationId"
android:name=
"com.facebook.sdk.ApplicationId"
android:value=
"@string/facebook_app_id"
/>
android:value=
"@string/facebook_app_id"
/>
</application>
</application>
</manifest>
</manifest>
\ No newline at end of file
app/src/main/java/com/base/superpdfreader/MainActivity.kt
View file @
16983440
...
@@ -46,16 +46,15 @@ class MainActivity : BaseActivity<ActivityMainBinding>() {
...
@@ -46,16 +46,15 @@ class MainActivity : BaseActivity<ActivityMainBinding>() {
initPage
()
initPage
()
intTab
()
intTab
()
}
override
fun
onResume
()
{
super
.
onResume
()
if
(
checkStorePermission
())
{
if
(
checkStorePermission
())
{
updateMediaStore
()
updateMediaStore
()
showFloatAction
()
}
}
}
}
fun
showFloatAction
()
{
binding
.
fab
.
visibility
=
View
.
VISIBLE
}
override
fun
initListener
()
{
override
fun
initListener
()
{
binding
.
fab
.
setOnClickListener
{
binding
.
fab
.
setOnClickListener
{
...
...
app/src/main/java/com/base/superpdfreader/activity/ImageSelectionActivity.kt
View file @
16983440
...
@@ -13,7 +13,10 @@ import com.base.superpdfreader.databinding.ActivityImageSelectionBinding
...
@@ -13,7 +13,10 @@ import com.base.superpdfreader.databinding.ActivityImageSelectionBinding
import
com.base.superpdfreader.helps.BaseActivity
import
com.base.superpdfreader.helps.BaseActivity
import
com.base.superpdfreader.helps.LogEx
import
com.base.superpdfreader.helps.LogEx
import
com.base.superpdfreader.helps.MediaStoreHelp.getMediaImage
import
com.base.superpdfreader.helps.MediaStoreHelp.getMediaImage
import
com.base.superpdfreader.helps.PermissionHelp.checkStorePermission
import
com.base.superpdfreader.helps.PermissionHelp.requestStorePermission
import
com.base.superpdfreader.utils.BarUtils
import
com.base.superpdfreader.utils.BarUtils
import
com.base.superpdfreader.view.DialogViews.showGerPermission
import
kotlinx.coroutines.Dispatchers
import
kotlinx.coroutines.Dispatchers
import
kotlinx.coroutines.launch
import
kotlinx.coroutines.launch
import
java.io.File
import
java.io.File
...
@@ -45,7 +48,17 @@ class ImageSelectionActivity : BaseActivity<ActivityImageSelectionBinding>() {
...
@@ -45,7 +48,17 @@ class ImageSelectionActivity : BaseActivity<ActivityImageSelectionBinding>() {
})
})
binding
.
rvSelectedImage
.
adapter
=
selectedAdapter
binding
.
rvSelectedImage
.
adapter
=
selectedAdapter
initData
()
if
(
checkStorePermission
())
{
initData
()
}
else
{
showGerPermission
(
null
,
deny
=
{
finishToMain
()
},
allow
=
{
requestStorePermission
(
launcher
,
jumpAction
=
{},
result
=
{
flag
->
if
(
flag
)
{
initData
()
}
})
})
}
}
}
private
fun
selectedImageRemoveAction
(
imageBean
:
ImageBean
)
{
private
fun
selectedImageRemoveAction
(
imageBean
:
ImageBean
)
{
...
...
app/src/main/java/com/base/superpdfreader/activity/SplashActivity.kt
0 → 100644
View file @
16983440
package
com.base.superpdfreader.activity
import
android.annotation.SuppressLint
import
android.content.Intent
import
android.graphics.Color
import
androidx.lifecycle.lifecycleScope
import
com.base.superpdfreader.MainActivity
import
com.base.superpdfreader.databinding.ActivitySplashBinding
import
com.base.superpdfreader.helps.BaseActivity
import
com.base.superpdfreader.utils.BarUtils
import
kotlinx.coroutines.Job
import
kotlinx.coroutines.channels.BufferOverflow
import
kotlinx.coroutines.delay
import
kotlinx.coroutines.flow.MutableSharedFlow
import
kotlinx.coroutines.flow.SharedFlow
import
kotlinx.coroutines.flow.collectLatest
import
kotlinx.coroutines.isActive
import
kotlinx.coroutines.launch
import
kotlin.random.Random
@SuppressLint
(
"CustomSplashScreen"
)
class
SplashActivity
:
BaseActivity
<
ActivitySplashBinding
>()
{
private
lateinit
var
job
:
Job
private
val
progress
=
MutableSharedFlow
<
Int
>()
private
val
progressFlow
:
SharedFlow
<
Int
>
=
progress
override
val
binding
:
ActivitySplashBinding
by
lazy
{
ActivitySplashBinding
.
inflate
(
layoutInflater
)
}
override
fun
initView
()
{
BarUtils
.
setStatusBarLightMode
(
this
,
true
)
BarUtils
.
setStatusBarColor
(
this
,
Color
.
TRANSPARENT
)
lifecycleScope
.
launch
{
progressFlow
.
collectLatest
{
if
(
it
>=
100
)
{
startActivity
(
Intent
(
this
@SplashActivity
,
MainActivity
::
class
.
java
))
finish
()
}
}
}
}
fun
startProgress
()
=
lifecycleScope
.
launch
{
while
(
isActive
)
{
delay
(
Random
.
nextLong
(
50
,
150
))
val
value
=
binding
.
pb
.
progress
+
Random
.
nextInt
(
3
,
5
)
binding
.
pb
.
setProgress
(
value
,
true
)
progress
.
emit
(
value
)
}
}
override
fun
onResume
()
{
super
.
onResume
()
job
=
startProgress
()
}
override
fun
onPause
()
{
super
.
onPause
()
job
.
cancel
()
}
}
\ No newline at end of file
app/src/main/java/com/base/superpdfreader/fragment/DocumentListFragment.kt
View file @
16983440
...
@@ -2,6 +2,8 @@ package com.base.superpdfreader.fragment
...
@@ -2,6 +2,8 @@ package com.base.superpdfreader.fragment
import
android.app.Dialog
import
android.app.Dialog
import
android.net.Uri
import
android.net.Uri
import
android.os.Bundle
import
android.view.View
import
androidx.core.content.ContextCompat
import
androidx.core.content.ContextCompat
import
androidx.core.view.isVisible
import
androidx.core.view.isVisible
import
androidx.lifecycle.lifecycleScope
import
androidx.lifecycle.lifecycleScope
...
@@ -31,7 +33,6 @@ class DocumentListFragment() : BaseFragment<FragmentDocumentListBinding>() {
...
@@ -31,7 +33,6 @@ class DocumentListFragment() : BaseFragment<FragmentDocumentListBinding>() {
FragmentDocumentListBinding
.
inflate
(
layoutInflater
)
FragmentDocumentListBinding
.
inflate
(
layoutInflater
)
}
}
override
fun
setView
()
{
override
fun
setView
()
{
when
(
UI_MODE
)
{
when
(
UI_MODE
)
{
MODE_PDF
->
{
MODE_PDF
->
{
...
@@ -69,10 +70,10 @@ class DocumentListFragment() : BaseFragment<FragmentDocumentListBinding>() {
...
@@ -69,10 +70,10 @@ class DocumentListFragment() : BaseFragment<FragmentDocumentListBinding>() {
}
}
binding
.
rv
.
adapter
=
adapter
binding
.
rv
.
adapter
=
adapter
}
if
(
requireContext
().
checkStorePermission
())
{
override
fun
onViewCreated
(
view
:
View
,
savedInstanceState
:
Bundle
?)
{
initData
()
super
.
onViewCreated
(
view
,
savedInstanceState
)
}
}
}
override
fun
setListener
()
{
override
fun
setListener
()
{
...
@@ -153,6 +154,9 @@ class DocumentListFragment() : BaseFragment<FragmentDocumentListBinding>() {
...
@@ -153,6 +154,9 @@ class DocumentListFragment() : BaseFragment<FragmentDocumentListBinding>() {
override
fun
onResume
()
{
override
fun
onResume
()
{
super
.
onResume
()
super
.
onResume
()
binding
.
llPermission
.
isVisible
=
!
requireContext
().
checkStorePermission
()
binding
.
llPermission
.
isVisible
=
!
requireContext
().
checkStorePermission
()
if
(
requireContext
().
checkStorePermission
())
{
initData
()
}
}
}
companion
object
{
companion
object
{
...
...
app/src/main/java/com/base/superpdfreader/utils/BarUtils.kt
View file @
16983440
package
com.base.superpdfreader.utils
package
com.base.superpdfreader.utils
//noinspection SuspiciousImport
import
android.app.Activity
import
android.app.Activity
import
android.content.Context
import
android.content.Context
import
android.content.res.Resources
import
android.content.res.Resources
...
@@ -12,7 +11,6 @@ import android.view.Window
...
@@ -12,7 +11,6 @@ import android.view.Window
import
android.view.WindowManager
import
android.view.WindowManager
import
androidx.annotation.ColorInt
import
androidx.annotation.ColorInt
object
BarUtils
{
object
BarUtils
{
...
...
app/src/main/res/drawable/shape_splash_s.xml
0 → 100644
View file @
16983440
<?xml version="1.0" encoding="utf-8"?>
<layer-list
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<item
android:id=
"@android:id/background"
>
<shape>
<stroke
android:width=
"1px"
android:color=
"#FF3835"
/>
<corners
android:radius=
"6dp"
/>
</shape>
</item>
<item
android:id=
"@android:id/progress"
android:bottom=
"3dp"
android:end=
"3dp"
android:start=
"3dp"
android:top=
"3dp"
>
<scale
android:scaleWidth=
"100%"
>
<shape>
<corners
android:radius=
"5dp"
/>
<solid
android:color=
"#FF3835"
/>
</shape>
</scale>
</item>
</layer-list>
\ No newline at end of file
app/src/main/res/drawable/splash_bp.xml
0 → 100644
View file @
16983440
<?xml version="1.0" encoding="utf-8"?>
<layer-list
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<item
android:drawable=
"@color/white"
/>
<!-- <item android:drawable="@drawable/splash_bg" />-->
<item
android:top=
"130dp"
android:gravity=
"top|center_horizontal"
>
<bitmap
android:src=
"@mipmap/qdylogo"
/>
</item>
</layer-list>
\ No newline at end of file
app/src/main/res/layout/activity_splash.xml
0 → 100644
View file @
16983440
<?xml version="1.0" encoding="utf-8"?>
<androidx.appcompat.widget.LinearLayoutCompat
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:tools=
"http://schemas.android.com/tools"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:background=
"@drawable/splash_bp"
android:gravity=
"center_horizontal"
android:orientation=
"vertical"
>
<View
android:layout_width=
"0dp"
android:layout_height=
"0dp"
android:layout_weight=
"1"
/>
<View
android:layout_width=
"0dp"
android:layout_height=
"0dp"
android:layout_weight=
"2"
/>
<androidx.appcompat.widget.LinearLayoutCompat
android:id=
"@+id/id_ll_jindu"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginBottom=
"49dp"
android:gravity=
"center_horizontal"
android:orientation=
"vertical"
>
<ProgressBar
android:layout_marginTop=
"5dp"
android:id=
"@+id/pb"
style=
"@style/Widget.AppCompat.ProgressBar.Horizontal"
android:layout_width=
"match_parent"
android:layout_height=
"15dp"
android:layout_marginHorizontal=
"32dp"
android:max=
"100"
android:progressDrawable=
"@drawable/shape_splash_s"
tools:progress=
"50"
/>
<TextView
android:id=
"@+id/tv_load"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"18dp"
android:text=
"Loading..."
android:textColor=
"#000000"
android:textSize=
"15sp"
tools:ignore=
"HardcodedText"
/>
<TextView
android:id=
"@+id/tv_ad_des"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"42dp"
android:text=
"This process may involve ad."
android:textColor=
"#000000"
android:textSize=
"15sp"
tools:ignore=
"HardcodedText"
/>
</androidx.appcompat.widget.LinearLayoutCompat>
</androidx.appcompat.widget.LinearLayoutCompat>
\ No newline at end of file
app/src/main/res/mipmap-xxhdpi/logo.png
0 → 100644
View file @
16983440
49.5 KB
app/src/main/res/mipmap-xxhdpi/qdylogo.png
0 → 100644
View file @
16983440
37.7 KB
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