kopia lustrzana https://github.com/meshtastic/Meshtastic-Android
remove play services code scanner
rodzic
0516049e2a
commit
27ee6a847a
|
@ -173,8 +173,6 @@ dependencies {
|
|||
implementation 'com.google.android.gms:play-services-location:19.0.1'
|
||||
// For Google Sign-In (owner name accesss)
|
||||
implementation 'com.google.android.gms:play-services-auth:20.2.0'
|
||||
// ML Kit barcode scanning
|
||||
implementation 'com.google.android.gms:play-services-code-scanner:16.0.0-beta2'
|
||||
|
||||
// Add the Firebase SDK for Crashlytics.
|
||||
implementation 'com.google.firebase:firebase-crashlytics:18.2.6'
|
||||
|
|
|
@ -97,9 +97,6 @@
|
|||
<meta-data
|
||||
android:name="firebase_analytics_collection_enabled"
|
||||
android:value="false" />
|
||||
<meta-data
|
||||
android:name="com.google.mlkit.vision.DEPENDENCIES"
|
||||
android:value="barcode_ui"/>
|
||||
|
||||
<!-- we need bind job service for oreo -->
|
||||
<service
|
||||
|
|
|
@ -44,16 +44,6 @@ fun Context.hasCompanionDeviceApi(): Boolean =
|
|||
fun Context.hasGps(): Boolean =
|
||||
packageManager.hasSystemFeature(PackageManager.FEATURE_LOCATION_GPS)
|
||||
|
||||
/**
|
||||
* return app install source (play store = com.android.vending)
|
||||
*/
|
||||
fun Context.installSource(): String? {
|
||||
return if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R)
|
||||
packageManager.getInstallSourceInfo(packageName).installingPackageName
|
||||
else
|
||||
packageManager.getInstallerPackageName(packageName)
|
||||
}
|
||||
|
||||
/**
|
||||
* return a list of the permissions we don't have
|
||||
*/
|
||||
|
|
|
@ -25,7 +25,6 @@ import com.geeksville.mesh.ConfigProtos
|
|||
import com.geeksville.mesh.R
|
||||
import com.geeksville.mesh.android.getCameraPermissions
|
||||
import com.geeksville.mesh.android.hasCameraPermission
|
||||
import com.geeksville.mesh.android.installSource
|
||||
import com.geeksville.mesh.databinding.ChannelFragmentBinding
|
||||
import com.geeksville.mesh.model.Channel
|
||||
import com.geeksville.mesh.model.ChannelOption
|
||||
|
@ -33,9 +32,6 @@ import com.geeksville.mesh.model.ChannelSet
|
|||
import com.geeksville.mesh.model.UIViewModel
|
||||
import com.google.android.material.dialog.MaterialAlertDialogBuilder
|
||||
import com.google.android.material.snackbar.Snackbar
|
||||
import com.google.mlkit.vision.barcode.common.Barcode
|
||||
import com.google.mlkit.vision.codescanner.GmsBarcodeScannerOptions
|
||||
import com.google.mlkit.vision.codescanner.GmsBarcodeScanning
|
||||
import com.google.protobuf.ByteString
|
||||
import com.journeyapps.barcodescanner.ScanContract
|
||||
import com.journeyapps.barcodescanner.ScanOptions
|
||||
|
@ -238,24 +234,6 @@ class ChannelFragment : ScreenFragment("Channel"), Logging {
|
|||
.show()
|
||||
}
|
||||
|
||||
fun mlkitScan() {
|
||||
debug("Starting ML Kit code scanner")
|
||||
val options = GmsBarcodeScannerOptions.Builder()
|
||||
.setBarcodeFormats(Barcode.FORMAT_QR_CODE)
|
||||
.build()
|
||||
val scanner = GmsBarcodeScanning.getClient(requireContext(), options)
|
||||
scanner.startScan()
|
||||
.addOnSuccessListener { barcode ->
|
||||
if (barcode.rawValue != null)
|
||||
model.setRequestChannelUrl(Uri.parse(barcode.rawValue))
|
||||
}
|
||||
.addOnFailureListener { ex ->
|
||||
errormsg("code scanner failed: ${ex.message}")
|
||||
if (requireContext().hasCameraPermission()) zxingScan()
|
||||
else requestPermissionAndScan()
|
||||
}
|
||||
}
|
||||
|
||||
binding.channelNameEdit.on(EditorInfo.IME_ACTION_DONE) {
|
||||
requireActivity().hideKeyboard()
|
||||
}
|
||||
|
@ -279,13 +257,8 @@ class ChannelFragment : ScreenFragment("Channel"), Logging {
|
|||
}
|
||||
|
||||
binding.scanButton.setOnClickListener {
|
||||
// only use ML Kit for play store installs
|
||||
if (requireContext().installSource() == "com.android.vending") {
|
||||
mlkitScan()
|
||||
} else {
|
||||
if (requireContext().hasCameraPermission()) zxingScan()
|
||||
else requestPermissionAndScan()
|
||||
}
|
||||
if (requireContext().hasCameraPermission()) zxingScan()
|
||||
else requestPermissionAndScan()
|
||||
}
|
||||
|
||||
// Note: Do not use setOnCheckedChanged here because we don't want to be called when we programmatically disable editing
|
||||
|
|
Ładowanie…
Reference in New Issue