Skip to content

Commit 60264ac

Browse files
committed
version update
1 parent 4a11f15 commit 60264ac

File tree

2 files changed

+67
-25
lines changed

2 files changed

+67
-25
lines changed

tapcheckoutsdk/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -140,7 +140,7 @@ afterEvaluate {
140140

141141
groupId = "com.github.Tap-Payments"
142142
artifactId = "Checkout-Android"
143-
version = "1.0.5.3"
143+
version = "1.0.6"
144144

145145
// Variant-aware: ensure dependencies are included in POM
146146
pom.withXml {

tapcheckoutsdk/src/main/java/company/tap/tapcheckout_android/scanner_activity/ScannerActivity.kt

Lines changed: 66 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,15 @@
11
package company.tap.tapcheckout_android.scanner_activity
22

3+
import android.Manifest
34
import android.app.Activity
45
import android.content.Intent
6+
import android.content.pm.PackageManager
57
import android.os.Bundle
68
import android.webkit.WebView
79
import android.widget.Toast
810
import androidx.appcompat.app.AppCompatActivity
9-
11+
import androidx.core.app.ActivityCompat
12+
import androidx.core.content.ContextCompat
1013
import company.tap.cardscanner.CameraFragment
1114
import company.tap.cardscanner.TapCard
1215
import company.tap.cardscanner.TapScannerCallback
@@ -17,8 +20,9 @@ import company.tap.tapcheckout_android.TapCheckout
1720

1821

1922
private const val SCAN_CARD_ID = 101
23+
private const val CAMERA_PERMISSION_REQUEST_CODE = 200
2024

21-
class ScannerActivity : AppCompatActivity(), TapTextRecognitionCallBack, TapScannerCallback{
25+
class ScannerActivity : AppCompatActivity(), TapTextRecognitionCallBack, TapScannerCallback {
2226
//InlineViewCallback {
2327
lateinit var webView: WebView
2428
private var textRecognitionML: TapTextRecognitionML? = null
@@ -37,16 +41,16 @@ class ScannerActivity : AppCompatActivity(), TapTextRecognitionCallBack, TapScan
3741
// CameraActivity::class.java
3842
// )
3943
// startActivity(chooseImageIntent)
40-
// val intent = ScanCardIntent.Builder(this).build()
41-
// startActivityForResult(intent, SCAN_CARD_ID)
44+
// val intent = ScanCardIntent.Builder(this).build()
45+
// startActivityForResult(intent, SCAN_CARD_ID)
46+
if (isCameraPermissionGranted()) {
47+
supportFragmentManager
48+
.beginTransaction()
49+
.replace(R.id.inline_container, CameraFragment())
50+
.commit()
4251

43-
val cameraFragment = CameraFragment()
44-
cameraFragment.setCallBack(this,this)
52+
}else requestCameraPermission()
4553

46-
supportFragmentManager
47-
.beginTransaction()
48-
.replace(R.id.inline_container,cameraFragment)
49-
.commit()
5054
// supportFragmentManager
5155
// .beginTransaction()
5256
// .replace(company.tap.tapcardformkit.R.id.inline_container, CameraFragment())
@@ -65,12 +69,12 @@ class ScannerActivity : AppCompatActivity(), TapTextRecognitionCallBack, TapScan
6569
super.onActivityResult(requestCode, resultCode, data)
6670
when (requestCode) {
6771
SCAN_CARD_ID -> if (resultCode == Activity.RESULT_OK) {
68-
/* val card = data!!.getParcelableExtra<Card>(ScanCardIntent.RESULT_PAYCARDS_CARD)
69-
if (card != null) {
70-
fillCardNumber(cardNumber = card?.cardNumber.toString(), cardHolderName =card?.cardHolderName ?: "" , cvv ="" , expiryDate =card?.expirationDate ?: "" )
71-
setResult(Activity.RESULT_OK, data)
72-
finish()
73-
}*/
72+
/* val card = data!!.getParcelableExtra<Card>(ScanCardIntent.RESULT_PAYCARDS_CARD)
73+
if (card != null) {
74+
fillCardNumber(cardNumber = card?.cardNumber.toString(), cardHolderName =card?.cardHolderName ?: "" , cvv ="" , expiryDate =card?.expirationDate ?: "" )
75+
setResult(Activity.RESULT_OK, data)
76+
finish()
77+
}*/
7478
}
7579
else -> super.onActivityResult(requestCode, resultCode, data)
7680
}
@@ -81,15 +85,15 @@ class ScannerActivity : AppCompatActivity(), TapTextRecognitionCallBack, TapScan
8185
override fun onRecognitionSuccess(card: TapCard?) {
8286
println("cardNumber>>>>"+card)
8387
Toast.makeText(this@ScannerActivity, card?.cardNumber.toString(), Toast.LENGTH_LONG).show()
84-
// if (card?.cardNumber != null && card.cardHolder != null && card.expirationDate != null) {
88+
// if (card?.cardNumber != null && card.cardHolder != null && card.expirationDate != null) {
8589
if (card?.cardNumber != null ) {
8690
TapCheckout.fillCardNumber(
8791
cardNumber = card?.cardNumber.toString(),
8892
cardHolderName = card?.cardHolder ?: "",
8993
cvv = "",
9094
expiryDate = card.expirationDate ?: ""
9195
)
92-
// incrementalCount = 0
96+
// incrementalCount = 0
9397
}
9498
}
9599

@@ -119,18 +123,56 @@ class ScannerActivity : AppCompatActivity(), TapTextRecognitionCallBack, TapScan
119123

120124
}
121125

122-
/* override fun onScanCardFailed(e: Exception?) {
123-
Toast.makeText(this@ScannerActivity, e?.message.toString(), Toast.LENGTH_LONG).show()
124-
}
126+
/* override fun onScanCardFailed(e: Exception?) {
127+
Toast.makeText(this@ScannerActivity, e?.message.toString(), Toast.LENGTH_LONG).show()
128+
}
125129
126-
override fun onScanCardFinished(card: Card?, cardImage: ByteArray?) {
127-
Toast.makeText(this@ScannerActivity, card?.cardNumber.toString(), Toast.LENGTH_LONG).show()
130+
override fun onScanCardFinished(card: Card?, cardImage: ByteArray?) {
131+
Toast.makeText(this@ScannerActivity, card?.cardNumber.toString(), Toast.LENGTH_LONG).show()
128132
129-
}*/
133+
}*/
130134
override fun onBackPressed() {
131135
super.onBackPressed()
132136
finish()
133137

134138
}
139+
private fun isCameraPermissionGranted(): Boolean {
140+
return ContextCompat.checkSelfPermission(
141+
this,
142+
android.Manifest.permission.CAMERA
143+
) == PackageManager.PERMISSION_GRANTED
144+
}
145+
146+
private fun requestCameraPermission() {
147+
ActivityCompat.requestPermissions(
148+
this,
149+
arrayOf(Manifest.permission.CAMERA),
150+
CAMERA_PERMISSION_REQUEST_CODE
151+
)
152+
}
153+
154+
private fun openCameraFragment() {
155+
supportFragmentManager
156+
.beginTransaction()
157+
.replace(R.id.inline_container, CameraFragment())
158+
.commit()
159+
}
160+
override fun onRequestPermissionsResult(
161+
requestCode: Int,
162+
permissions: Array<out String>,
163+
grantResults: IntArray
164+
) {
165+
super.onRequestPermissionsResult(requestCode, permissions, grantResults)
166+
if (requestCode == CAMERA_PERMISSION_REQUEST_CODE) {
167+
if (grantResults.isNotEmpty() && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
168+
openCameraFragment()
169+
} else {
170+
Toast.makeText(this, "Camera permission denied", Toast.LENGTH_SHORT).show()
171+
finish()
172+
}
173+
}
174+
}
175+
176+
135177

136178
}

0 commit comments

Comments
 (0)