Skip to content

Commit cab69d1

Browse files
author
Serkan
committed
Change gradle files
1 parent 1e20d36 commit cab69d1

File tree

11 files changed

+156
-33
lines changed

11 files changed

+156
-33
lines changed

app/.betakey

2.03 KB
Binary file not shown.

app/build.gradle

+20-4
Original file line numberDiff line numberDiff line change
@@ -23,28 +23,43 @@ android {
2323
viewBinding {
2424
enabled = true
2525
}
26+
signingConfigs {
27+
betaKey {
28+
storeFile file('.betakey')
29+
keyAlias '.betakey'
30+
keyPassword '.betakey'
31+
storePassword '.betakey'
32+
}
2633

34+
release {
35+
storeFile file('betakey')
36+
keyAlias 'betakey'
37+
keyPassword 'betakey'
38+
storePassword 'betakey'
39+
}
40+
}
2741

2842
buildTypes {
29-
buildTypes {
3043
release {
3144
minifyEnabled false
3245
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
33-
46+
signingConfig signingConfigs.betaKey
3447
}
3548
development {
3649
debuggable true
37-
50+
signingConfig signingConfigs.betaKey
3851
}
3952

40-
}
53+
4154
}
4255

4356
productFlavors {
4457
flavorDimensions "version"
4558
beta {
59+
4660
}
4761
prod {
62+
4863
}
4964
}
5065

@@ -72,6 +87,7 @@ dependencies {
7287
implementation app_dependencies.recylerView
7388
implementation app_dependencies.design
7489
implementation app_dependencies.imageZoomView
90+
implementation app_dependencies.dexter
7591

7692
api project(':core_network')
7793
api project(':core_local')

app/src/main/AndroidManifest.xml

+2
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@
44

55
<uses-permission android:name="android.permission.INTERNET" />
66
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
7+
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
8+
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
79

810
<application
911
android:name=".WaaperHDApp"

app/src/main/java/com/hsmnzaydn/waaperhd/ui/image_detail/ImageDetailFragment.kt

+105-17
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,29 @@
11
package com.hsmnzaydn.waaperhd.ui.image_detail
22

3+
import android.Manifest
4+
import android.content.Intent
5+
import android.graphics.Bitmap
6+
import android.net.Uri
37
import android.os.Bundle
8+
import android.os.Environment
9+
import android.util.Log
410
import com.basefy.base_mvp.BaseFragment
511
import com.basefy.core_utility.CoreImageloaderUtility
612
import com.hsmnzaydn.waaperhd.databinding.FragmentImageDetailBinding
713
import com.hsmnzaydn.waaperhd.ui.controller
814
import com.hsmnzaydn.waaperhd.utility.BundleConstant
9-
import ozaydin.serkan.com.image_zoom_view.ImageViewZoomConfig
10-
import ozaydin.serkan.com.image_zoom_view.ImageViewZoomConfig.ImageViewZoomConfigSaveMethod
15+
import com.karumi.dexter.Dexter
16+
import com.karumi.dexter.MultiplePermissionsReport
17+
import com.karumi.dexter.PermissionToken
18+
import com.karumi.dexter.listener.PermissionDeniedResponse
19+
import com.karumi.dexter.listener.PermissionGrantedResponse
20+
import com.karumi.dexter.listener.PermissionRequest
21+
import com.karumi.dexter.listener.multi.MultiplePermissionsListener
22+
import com.karumi.dexter.listener.single.PermissionListener
23+
import kotlinx.android.synthetic.main.fragment_image_detail.*
24+
import java.io.File
25+
import java.io.FileOutputStream
26+
import java.util.*
1127
import javax.inject.Inject
1228

1329

@@ -23,28 +39,100 @@ class ImageDetailFragment : BaseFragment<FragmentImageDetailBinding>(), ImageDet
2339

2440

2541
presenter.getImage(arguments?.getString(BundleConstant.IMAGE_ID_BUNDLE))
26-
var config = ImageViewZoomConfig()
27-
28-
val imageViewZoomConfigSaveMethod =
29-
ImageViewZoomConfigSaveMethod.always // You can use always
30-
31-
config.setImageViewZoomConfigSaveMethod(imageViewZoomConfigSaveMethod)
32-
33-
34-
binding!!.fragmentDetailImageViewZoom.setConfig(config)
35-
3642
binding?.fragmentImageDetailToolbar!!.onClickBackIcon(controller)
3743

3844

39-
4045
}
4146

4247
override fun setImageData(image: com.hsmnzaydn.waaperhd.image.domain.entities.Image.ImageDetail?) {
43-
CoreImageloaderUtility.imageLoaderWithCacheFitWithLoading(
48+
CoreImageloaderUtility.imageLoaderWithCacheFitWithLoading(
4449
activity!!, image?.imagePath,
45-
binding!!.fragmentDetailImageViewZoom,
46-
binding!!.fragmentImageDetailProgressbar
47-
)
50+
binding!!.fragmentDetailImageViewZoom,
51+
binding!!.fragmentImageDetailProgressbar
52+
)
53+
54+
fragment_image_detail_floatActionButton.setOnClickListener {
55+
56+
CoreImageloaderUtility.getImageBitmap(
57+
activity!!,
58+
image!!.imagePath!!,
59+
fileCallback = {
60+
var filename = UUID.randomUUID()
61+
var file =
62+
File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES).getAbsolutePath().toString() + File.separator + "folderName")
63+
if (!file.exists()) {
64+
file.mkdir()
65+
}
66+
file =
67+
File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES).getAbsolutePath().toString() + File.separator + "folderName" + File.separator + filename + ".jpg")
68+
try {
69+
val out = FileOutputStream(file)
70+
it.compress(Bitmap.CompressFormat.PNG, 90, out)
71+
out.flush()
72+
out.close()
73+
74+
val intentShareFile = Intent(Intent.ACTION_SEND)
75+
76+
if (file.exists()) {
77+
intentShareFile.type = "application/pdf"
78+
intentShareFile.putExtra(
79+
Intent.EXTRA_STREAM,
80+
Uri.parse("file://${file.absolutePath}")
81+
)
82+
intentShareFile.putExtra(
83+
Intent.EXTRA_SUBJECT,
84+
"Sharing File..."
85+
)
86+
intentShareFile.putExtra(
87+
Intent.EXTRA_TEXT,
88+
"Sharing File..."
89+
)
90+
startActivity(
91+
Intent.createChooser(
92+
intentShareFile,
93+
"Share File"
94+
)
95+
)
96+
}
97+
} catch (exception: Exception) {
98+
exception.printStackTrace()
99+
Log.e("ImageViewZoom", exception.message)
100+
101+
}
102+
})
103+
Dexter.withContext(activity)
104+
.withPermissions(Manifest.permission.WRITE_EXTERNAL_STORAGE,
105+
Manifest.permission.READ_EXTERNAL_STORAGE)
106+
.withListener(object : PermissionListener, MultiplePermissionsListener {
107+
override fun onPermissionGranted(p0: PermissionGrantedResponse?) {
108+
109+
110+
111+
}
112+
113+
override fun onPermissionRationaleShouldBeShown(
114+
p0: PermissionRequest?,
115+
p1: PermissionToken?
116+
) {
117+
Log.d("veri","veri")
118+
}
119+
120+
override fun onPermissionDenied(p0: PermissionDeniedResponse?) {
121+
Log.d("veri","veri")
122+
}
123+
124+
override fun onPermissionsChecked(p0: MultiplePermissionsReport?) {
125+
}
126+
127+
override fun onPermissionRationaleShouldBeShown(
128+
p0: MutableList<PermissionRequest>?,
129+
p1: PermissionToken?
130+
) {
131+
132+
}
133+
})
134+
135+
}
48136

