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
5be40c4b
Commit
5be40c4b
authored
Jun 25, 2024
by
wanglei
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
...提交部分功能...
parent
4ad226de
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
33 changed files
with
727 additions
and
102 deletions
+727
-102
build.gradle
app/build.gradle
+24
-20
proguard-rules.pro
app/proguard-rules.pro
+9
-1
AndroidManifest.xml
app/src/main/AndroidManifest.xml
+3
-0
MainActivity.kt
app/src/main/java/com/base/superpdfreader/MainActivity.kt
+47
-48
ImageSelectionActivity.kt
...om/base/superpdfreader/activity/ImageSelectionActivity.kt
+8
-1
ImageToPdfActivity.kt
...va/com/base/superpdfreader/activity/ImageToPdfActivity.kt
+38
-0
PdfConvertedActivity.kt
.../com/base/superpdfreader/activity/PdfConvertedActivity.kt
+21
-0
ImageDragAdapter.kt
.../java/com/base/superpdfreader/adapter/ImageDragAdapter.kt
+8
-0
PdfParameterBean.kt
...ain/java/com/base/superpdfreader/bean/PdfParameterBean.kt
+16
-0
DocumentListFragment.kt
.../com/base/superpdfreader/fragment/DocumentListFragment.kt
+17
-8
MediaStoreHelp.kt
...main/java/com/base/superpdfreader/helps/MediaStoreHelp.kt
+5
-4
DialogViews.kt
...src/main/java/com/base/superpdfreader/view/DialogViews.kt
+0
-2
PDFSaveDialog.kt
...c/main/java/com/base/superpdfreader/view/PDFSaveDialog.kt
+96
-0
bg_selector_fang.xml
app/src/main/res/drawable/bg_selector_fang.xml
+6
-0
activity_image_drag.xml
app/src/main/res/layout/activity_image_drag.xml
+61
-1
activity_main.xml
app/src/main/res/layout/activity_main.xml
+2
-2
activity_pdf_converted.xml
app/src/main/res/layout/activity_pdf_converted.xml
+10
-0
dialog_pdf_create_converter.xml
app/src/main/res/layout/dialog_pdf_create_converter.xml
+3
-0
dialog_pdf_parameters.xml
app/src/main/res/layout/dialog_pdf_parameters.xml
+10
-0
dialog_pdf_save.xml
app/src/main/res/layout/dialog_pdf_save.xml
+298
-0
item_image_drag.xml
app/src/main/res/layout/item_image_drag.xml
+10
-10
item_paf_parameters.xml
app/src/main/res/layout/item_paf_parameters.xml
+12
-0
delete.png
app/src/main/res/mipmap-xxhdpi/delete.png
+0
-0
guanbi.png
app/src/main/res/mipmap-xxhdpi/guanbi.png
+0
-0
paipanicon.png
app/src/main/res/mipmap-xxhdpi/paipanicon.png
+0
-0
tianjia.png
app/src/main/res/mipmap-xxhdpi/tianjia.png
+0
-0
weixuan_fang.png
app/src/main/res/mipmap-xxhdpi/weixuan_fang.png
+0
-0
xiala.png
app/src/main/res/mipmap-xxhdpi/xiala.png
+0
-0
xuanzhong_fang.png
app/src/main/res/mipmap-xxhdpi/xuanzhong_fang.png
+0
-0
yidong.png
app/src/main/res/mipmap-xxhdpi/yidong.png
+0
-0
strings.xml
app/src/main/res/values/strings.xml
+0
-1
libs.versions.toml
gradle/libs.versions.toml
+2
-2
settings.gradle
settings.gradle
+21
-2
No files found.
app/build.gradle
View file @
5be40c4b
...
@@ -39,37 +39,41 @@ android {
...
@@ -39,37 +39,41 @@ android {
dependencies
{
dependencies
{
implementation
libs
.
androidx
.
core
.
ktx
implementation
(
libs
.
androidx
.
core
.
ktx
)
implementation
libs
.
androidx
.
appcompat
implementation
(
libs
.
androidx
.
appcompat
)
implementation
libs
.
material
implementation
(
libs
.
material
)
implementation
libs
.
androidx
.
activity
implementation
(
libs
.
androidx
.
activity
)
implementation
libs
.
androidx
.
constraintlayout
implementation
(
libs
.
androidx
.
constraintlayout
)
testImplementation
libs
.
junit
testImplementation
(
libs
.
junit
)
androidTestImplementation
libs
.
androidx
.
junit
androidTestImplementation
(
libs
.
androidx
.
junit
)
androidTestImplementation
libs
.
androidx
.
espresso
.
core
androidTestImplementation
(
libs
.
androidx
.
espresso
.
core
)
implementation
"androidx.swiperefreshlayout:swiperefreshlayout:1.1.0"
implementation
(
"androidx.swiperefreshlayout:swiperefreshlayout:1.1.0"
)
implementation
'com.google.android.material:material:1.4.0'
implementation
(
"com.google.android.material:material:1.4.0"
)
//网络
implementation
(
"com.google.code.gson:gson:2.10.1"
)
//ui第三方
//ui第三方
implementation
(
"com.github.JavaNoober.BackgroundLibrary:libraryx:1.7.6"
)
implementation
(
"com.github.JavaNoober.BackgroundLibrary:libraryx:1.7.6"
)
implementation
'com.github.bumptech.glide:glide:4.16.0'
implementation
(
"com.github.bumptech.glide:glide:4.16.0"
)
// implementation 'com.airbnb.android:lottie:6.4.0'
implementation
(
"com.airbnb.android:lottie:6.4.0"
)
implementation
'com.airbnb.android:lottie:6.4.0'
//XLS表格
//XLS表格
implementation
'com.github.huangyanbin:SmartTable:2.2.0'
implementation
(
"com.github.huangyanbin:SmartTable:2.2.0"
)
//pdf浏览
//pdf浏览
//https://github.com/DImuthuUpe/AndroidPdfViewer
//https://github.com/DImuthuUpe/AndroidPdfViewer
implementation
'com.github.barteksc:android-pdf-viewer:2.8.2'
implementation
(
"com.github.barteksc:android-pdf-viewer:2.8.2"
)
//pdf文件操作
//pdf文件操作
implementation
'com.github.barteksc:pdfium-android:1.7.1'
implementation
(
"com.github.barteksc:pdfium-android:1.7.1"
)
//apache / poi 内容提取
//apache / poi 内容提取
//有个问题是gradle版本需要升级到8.4
//有个问题是gradle版本需要升级到8.4
//https://github.com/apache/poi
//https://github.com/apache/poi
implementation
'org.apache.poi:poi-ooxml:5.2.5'
implementation
(
"org.apache.poi:poi-ooxml:5.2.5"
)
implementation
'org.apache.poi:poi-scratchpad:5.2.5'
implementation
(
"org.apache.poi:poi-scratchpad:5.2.5"
)
implementation
'com.fasterxml:aalto-xml:1.3.0'
//XML格式数据的解析和生成,通过Jackson XML模块。
implementation
(
"com.fasterxml:aalto-xml:1.3.0"
)
//XML格式数据的解析和生成,通过Jackson XML模块。
implementation
'stax:stax-api:1.0.1'
//处理XML文档的Java API
implementation
(
"stax:stax-api:1.0.1"
)
//处理XML文档的Java API
}
}
\ No newline at end of file
app/proguard-rules.pro
View file @
5be40c4b
...
@@ -21,3 +21,11 @@
...
@@ -21,3 +21,11 @@
#-renamesourcefileattribute SourceFile
#-renamesourcefileattribute SourceFile
-
keep
class
com
.
shockwave
.
**
-
keep
class
com
.
shockwave
.
**
-
dontoptimize
-
keepattributes
Signature
-
keep
class
com
.
google
.
gson
.
stream
.
**
{
*
;
}
-
keep
class
com
.
google
.
gson
.
**
{
*
;
}
-
keep
class
com
.
alibaba
.
idst
.
**
{
*
;
}
-
keep
class
*
extends
com
.
google
.
gson
.
reflect
.
TypeToken
-
keepattributes
AnnotationDefault
,
RuntimeVisibleAnnotations
\ No newline at end of file
app/src/main/AndroidManifest.xml
View file @
5be40c4b
...
@@ -18,6 +18,9 @@
...
@@ -18,6 +18,9 @@
android:supportsRtl=
"true"
android:supportsRtl=
"true"
android:theme=
"@style/Theme.SuperPDFReader"
android:theme=
"@style/Theme.SuperPDFReader"
tools:targetApi=
"31"
>
tools:targetApi=
"31"
>
<activity
android:name=
".activity.PdfConvertedActivity"
android:exported=
"false"
/>
<activity
<activity
android:name=
".activity.ImageToPdfActivity"
android:name=
".activity.ImageToPdfActivity"
android:exported=
"false"
/>
android:exported=
"false"
/>
...
...
app/src/main/java/com/base/superpdfreader/MainActivity.kt
View file @
5be40c4b
...
@@ -3,6 +3,7 @@ package com.base.superpdfreader
...
@@ -3,6 +3,7 @@ package com.base.superpdfreader
import
android.annotation.SuppressLint
import
android.annotation.SuppressLint
import
android.content.res.ColorStateList
import
android.content.res.ColorStateList
import
android.graphics.Color
import
android.graphics.Color
import
android.view.View
import
androidx.core.content.ContextCompat
import
androidx.core.content.ContextCompat
import
androidx.fragment.app.Fragment
import
androidx.fragment.app.Fragment
import
androidx.fragment.app.FragmentActivity
import
androidx.fragment.app.FragmentActivity
...
@@ -36,15 +37,16 @@ class MainActivity : BaseActivity<ActivityMainBinding>() {
...
@@ -36,15 +37,16 @@ class MainActivity : BaseActivity<ActivityMainBinding>() {
private
val
pdfFragment
by
lazy
{
private
val
pdfFragment
by
lazy
{
DocumentListFragment
().
apply
{
UI_MODE
=
MODE_PDF
}
DocumentListFragment
().
apply
{
UI_MODE
=
MODE_PDF
}
}
}
private
val
wordFragment
by
lazy
{
DocumentListFragment
().
apply
{
UI_MODE
=
MODE_WORD
}
// private val wordFragment by lazy {
}
// DocumentListFragment().apply { UI_MODE = MODE_WORD }
private
val
pptFragment
by
lazy
{
// }
DocumentListFragment
().
apply
{
UI_MODE
=
MODE_PPT
}
// private val pptFragment by lazy {
}
// DocumentListFragment().apply { UI_MODE = MODE_PPT }
private
val
excelFragment
by
lazy
{
// }
DocumentListFragment
().
apply
{
UI_MODE
=
MODE_EXCEL
}
// private val excelFragment by lazy {
}
// DocumentListFragment().apply { UI_MODE = MODE_EXCEL }
// }
private
lateinit
var
pagerAdapter
:
DocumentPagerAdapter
private
lateinit
var
pagerAdapter
:
DocumentPagerAdapter
override
fun
initView
()
{
override
fun
initView
()
{
...
@@ -55,16 +57,13 @@ class MainActivity : BaseActivity<ActivityMainBinding>() {
...
@@ -55,16 +57,13 @@ class MainActivity : BaseActivity<ActivityMainBinding>() {
intTab
()
intTab
()
if
(
checkStorePermission
())
{
if
(
checkStorePermission
())
{
updateMediaStore
()
}
else
{
showFloatAction
()
dialog
=
showGerPermission
(
null
,
deny
=
{},
allow
=
{
requestStorePermission
(
launcher
=
launcher
,
result
=
{
flag
->
if
(
flag
)
{
}
}
})
})
}
}
updateMediaStore
()
fun
showFloatAction
()
{
binding
.
fab
.
visibility
=
View
.
VISIBLE
}
}
override
fun
initListener
()
{
override
fun
initListener
()
{
...
@@ -75,9 +74,9 @@ class MainActivity : BaseActivity<ActivityMainBinding>() {
...
@@ -75,9 +74,9 @@ class MainActivity : BaseActivity<ActivityMainBinding>() {
private
fun
initPage
()
{
private
fun
initPage
()
{
pages
.
add
(
pdfFragment
)
pages
.
add
(
pdfFragment
)
pages
.
add
(
wordFragment
)
//
pages.add(wordFragment)
pages
.
add
(
pptFragment
)
//
pages.add(pptFragment)
pages
.
add
(
excelFragment
)
//
pages.add(excelFragment)
pagerAdapter
=
DocumentPagerAdapter
(
this
)
pagerAdapter
=
DocumentPagerAdapter
(
this
)
binding
.
viewpager2
.
adapter
=
pagerAdapter
binding
.
viewpager2
.
adapter
=
pagerAdapter
binding
.
viewpager2
.
registerOnPageChangeCallback
(
object
:
OnPageChangeCallback
()
{
binding
.
viewpager2
.
registerOnPageChangeCallback
(
object
:
OnPageChangeCallback
()
{
...
@@ -88,22 +87,22 @@ class MainActivity : BaseActivity<ActivityMainBinding>() {
...
@@ -88,22 +87,22 @@ class MainActivity : BaseActivity<ActivityMainBinding>() {
binding
.
fab
.
setColorFilter
(
ContextCompat
.
getColor
(
this
@MainActivity
,
R
.
color
.
color_pdf
))
binding
.
fab
.
setColorFilter
(
ContextCompat
.
getColor
(
this
@MainActivity
,
R
.
color
.
color_pdf
))
}
}
1
->
{
//
1 -> {
binding
.
llTop
.
setBackgroundColor
(
ContextCompat
.
getColor
(
this
@MainActivity
,
R
.
color
.
color_word
))
//
binding.llTop.setBackgroundColor(ContextCompat.getColor(this@MainActivity, R.color.color_word))
binding
.
fab
.
setColorFilter
(
ContextCompat
.
getColor
(
this
@MainActivity
,
R
.
color
.
color_word
))
//
binding.fab.setColorFilter(ContextCompat.getColor(this@MainActivity, R.color.color_word))
//
}
//
}
//
2
->
{
//
2 -> {
binding
.
llTop
.
setBackgroundColor
(
ContextCompat
.
getColor
(
this
@MainActivity
,
R
.
color
.
color_ppt
))
//
binding.llTop.setBackgroundColor(ContextCompat.getColor(this@MainActivity, R.color.color_ppt))
binding
.
fab
.
setColorFilter
(
ContextCompat
.
getColor
(
this
@MainActivity
,
R
.
color
.
color_ppt
))
//
binding.fab.setColorFilter(ContextCompat.getColor(this@MainActivity, R.color.color_ppt))
//
}
//
}
//
3
->
{
//
3 -> {
binding
.
llTop
.
setBackgroundColor
(
ContextCompat
.
getColor
(
this
@MainActivity
,
R
.
color
.
color_excel
))
//
binding.llTop.setBackgroundColor(ContextCompat.getColor(this@MainActivity, R.color.color_excel))
binding
.
fab
.
setColorFilter
(
ContextCompat
.
getColor
(
this
@MainActivity
,
R
.
color
.
color_excel
))
//
binding.fab.setColorFilter(ContextCompat.getColor(this@MainActivity, R.color.color_excel))
}
//
}
}
}
}
}
})
})
...
@@ -122,17 +121,17 @@ class MainActivity : BaseActivity<ActivityMainBinding>() {
...
@@ -122,17 +121,17 @@ class MainActivity : BaseActivity<ActivityMainBinding>() {
tabBinding
.
tvTab
.
text
=
"PDF"
tabBinding
.
tvTab
.
text
=
"PDF"
}
}
1
->
{
//
1 -> {
tabBinding
.
tvTab
.
text
=
"Word"
//
tabBinding.tvTab.text = "Word"
}
//
}
//
2
->
{
//
2 -> {
tabBinding
.
tvTab
.
text
=
"PPT"
//
tabBinding.tvTab.text = "PPT"
}
//
}
//
3
->
{
//
3 -> {
tabBinding
.
tvTab
.
text
=
"Excel"
//
tabBinding.tvTab.text = "Excel"
}
//
}
}
}
tab
.
customView
=
tabBinding
.
root
tab
.
customView
=
tabBinding
.
root
}.
attach
()
}.
attach
()
...
...
app/src/main/java/com/base/superpdfreader/activity/ImageSelectionActivity.kt
View file @
5be40c4b
package
com.base.superpdfreader.activity
package
com.base.superpdfreader.activity
import
android.annotation.SuppressLint
import
android.content.Intent
import
android.content.Intent
import
android.graphics.Color
import
android.graphics.Color
import
android.net.Uri
import
android.net.Uri
...
@@ -52,6 +53,7 @@ class ImageSelectionActivity : BaseActivity<ActivityImageSelectionBinding>() {
...
@@ -52,6 +53,7 @@ class ImageSelectionActivity : BaseActivity<ActivityImageSelectionBinding>() {
binding
.
tvImport
.
isEnabled
=
imageSelectionAdapter
.
getSelectBeanSize
()
>
0
binding
.
tvImport
.
isEnabled
=
imageSelectionAdapter
.
getSelectBeanSize
()
>
0
}
}
@SuppressLint
(
"SetTextI18n"
)
private
fun
imageSelectAction
(
imageBean
:
ImageBean
)
{
private
fun
imageSelectAction
(
imageBean
:
ImageBean
)
{
if
(
imageBean
.
isSelect
)
{
if
(
imageBean
.
isSelect
)
{
selectedAdapter
.
addBean
(
imageBean
)
selectedAdapter
.
addBean
(
imageBean
)
...
@@ -77,7 +79,12 @@ class ImageSelectionActivity : BaseActivity<ActivityImageSelectionBinding>() {
...
@@ -77,7 +79,12 @@ class ImageSelectionActivity : BaseActivity<ActivityImageSelectionBinding>() {
finishToMain
()
finishToMain
()
}
}
binding
.
tvImport
.
setOnClickListener
{
binding
.
tvImport
.
setOnClickListener
{
startActivity
(
Intent
(
this
@ImageSelectionActivity
,
ImageToPdfActivity
::
class
.
java
))
startActivity
(
Intent
(
this
@ImageSelectionActivity
,
ImageToPdfActivity
::
class
.
java
)
.
apply
{
val
pathList
=
selectedAdapter
.
getSelectBean
().
map
{
it
.
path
}
putExtra
(
"PathList"
,
pathList
.
toTypedArray
())
}
)
}
}
}
}
...
...
app/src/main/java/com/base/superpdfreader/activity/ImageToPdfActivity.kt
View file @
5be40c4b
package
com.base.superpdfreader.activity
package
com.base.superpdfreader.activity
import
android.graphics.Color
import
androidx.activity.addCallback
import
com.base.superpdfreader.adapter.ImageDragAdapter
import
com.base.superpdfreader.bean.ImageBean
import
com.base.superpdfreader.databinding.ActivityImageDragBinding
import
com.base.superpdfreader.databinding.ActivityImageDragBinding
import
com.base.superpdfreader.helps.BaseActivity
import
com.base.superpdfreader.helps.BaseActivity
import
com.base.superpdfreader.utils.BarUtils
import
com.base.superpdfreader.view.PDFSaveDialog.showPDFSaveDialog
import
com.google.gson.Gson
class
ImageToPdfActivity
:
BaseActivity
<
ActivityImageDragBinding
>()
{
class
ImageToPdfActivity
:
BaseActivity
<
ActivityImageDragBinding
>()
{
override
val
binding
:
ActivityImageDragBinding
by
lazy
{
override
val
binding
:
ActivityImageDragBinding
by
lazy
{
ActivityImageDragBinding
.
inflate
(
layoutInflater
)
ActivityImageDragBinding
.
inflate
(
layoutInflater
)
}
}
private
lateinit
var
imageDragAdapter
:
ImageDragAdapter
private
val
pathList
by
lazy
{
val
beans
=
intent
.
getStringArrayExtra
(
"PathList"
)
?:
arrayOf
()
arrayListOf
<
ImageBean
>().
apply
{
addAll
(
beans
.
map
{
ImageBean
(
it
)
})
}
}
override
fun
initView
()
{
override
fun
initView
()
{
BarUtils
.
setStatusBarLightMode
(
this
,
true
)
BarUtils
.
setStatusBarColor
(
this
,
Color
.
TRANSPARENT
)
imageDragAdapter
=
ImageDragAdapter
()
binding
.
rv
.
adapter
=
imageDragAdapter
imageDragAdapter
.
setData
(
pathList
)
}
override
fun
initListener
()
{
super
.
initListener
()
binding
.
flBack
.
setOnClickListener
{
onBackPressedDispatcher
.
onBackPressed
()
}
onBackPressedDispatcher
.
addCallback
{
finish
()
}
binding
.
ivAdd
.
setOnClickListener
{
onBackPressedDispatcher
.
onBackPressed
()
}
binding
.
tvConvert
.
setOnClickListener
{
showPDFSaveDialog
{
}
}
}
}
}
}
\ No newline at end of file
app/src/main/java/com/base/superpdfreader/activity/PdfConvertedActivity.kt
0 → 100644
View file @
5be40c4b
package
com.base.superpdfreader.activity
import
android.os.Bundle
import
androidx.activity.enableEdgeToEdge
import
androidx.appcompat.app.AppCompatActivity
import
androidx.core.view.ViewCompat
import
androidx.core.view.WindowInsetsCompat
import
com.base.superpdfreader.R
import
com.base.superpdfreader.databinding.ActivityPdfConvertedBinding
import
com.base.superpdfreader.helps.BaseActivity
class
PdfConvertedActivity
:
BaseActivity
<
ActivityPdfConvertedBinding
>()
{
override
val
binding
:
ActivityPdfConvertedBinding
by
lazy
{
ActivityPdfConvertedBinding
.
inflate
(
layoutInflater
)
}
override
fun
initView
()
{
}
}
\ No newline at end of file
app/src/main/java/com/base/superpdfreader/adapter/ImageDragAdapter.kt
View file @
5be40c4b
...
@@ -8,6 +8,7 @@ import com.base.superpdfreader.R
...
@@ -8,6 +8,7 @@ import com.base.superpdfreader.R
import
com.base.superpdfreader.bean.ImageBean
import
com.base.superpdfreader.bean.ImageBean
import
com.base.superpdfreader.databinding.ItemImageDragBinding
import
com.base.superpdfreader.databinding.ItemImageDragBinding
import
com.base.superpdfreader.view.XmlEx.inflate
import
com.base.superpdfreader.view.XmlEx.inflate
import
com.bumptech.glide.Glide
class
ImageDragAdapter
:
RecyclerView
.
Adapter
<
ImageDragAdapter
.
AAA
>()
{
class
ImageDragAdapter
:
RecyclerView
.
Adapter
<
ImageDragAdapter
.
AAA
>()
{
...
@@ -28,5 +29,12 @@ class ImageDragAdapter : RecyclerView.Adapter<ImageDragAdapter.AAA>() {
...
@@ -28,5 +29,12 @@ class ImageDragAdapter : RecyclerView.Adapter<ImageDragAdapter.AAA>() {
val
context
=
holder
.
itemView
.
context
val
context
=
holder
.
itemView
.
context
val
bean
=
beanList
[
position
]
val
bean
=
beanList
[
position
]
Glide
.
with
(
context
).
load
(
bean
.
path
).
centerCrop
().
into
(
binding
.
iv
)
}
fun
setData
(
data
:
List
<
ImageBean
>)
{
beanList
.
clear
()
beanList
.
addAll
(
data
)
notifyDataSetChanged
()
}
}
}
}
\ No newline at end of file
app/src/main/java/com/base/superpdfreader/bean/PdfParameterBean.kt
0 → 100644
View file @
5be40c4b
package
com.base.superpdfreader.bean
data class
PdfParameterBean
(
var
orientation
:
Int
=
0
,
var
pageSize
:
Int
=
1
,
var
margin
:
Int
=
0
,
var
compression
:
Int
=
0
,
var
password
:
String
?
=
null
)
{
companion
object
{
val
arrayOrientation
=
arrayOf
(
"Portrait"
,
"Landscape"
)
val
arrayPageSize
=
arrayOf
(
"Fit(Sample page size as image)"
,
"A4 (297x210 mm)"
,
"Use Letter(215x279.4 mm)"
)
val
arrayMargin
=
arrayOf
(
"No margin"
,
"Small"
,
"Big"
)
val
arrayCompression
=
arrayOf
(
"Low"
,
"Medium"
,
"High"
)
}
}
app/src/main/java/com/base/superpdfreader/fragment/DocumentListFragment.kt
View file @
5be40c4b
package
com.base.superpdfreader.fragment
package
com.base.superpdfreader.fragment
import
android.app.Dialog
import
android.net.Uri
import
android.net.Uri
import
androidx.core.content.ContextCompat
import
androidx.core.content.ContextCompat
import
androidx.core.view.isVisible
import
androidx.core.view.isVisible
...
@@ -12,6 +13,7 @@ import com.base.superpdfreader.helps.BaseFragment
...
@@ -12,6 +13,7 @@ import com.base.superpdfreader.helps.BaseFragment
import
com.base.superpdfreader.helps.MediaStoreHelp.geFileMedia
import
com.base.superpdfreader.helps.MediaStoreHelp.geFileMedia
import
com.base.superpdfreader.helps.PermissionHelp.checkStorePermission
import
com.base.superpdfreader.helps.PermissionHelp.checkStorePermission
import
com.base.superpdfreader.helps.PermissionHelp.requestStorePermission
import
com.base.superpdfreader.helps.PermissionHelp.requestStorePermission
import
com.base.superpdfreader.view.DialogViews.showGerPermission
import
com.base.superpdfreader.view.DocumentDetailDialog.showDocumentDetailDialog
import
com.base.superpdfreader.view.DocumentDetailDialog.showDocumentDetailDialog
import
kotlinx.coroutines.Dispatchers
import
kotlinx.coroutines.Dispatchers
import
kotlinx.coroutines.launch
import
kotlinx.coroutines.launch
...
@@ -23,6 +25,7 @@ class DocumentListFragment() : BaseFragment<FragmentDocumentListBinding>() {
...
@@ -23,6 +25,7 @@ class DocumentListFragment() : BaseFragment<FragmentDocumentListBinding>() {
var
UI_MODE
:
String
=
MODE_PDF
var
UI_MODE
:
String
=
MODE_PDF
private
lateinit
var
adapter
:
DocumentAdapter
private
lateinit
var
adapter
:
DocumentAdapter
private
lateinit
var
dialog
:
Dialog
public
override
val
binding
:
FragmentDocumentListBinding
by
lazy
{
public
override
val
binding
:
FragmentDocumentListBinding
by
lazy
{
FragmentDocumentListBinding
.
inflate
(
layoutInflater
)
FragmentDocumentListBinding
.
inflate
(
layoutInflater
)
...
@@ -52,7 +55,8 @@ class DocumentListFragment() : BaseFragment<FragmentDocumentListBinding>() {
...
@@ -52,7 +55,8 @@ class DocumentListFragment() : BaseFragment<FragmentDocumentListBinding>() {
}
}
}
}
adapter
=
DocumentAdapter
{
bean
->
adapter
=
DocumentAdapter
{
bean
->
requireContext
().
showDocumentDetailDialog
(
UI_MODE
,
bean
)
val
launcher
=
(
requireActivity
()
as
MainActivity
).
launcher
requireContext
().
showDocumentDetailDialog
(
UI_MODE
,
bean
,
launcher
)
}
}
binding
.
rv
.
adapter
=
adapter
binding
.
rv
.
adapter
=
adapter
...
@@ -64,6 +68,8 @@ class DocumentListFragment() : BaseFragment<FragmentDocumentListBinding>() {
...
@@ -64,6 +68,8 @@ class DocumentListFragment() : BaseFragment<FragmentDocumentListBinding>() {
override
fun
setListener
()
{
override
fun
setListener
()
{
binding
.
tvAllow
.
setOnClickListener
{
binding
.
tvAllow
.
setOnClickListener
{
val
launcher
=
(
requireActivity
()
as
MainActivity
).
launcher
val
launcher
=
(
requireActivity
()
as
MainActivity
).
launcher
dialog
=
requireContext
().
showGerPermission
(
null
,
deny
=
{},
allow
=
{
requireContext
().
requestStorePermission
(
launcher
,
requireContext
().
requestStorePermission
(
launcher
,
jumpAction
=
{},
jumpAction
=
{},
result
=
{
flag
->
result
=
{
flag
->
...
@@ -71,6 +77,9 @@ class DocumentListFragment() : BaseFragment<FragmentDocumentListBinding>() {
...
@@ -71,6 +77,9 @@ class DocumentListFragment() : BaseFragment<FragmentDocumentListBinding>() {
initData
()
initData
()
}
}
)
)
})
}
}
binding
.
swipeRefresh
.
setOnRefreshListener
{
binding
.
swipeRefresh
.
setOnRefreshListener
{
binding
.
swipeRefresh
.
isRefreshing
=
false
binding
.
swipeRefresh
.
isRefreshing
=
false
...
...
app/src/main/java/com/base/superpdfreader/helps/MediaStoreHelp.kt
View file @
5be40c4b
...
@@ -121,10 +121,11 @@ object MediaStoreHelp {
...
@@ -121,10 +121,11 @@ object MediaStoreHelp {
val
commonMediaDir
=
arrayOf
(
val
commonMediaDir
=
arrayOf
(
Environment
.
getExternalStoragePublicDirectory
(
Environment
.
DIRECTORY_DCIM
).
absolutePath
,
Environment
.
getExternalStoragePublicDirectory
(
Environment
.
DIRECTORY_DOCUMENTS
).
absolutePath
,
Environment
.
getExternalStoragePublicDirectory
(
Environment
.
DIRECTORY_DOWNLOADS
).
absolutePath
,
// Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DCIM).absolutePath,
Environment
.
getExternalStoragePublicDirectory
(
Environment
.
DIRECTORY_MOVIES
).
absolutePath
,
// Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS).absolutePath,
Environment
.
getExternalStoragePublicDirectory
(
Environment
.
DIRECTORY_MUSIC
).
absolutePath
,
// Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_MOVIES).absolutePath,
// Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_MUSIC).absolutePath,
)
)
fun
Context
.
updateMediaStore
(
fun
Context
.
updateMediaStore
(
...
...
app/src/main/java/com/base/superpdfreader/view/DialogViews.kt
View file @
5be40c4b
...
@@ -38,8 +38,6 @@ object DialogViews {
...
@@ -38,8 +38,6 @@ object DialogViews {
// .setFontSize(13, true)
// .setFontSize(13, true)
// .setForegroundColor(0xFF999999.toInt())
// .setForegroundColor(0xFF999999.toInt())
// .create()
// .create()
binding
.
idTvTt
.
text
=
"Our application needs to access your files to implement junk scanning, image compression, duplicate photos, and large file cleanup. Before you authorize, we need to confirm with you:"
tittle
?.
let
{
binding
.
idTvTt
.
text
=
it
}
tittle
?.
let
{
binding
.
idTvTt
.
text
=
it
}
binding
.
idFullLottie
.
imageAssetsFolder
=
"easy_permission_finger/images/"
binding
.
idFullLottie
.
imageAssetsFolder
=
"easy_permission_finger/images/"
...
...
app/src/main/java/com/base/superpdfreader/view/PDFSaveDialog.kt
0 → 100644
View file @
5be40c4b
package
com.base.superpdfreader.view
import
android.annotation.SuppressLint
import
android.app.Dialog
import
android.content.Context
import
android.view.LayoutInflater
import
android.widget.TextView
import
androidx.core.view.isVisible
import
com.base.superpdfreader.R
import
com.base.superpdfreader.bean.PdfParameterBean
import
com.base.superpdfreader.bean.PdfParameterBean.Companion.arrayCompression
import
com.base.superpdfreader.bean.PdfParameterBean.Companion.arrayMargin
import
com.base.superpdfreader.bean.PdfParameterBean.Companion.arrayOrientation
import
com.base.superpdfreader.bean.PdfParameterBean.Companion.arrayPageSize
import
com.base.superpdfreader.databinding.DialogPdfParametersBinding
import
com.base.superpdfreader.databinding.DialogPdfSaveBinding
import
com.base.superpdfreader.view.XmlEx.inflate
import
com.google.android.material.bottomsheet.BottomSheetDialog
import
java.text.SimpleDateFormat
object
PDFSaveDialog
{
@SuppressLint
(
"SimpleDateFormat"
,
"SetTextI18n"
)
fun
Context
.
showPDFSaveDialog
(
saveAction
:
(
pdfParameterBean
:
PdfParameterBean
)
->
Unit
)
{
val
dialog
=
BottomSheetDialog
(
this
)
val
binding
=
DialogPdfSaveBinding
.
inflate
(
LayoutInflater
.
from
(
this
))
dialog
.
setContentView
(
binding
.
root
)
dialog
.
setCanceledOnTouchOutside
(
true
)
dialog
.
show
()
val
appName
=
resources
.
getString
(
R
.
string
.
app_name
)
val
pdfName
=
appName
+
" "
+
SimpleDateFormat
(
"yyyyMMdd HH.mm.ss"
).
format
(
System
.
currentTimeMillis
())
binding
.
editName
.
setText
(
pdfName
)
val
pdfParameterBean
=
PdfParameterBean
()
binding
.
tvOrientation
.
text
=
arrayOrientation
[
0
]
binding
.
tvPageSize
.
text
=
arrayPageSize
[
1
]
binding
.
tvMargin
.
text
=
arrayMargin
[
0
]
binding
.
tvCompression
.
text
=
arrayCompression
[
0
]
binding
.
flOrientation
.
setOnClickListener
{
showPDFSaveParametersDialog
(
arrayOrientation
)
{
index
,
text
->
pdfParameterBean
.
orientation
=
index
binding
.
tvOrientation
.
text
=
text
}
}
binding
.
flPageSize
.
setOnClickListener
{
showPDFSaveParametersDialog
(
arrayPageSize
)
{
index
,
text
->
pdfParameterBean
.
pageSize
=
index
binding
.
tvPageSize
.
text
=
text
}
}
binding
.
flMargin
.
setOnClickListener
{
showPDFSaveParametersDialog
(
arrayMargin
)
{
index
,
text
->
pdfParameterBean
.
margin
=
index
binding
.
tvMargin
.
text
=
text
}
}
binding
.
flCompression
.
setOnClickListener
{
showPDFSaveParametersDialog
(
arrayCompression
)
{
index
,
text
->
pdfParameterBean
.
compression
=
index
binding
.
tvCompression
.
text
=
text
}
}
binding
.
flSelector
.
setOnClickListener
{
binding
.
ivSelector
.
isSelected
=
!
binding
.
ivSelector
.
isSelected
binding
.
flPassword
.
isVisible
=
binding
.
ivSelector
.
isSelected
}
binding
.
tvSave
.
setOnClickListener
{
if
(
binding
.
flPassword
.
isVisible
)
{
pdfParameterBean
.
password
=
binding
.
editPassword
.
text
.
toString
()
}
saveAction
.
invoke
(
pdfParameterBean
)
dialog
.
dismiss
()
}
}
fun
Context
.
showPDFSaveParametersDialog
(
array
:
Array
<
String
>,
click
:
(
index
:
Int
,
s
:
String
)
->
Unit
)
{
val
dialog
=
Dialog
(
this
)
val
binding
=
DialogPdfParametersBinding
.
inflate
(
LayoutInflater
.
from
(
this
))
dialog
.
setContentView
(
binding
.
root
)
dialog
.
setCanceledOnTouchOutside
(
true
)
dialog
.
show
()
array
.
forEachIndexed
{
index
,
text
->
val
view
=
R
.
layout
.
item_paf_parameters
.
inflate
(
binding
.
ll
)
(
view
as
TextView
).
text
=
text
view
.
setOnClickListener
{
click
.
invoke
(
index
,
text
)
dialog
.
dismiss
()
}
binding
.
ll
.
addView
(
view
)
}
}
}
\ No newline at end of file
app/src/main/res/drawable/bg_selector_fang.xml
0 → 100644
View file @
5be40c4b
<?xml version="1.0" encoding="utf-8"?>
<selector
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<item
android:drawable=
"@mipmap/weixuan_fang"
android:state_selected=
"false"
/>
<item
android:drawable=
"@mipmap/xuanzhong_fang"
android:state_selected=
"true"
/>
</selector>
\ No newline at end of file
app/src/main/res/layout/activity_image_drag.xml
View file @
5be40c4b
...
@@ -5,17 +5,20 @@
...
@@ -5,17 +5,20 @@
android:id=
"@+id/main"
android:id=
"@+id/main"
android:layout_width=
"match_parent"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:layout_height=
"match_parent"
android:background=
"#F4F5F9"
android:orientation=
"vertical"
android:orientation=
"vertical"
tools:context=
".activity.ImageToPdfActivity"
>
tools:context=
".activity.ImageToPdfActivity"
>
<View
<View
android:layout_width=
"match_parent"
android:layout_width=
"match_parent"
android:layout_height=
"
3
0dp"
android:layout_height=
"
4
0dp"
android:background=
"@color/white"
/>
android:background=
"@color/white"
/>
<FrameLayout
<FrameLayout
android:layout_width=
"match_parent"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:background=
"@color/white"
android:paddingVertical=
"10dp"
tools:ignore=
"UselessParent"
>
tools:ignore=
"UselessParent"
>
<FrameLayout
<FrameLayout
...
@@ -46,4 +49,61 @@
...
@@ -46,4 +49,61 @@
</FrameLayout>
</FrameLayout>
<androidx.recyclerview.widget.RecyclerView
android:id=
"@+id/rv"
android:layout_width=
"wrap_content"
android:layout_height=
"0dp"
android:layout_gravity=
"center"
android:layout_margin=
"8dp"
android:layout_weight=
"1"
app:layoutManager=
"androidx.recyclerview.widget.GridLayoutManager"
app:spanCount=
"3"
tools:listitem=
"@layout/item_image_drag"
/>
<FrameLayout
android:layout_width=
"match_parent"
android:layout_height=
"80dp"
android:background=
"@color/white"
>
<LinearLayout
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center_vertical"
android:layout_marginStart=
"15dp"
>
<ImageView
android:id=
"@+id/iv_type"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:src=
"@mipmap/paipanicon"
android:visibility=
"gone"
tools:ignore=
"ContentDescription"
/>
<ImageView
android:id=
"@+id/iv_add"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginStart=
"9dp"
android:src=
"@mipmap/tianjia"
tools:ignore=
"ContentDescription"
/>
</LinearLayout>
<com.noober.background.view.BLTextView
android:id=
"@+id/tv_convert"
android:layout_width=
"196dp"
android:layout_height=
"45dp"
android:layout_gravity=
"center_vertical|end"
android:layout_marginEnd=
"15dp"
android:gravity=
"center"
android:text=
"CONVERT TO PDF"
android:textColor=
"@color/white"
android:textSize=
"17sp"
android:textStyle=
"bold"
app:bl_corners_radius=
"22dp"
app:bl_solid_color=
"#FD3835"
tools:ignore=
"HardcodedText"
/>
</FrameLayout>
</LinearLayout>
</LinearLayout>
\ No newline at end of file
app/src/main/res/layout/activity_main.xml
View file @
5be40c4b
...
@@ -22,7 +22,7 @@
...
@@ -22,7 +22,7 @@
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginStart=
"18dp"
android:layout_marginStart=
"18dp"
android:layout_marginTop=
"56dp"
android:layout_marginTop=
"56dp"
android:text=
"
All Document
"
android:text=
"
PDF
"
android:textColor=
"@color/white"
android:textColor=
"@color/white"
android:textSize=
"19sp"
android:textSize=
"19sp"
android:textStyle=
"bold"
android:textStyle=
"bold"
...
@@ -58,7 +58,6 @@
...
@@ -58,7 +58,6 @@
android:id=
"@+id/fab"
android:id=
"@+id/fab"
android:layout_width=
"76dp"
android:layout_width=
"76dp"
android:layout_height=
"76dp"
android:layout_height=
"76dp"
app:pressedTranslationZ=
"0dp"
android:layout_marginEnd=
"16dp"
android:layout_marginEnd=
"16dp"
android:layout_marginBottom=
"99dp"
android:layout_marginBottom=
"99dp"
android:scaleType=
"centerCrop"
android:scaleType=
"centerCrop"
...
@@ -69,6 +68,7 @@
...
@@ -69,6 +68,7 @@
app:layout_constraintBottom_toBottomOf=
"@id/viewpager2"
app:layout_constraintBottom_toBottomOf=
"@id/viewpager2"
app:layout_constraintEnd_toEndOf=
"@id/viewpager2"
app:layout_constraintEnd_toEndOf=
"@id/viewpager2"
app:maxImageSize=
"76dp"
app:maxImageSize=
"76dp"
app:pressedTranslationZ=
"0dp"
tools:ignore=
"ContentDescription"
tools:ignore=
"ContentDescription"
tools:tint=
"@color/color_pdf"
/>
tools:tint=
"@color/color_pdf"
/>
...
...
app/src/main/res/layout/activity_pdf_converted.xml
0 → 100644
View file @
5be40c4b
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:app=
"http://schemas.android.com/apk/res-auto"
xmlns:tools=
"http://schemas.android.com/tools"
android:id=
"@+id/main"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
tools:context=
".activity.PdfConvertedActivity"
>
</androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file
app/src/main/res/layout/dialog_pdf_create_converter.xml
View file @
5be40c4b
...
@@ -62,6 +62,7 @@
...
@@ -62,6 +62,7 @@
<com.noober.background.view.BLLinearLayout
<com.noober.background.view.BLLinearLayout
android:layout_width=
"0dp"
android:layout_width=
"0dp"
android:visibility=
"invisible"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_margin=
"16dp"
android:layout_margin=
"16dp"
android:layout_weight=
"1"
android:layout_weight=
"1"
...
@@ -89,6 +90,7 @@
...
@@ -89,6 +90,7 @@
</LinearLayout>
</LinearLayout>
<TextView
<TextView
android:visibility=
"gone"
android:layout_width=
"wrap_content"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginStart=
"16dp"
android:layout_marginStart=
"16dp"
...
@@ -100,6 +102,7 @@
...
@@ -100,6 +102,7 @@
tools:ignore=
"HardcodedText"
/>
tools:ignore=
"HardcodedText"
/>
<LinearLayout
<LinearLayout
android:visibility=
"gone"
android:layout_width=
"match_parent"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"16dp"
android:layout_marginTop=
"16dp"
...
...
app/src/main/res/layout/dialog_pdf_parameters.xml
0 → 100644
View file @
5be40c4b
<?xml version="1.0" encoding="utf-8"?>
<com.noober.background.view.BLLinearLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:app=
"http://schemas.android.com/apk/res-auto"
android:id=
"@+id/ll"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:orientation=
"vertical"
android:padding=
"10dp"
app:bl_corners_radius=
"5dp"
/>
app/src/main/res/layout/dialog_pdf_save.xml
0 → 100644
View file @
5be40c4b
This diff is collapsed.
Click to expand it.
app/src/main/res/layout/item_image_drag.xml
View file @
5be40c4b
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?>
<
com.noober.background.view.BLFrameLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
<
androidx.cardview.widget.CardView
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:app=
"http://schemas.android.com/apk/res-auto"
xmlns:app=
"http://schemas.android.com/apk/res-auto"
xmlns:tools=
"http://schemas.android.com/tools"
xmlns:tools=
"http://schemas.android.com/tools"
android:layout_width=
"
wrap_content
"
android:layout_width=
"
110dp
"
android:layout_height=
"
wrap_content
"
android:layout_height=
"
140dp
"
android:layout_margin=
"
5
dp"
android:layout_margin=
"
8
dp"
app:
bl_corners_r
adius=
"9dp"
app:
cardCornerR
adius=
"9dp"
app:
bl_solid_color=
"#F5F5F5
"
>
app:
cardElevation=
"0dp
"
>
<ImageView
<ImageView
android:id=
"@+id/iv"
android:id=
"@+id/iv"
android:layout_width=
"
110dp
"
android:layout_width=
"
match_parent
"
android:layout_height=
"
140dp
"
android:layout_height=
"
match_parent
"
tools:ignore=
"ContentDescription"
/>
tools:ignore=
"ContentDescription"
/>
<ImageView
<ImageView
...
@@ -35,7 +35,7 @@
...
@@ -35,7 +35,7 @@
android:layout_marginBottom=
"8dp"
android:layout_marginBottom=
"8dp"
android:minWidth=
"26dp"
android:minWidth=
"26dp"
android:minHeight=
"26dp"
android:minHeight=
"26dp"
android:src=
"@mipmap/
clip
"
android:src=
"@mipmap/
yidong
"
tools:ignore=
"ContentDescription"
/>
tools:ignore=
"ContentDescription"
/>
</com.noober.background.view.BLFrameLayout>
</androidx.cardview.widget.CardView>
\ No newline at end of file
\ No newline at end of file
app/src/main/res/layout/item_paf_parameters.xml
0 → 100644
View file @
5be40c4b
<?xml version="1.0" encoding="utf-8"?>
<TextView
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:tools=
"http://schemas.android.com/tools"
android:layout_width=
"350dp"
android:layout_height=
"70dp"
android:layout_marginHorizontal=
"15dp"
android:gravity=
"center_vertical"
android:textColor=
"@color/black"
android:textSize=
"17sp"
tools:text=
"Portrait"
/>
app/src/main/res/mipmap-xxhdpi/delete.png
0 → 100644
View file @
5be40c4b
2.16 KB
app/src/main/res/mipmap-xxhdpi/guanbi.png
0 → 100644
View file @
5be40c4b
2.09 KB
app/src/main/res/mipmap-xxhdpi/paipanicon.png
0 → 100644
View file @
5be40c4b
14.6 KB
app/src/main/res/mipmap-xxhdpi/tianjia.png
0 → 100644
View file @
5be40c4b
14.3 KB
app/src/main/res/mipmap-xxhdpi/weixuan_fang.png
0 → 100644
View file @
5be40c4b
856 Bytes
app/src/main/res/mipmap-xxhdpi/xiala.png
0 → 100644
View file @
5be40c4b
907 Bytes
app/src/main/res/mipmap-xxhdpi/xuanzhong_fang.png
0 → 100644
View file @
5be40c4b
1.42 KB
app/src/main/res/mipmap-xxhdpi/yidong.png
0 → 100644
View file @
5be40c4b
1.58 KB
app/src/main/res/values/strings.xml
View file @
5be40c4b
<resources>
<resources>
<string
name=
"app_name"
>
Super PDF Reader
</string>
<string
name=
"app_name"
>
Super PDF Reader
</string>
<!-- TODO: Remove or change this placeholder text -->
<string
name=
"hello_blank_fragment"
>
Hello blank fragment
</string>
<string
name=
"hello_blank_fragment"
>
Hello blank fragment
</string>
</resources>
</resources>
\ No newline at end of file
gradle/libs.versions.toml
View file @
5be40c4b
[versions]
[versions]
agp
=
"8.3.1"
agp
=
"8.3.1"
kotlin
=
"1.
9
.0"
kotlin
=
"1.
8
.0"
coreKtx
=
"1.
10
.1"
coreKtx
=
"1.
8
.1"
junit
=
"4.13.2"
junit
=
"4.13.2"
junitVersion
=
"1.1.5"
junitVersion
=
"1.1.5"
espressoCore
=
"3.5.1"
espressoCore
=
"3.5.1"
...
...
settings.gradle
View file @
5be40c4b
...
@@ -9,19 +9,38 @@ pluginManagement {
...
@@ -9,19 +9,38 @@ pluginManagement {
}
}
mavenCentral
()
mavenCentral
()
gradlePluginPortal
()
gradlePluginPortal
()
maven
{
url
'https://jitpack.io'
}
maven
{
url
"https://android-sdk.is.com"
}
// maven { url "https://maven.google.com" }
//广告仓库
maven
{
url
"https://dl-maven-android.mintegral.com/repository/mbridge_android_sdk_oversea"
}
maven
{
url
"https://artifact.bytedance.com/repository/pangle"
}
//国内阿里云仓库
maven
{
url
'https://maven.aliyun.com/nexus/content/groups/public/'
}
maven
{
url
'https://maven.aliyun.com/repository/public'
}
maven
{
url
'https://maven.aliyun.com/repository/central'
}
maven
{
url
'https://maven.aliyun.com/repository/google'
}
maven
{
url
'https://maven.aliyun.com/repository/gradle-plugin'
}
}
}
}
}
dependencyResolutionManagement
{
dependencyResolutionManagement
{
repositoriesMode
.
set
(
RepositoriesMode
.
FAIL_ON_PROJECT_REPOS
)
repositoriesMode
.
set
(
RepositoriesMode
.
FAIL_ON_PROJECT_REPOS
)
repositories
{
repositories
{
mavenCentral
()
mavenCentral
()
google
()
google
()
maven
{
url
'https://jitpack.io'
}
maven
{
url
'https://jitpack.io'
}
maven
{
url
"https://android-sdk.is.com"
}
maven
{
url
"https://android-sdk.is.com"
}
maven
{
url
"https://maven.google.com"
}
// maven { url "https://maven.google.com" }
//广告仓库
maven
{
url
"https://dl-maven-android.mintegral.com/repository/mbridge_android_sdk_oversea"
}
maven
{
url
"https://dl-maven-android.mintegral.com/repository/mbridge_android_sdk_oversea"
}
maven
{
url
"https://artifact.bytedance.com/repository/pangle"
}
maven
{
url
"https://artifact.bytedance.com/repository/pangle"
}
maven
{
url
"https://s01.oss.sonatype.org/content/groups/public"
}
//国内阿里云仓库
maven
{
url
'https://maven.aliyun.com/nexus/content/groups/public/'
}
maven
{
url
'https://maven.aliyun.com/nexus/content/groups/public/'
}
maven
{
url
'https://maven.aliyun.com/repository/public'
}
maven
{
url
'https://maven.aliyun.com/repository/public'
}
maven
{
url
'https://maven.aliyun.com/repository/central'
}
maven
{
url
'https://maven.aliyun.com/repository/central'
}
...
...
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