49137
}
50138

app/src/main/res/layout/fragment_image_detail.xml

+1
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@
4141
app:layout_constraintTop_toBottomOf="@+id/fragment_image_detail_toolbar" />
4242

4343
<com.google.android.material.floatingactionbutton.FloatingActionButton
44+
android:id="@+id/fragment_image_detail_floatActionButton"
4445
android:layout_width="wrap_content"
4546
android:layout_height="wrap_content"
4647
android:foregroundGravity="center"

base_mvp/build.gradle

-3
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@ android {
2323
}
2424

2525
buildTypes {
26-
buildTypes {
2726
release {
2827
minifyEnabled false
2928
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
@@ -33,8 +32,6 @@ android {
3332
debuggable true
3433

3534
}
36-
37-
}
3835
}
3936

4037
viewBinding {

core_local/build.gradle

+1-2
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@ android {
2323
}
2424

2525
buildTypes {
26-
buildTypes {
2726
release {
2827
minifyEnabled false
2928
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
@@ -34,7 +33,7 @@ android {
3433

3534
}
3635

37-
}
36+
3837
}
3938

4039
productFlavors {

core_network/build.gradle

+1-2
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@ android {
2222
}
2323

2424
buildTypes {
25-
buildTypes {
2625
release {
2726
minifyEnabled false
2827
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
@@ -33,7 +32,7 @@ android {
3332

3433
}
3534

36-
}
35+
3736
}
3837

3938
productFlavors {

core_utility/build.gradle

+1-2
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@ android {
2323
}
2424

2525
buildTypes {
26-
buildTypes {
2726
release {
2827
minifyEnabled false
2928
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
@@ -34,7 +33,7 @@ android {
3433

3534
}
3635

37-
}
36+
3837
}
3938

4039
productFlavors {

core_utility/src/main/java/com/basefy/core_utility/CoreImageloaderUtility.kt

+21
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
package com.basefy.core_utility
22

33
import android.app.Activity
4+
import android.graphics.Bitmap
45
import android.graphics.drawable.Drawable
6+
import android.util.Log
57
import android.view.View
68
import android.widget.ImageView
79
import androidx.core.widget.ContentLoadingProgressBar
@@ -13,7 +15,9 @@ import com.bumptech.glide.load.resource.bitmap.CenterCrop
1315
import com.bumptech.glide.load.resource.bitmap.RoundedCorners
1416
import com.bumptech.glide.request.RequestListener
1517
import com.bumptech.glide.request.RequestOptions
18+
import com.bumptech.glide.request.target.CustomTarget
1619
import com.bumptech.glide.request.target.Target
20+
import com.bumptech.glide.request.transition.Transition
1721
import java.io.File
1822

1923

@@ -271,5 +275,22 @@ class CoreImageloaderUtility {
271275
}
272276

273277

278+
fun getImageBitmap(activity: Activity,
279+
url:String,
280+
fileCallback:(bitmap:Bitmap) -> Unit){
281+
Glide.with(activity)
282+
.asBitmap()
283+
.load(url)
284+
.into(object : CustomTarget<Bitmap>(){
285+
override fun onResourceReady(resource: Bitmap, transition: Transition<in Bitmap>?) {
286+
fileCallback(resource)
287+
}
288+
override fun onLoadCleared(placeholder: Drawable?) {
289+
Log.d("veri"," eri")
290+
}
291+
})
292+
}
293+
294+
274295
}
275296
}

dependencies.gradle

+4-3
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,8 @@ ext {
4949
//ImagezoomView
5050
imageZoomView = '1.2.1'
5151

52+
//Dexter
53+
dexter = '6.1.0'
5254
core_common_dependencies = [
5355
androidMinSdkVersion : androidMinSdkVersion,
5456
androidTargetSdkVersion : androidTargetSdkVersion,
@@ -133,10 +135,9 @@ ext {
133135
rxJava : "io.reactivex.rxjava2:rxjava:$rxjava2Version",
134136
rxAndroid : "io.reactivex.rxjava2:rxandroid:$rxandroidVersion",
135137
design : "com.android.support:design:$design",
136-
imageZoomView : "com.github.hsmnzaydn:imagezoom:$imageZoomView"
137-
138+
imageZoomView : "com.github.hsmnzaydn:imagezoom:$imageZoomView",
139+
dexter : "com.karumi:dexter:$dexter"
138140

139141
]
140142

141-
142143
}

0 commit comments

Comments
 (0)