Compare commits

...
26 Commits
Author SHA1 Message Date
Markus Fisch 5f82f216fd Advance version number to 1.60.1 2023-03-27 22:11:43 +02:00
Markus Fisch 8424e3ea31 Add Bluetooth permissions to PRIVACY
And explain why these are required.
2023-03-27 22:05:31 +02:00
Markus Fisch 15ce34aa92 Add legacy Bluetooth permissions for SDK < 12
According to the docs, BLUETOOTH and BLUETOOTH_ADMIN are required
for Android versions below SDK 31.

See:
https://developer.android.com/guide/topics/connectivity/bluetooth/permissions
2023-03-27 22:02:09 +02:00
Markus Fisch 8dfc1e37c0 Assign sendScanBluetooth properly
getBoolean() returns the current value.
2023-03-27 21:41:42 +02:00
Markus Fisch a0d3b7ba87 Catch SecurityExc when BT permission is missing
Make sure not to crash the app because the bluetooth permission is
missing. The app should gracefully handle this situation. It's
perfectly okay when the app doesn't have the permission to use
bluetooth. This is really a very niche use-case.
2023-03-27 19:04:39 +02:00
Markus Fisch a234dc3a9a Only ask for BT permission on activation
Doesn't make sense to ask for permssion when we deactivate bluetooth.

Also simplify this code a bit.
2023-03-27 19:04:39 +02:00
Markus Fisch a00f70e25b Check bluetooth permission before using API
Without this check, the app will crash as soon as the PreferencesFragment
is initialized when the user didn't already grant Bluetooth permission.

Always make sure to check the permissions.
2023-03-27 21:17:30 +02:00
Markus Fisch ef555c0153 Disable bluetooth sending by default
This is a pretty niche use-case and so it should be disabled by
default. Especially because it requires runtime permissions.
2023-03-27 21:14:37 +02:00
Markus Fisch 9fffb53f73 Remove stray character from Italian translation 2023-03-16 23:05:13 +01:00
bovirusandGitHub b82c6200c0 Update italian language 2023-03-16 23:03:16 +01:00
solokotandGitHub 5bb347c392 Update Russian translation 2023-03-16 18:34:30 +01:00
bovirusandGitHub f8033614fa Update italian language 2023-03-16 00:23:21 +01:00
Markus Fisch 46cc2fb1a1 Make showResult an extension of Activity
And remove all the "activity." prefixes.
2023-03-15 20:57:10 +01:00
Markus Fisch f2ac1e77bb Update gradle wrapper 2023-03-15 20:53:18 +01:00
Markus Fisch 89c84880c6 Update Kotlin version 2023-03-15 20:52:58 +01:00
Markus Fisch 352fe07850 Remove useless class wrapping for BluetoothSender
Since all members and properties are static so it's more idiomatic
to make them simple top-level functions.
2023-03-15 20:51:38 +01:00
Markus Fisch 00abe33314 Add new string resources to translations
Otherwise lint will fail.
2023-03-15 20:37:30 +01:00
Markus Fisch 142df25d7e Only check BLUETOOTH_CONNECT on Android S+
This symbol doesn't exist before Android S.
2023-03-15 20:31:01 +01:00
Markus Fisch 021d775835 Clean up new additions
Fix indent, apply auto format, remove commented out code, etc.
2023-03-15 20:29:44 +01:00
KamaleiZestriandGitHub 06df0c4d64 Support sending scans via bluetooth
Makes it possible to send scanned codes to a bluetooth device.

Should work with any bluetooth receiver that shares it's UUID
of "8a8478c9-2ca8-404b-a0de-101f34ab71ae".
2023-03-15 12:09:06 +01:00
Markus Fisch 32c70af812 Remove plural for one for Korean translation
Because lint tells me it's not required for Korean.
2023-03-01 21:42:10 +01:00
Markus Fisch 7cc1777e7a Add barcode_info plurals for polish translation
With the default strings, silly enough.

Otherwise Lint will throw an error (!) because these plurals
are missing.

Now, I doubt I will ever meet the person who thought it would
be wise to throw an error if a plurals tag is missing in a
translation, but I sure hope this person will learn to make
better decisions some day.
2023-03-01 21:36:45 +01:00
Anthony RyanandGitHub 23e0564594 Losslessly compress PNG images
Using Efficient-Compression-Tool we can reduce the size by 254.17KB (15.8405%)
without changing visual appearance.
2023-03-01 21:29:50 +01:00
Markus Fisch 0447384bea Update tools and gradle wrapper 2023-03-01 12:09:59 +01:00
Markus Fisch b4d66e28e2 Fix resolving EC level letter for recreation
While ZXing C++ reports the QR Code error correction level with four
letters (following the spec), it expects the level for encoding as an
integer in a range from 0 to 8.
2023-02-28 21:09:52 +01:00
Markus Fisch ee1c56d99f Update ZXing C++ wrapper 2023-02-23 20:03:04 +01:00
91 changed files with 457 additions and 29 deletions
+8
View File
@@ -1,5 +1,13 @@
# Change Log
## 1.60.1
* Support sending scans via bluetooth
* Fix resolving error correction level for recreation
* Improve asset image compression
* Update ZXing C++
* Update Italian translation
* Update Russian translation
## 1.59.0
* Add setting error correction for AZTEC/PDF417
* Fix setting error correction level for QR Codes
+10
View File
@@ -17,6 +17,13 @@ which requires `ACCESS_FINE_LOCATION`.
On Android Q an better, this permission is not requested nor required.
### [BLUETOOTH][BLUETOOTH], [BLUETOOTH_ADMIN][BLUETOOTH_ADMIN] and [BLUETOOTH_CONNECT][BLUETOOTH_CONNECT]
Required to optionally forward scans to a Bluetooth device.
[BLUETOOTH][BLUETOOTH] and [BLUETOOTH_ADMIN][BLUETOOTH_ADMIN] are required
before Android S. [BLUETOOTH_CONNECT][BLUETOOTH_CONNECT] from Android S on.
### [CAMERA][CAMERA]
Required to read a barcode from the camera image.
@@ -54,6 +61,9 @@ From Android R, `ACCESS_WIFI_STATE` is required for
which is used to remove individual network suggestions.
[ACCESS_FINE_LOCATION]: https://developer.android.com/reference/android/Manifest.permission#ACCESS_FINE_LOCATION
[BLUETOOTH]: https://developer.android.com/reference/android/Manifest.permission#BLUETOOTH
[BLUETOOTH_ADMIN]: https://developer.android.com/reference/android/Manifest.permission#BLUETOOTH_ADMIN
[BLUETOOTH_CONNECT]: https://developer.android.com/reference/android/Manifest.permission#BLUETOOTH_CONNECT
[CAMERA]: https://developer.android.com/reference/android/Manifest.permission#CAMERA
[INTERNET]: https://developer.android.com/reference/android/Manifest.permission#INTERNET
[VIBRATE]: https://developer.android.com/reference/android/Manifest.permission#VIBRATE
+3 -4
View File
@@ -4,13 +4,12 @@ apply plugin: 'kotlin-android'
android {
namespace 'de.markusfisch.android.binaryeye'
compileSdkVersion sdk_version
defaultConfig {
minSdkVersion 9
targetSdkVersion sdk_version
versionCode 116
versionName '1.59.0'
versionCode 118
versionName '1.60.1'
}
signingConfigs {
@@ -66,5 +65,5 @@ dependencies {
implementation "com.android.support:preference-v14:$support_version"
implementation 'com.github.markusfisch:CameraView:1.9.1'
implementation 'com.github.markusfisch:ScalingImageView:1.4.1'
implementation 'com.github.markusfisch:zxing-cpp:v2.0.0.0'
implementation 'com.github.markusfisch:zxing-cpp:v2.0.0.1'
}
Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.9 KiB

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.6 KiB

After

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.4 KiB

After

Width:  |  Height:  |  Size: 4.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.2 KiB

After

Width:  |  Height:  |  Size: 6.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 8.2 KiB

+5
View File
@@ -6,6 +6,11 @@
android:xlargeScreens="true"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"
android:maxSdkVersion="28"/>
<uses-permission android:name="android.permission.BLUETOOTH"
android:maxSdkVersion="30"/>
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN"
android:maxSdkVersion="30"/>
<uses-permission android:name="android.permission.BLUETOOTH_CONNECT"/>
<uses-permission android:name="android.permission.CAMERA"/>
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.VIBRATE"/>
@@ -21,6 +21,7 @@ import android.widget.SeekBar
import de.markusfisch.android.binaryeye.R
import de.markusfisch.android.binaryeye.adapter.prettifyFormatName
import de.markusfisch.android.binaryeye.app.*
import de.markusfisch.android.binaryeye.bluetooth.sendBluetoothAsync
import de.markusfisch.android.binaryeye.content.copyToClipboard
import de.markusfisch.android.binaryeye.content.execShareIntent
import de.markusfisch.android.binaryeye.content.openUrl
@@ -426,7 +427,8 @@ class CameraActivity : AppCompatActivity() {
tryHarder = prefs.tryHarder,
tryRotate = prefs.autoRotate,
tryInvert = true,
tryDownscale = true
tryDownscale = true,
maxNumberOfSymbols = 1
)
var useLocalAverage = false
camera.setPreviewCallback { frameData, _ ->
@@ -449,7 +451,8 @@ class CameraActivity : AppCompatActivity() {
}
formats = formatsToRead.joinToString()
}
)?.let { result ->
)?.let { results ->
val result = results.first()
if (result.text != ignoreNext) {
postResult(result)
decoding = false
@@ -591,11 +594,7 @@ class CameraActivity : AppCompatActivity() {
Intent(Intent.ACTION_VIEW, returnUri)
)
else -> {
showResult(
this@CameraActivity,
result,
bulkMode
)
showResult(result, bulkMode)
// If this app was invoked via a deep link but without
// a return URI, we probably don't want to return to
// the camera screen after scanning, but to the caller.
@@ -628,13 +627,12 @@ class CameraActivity : AppCompatActivity() {
}
}
fun showResult(
activity: Activity,
fun Activity.showResult(
result: Result,
bulkMode: Boolean = false,
) {
if (prefs.copyImmediately) {
activity.copyToClipboard(result.text)
copyToClipboard(result.text)
}
val scan = result.toScan()
if (prefs.useHistory) {
@@ -642,7 +640,7 @@ fun showResult(
}
if (prefs.sendScanActive && prefs.sendScanUrl.isNotEmpty()) {
if (prefs.sendScanType == "4") {
activity.openUrl(
openUrl(
prefs.sendScanUrl + scan.content.urlEncode()
)
return
@@ -652,18 +650,36 @@ fun showResult(
prefs.sendScanType
) { code, body ->
if (code == null || code < 200 || code > 299) {
activity.errorFeedback()
errorFeedback()
}
if (body != null && body.isNotEmpty()) {
activity.toast(body)
toast(body)
} else if (code == null || code > 299) {
activity.toast(R.string.background_request_failed)
toast(R.string.background_request_failed)
}
}
}
if (prefs.sendScanBluetooth &&
prefs.sendScanBluetoothHost.isNotEmpty() &&
hasBluetoothPermission()
) {
scan.sendBluetoothAsync(
prefs.sendScanBluetoothHost
) { con, send ->
if (!con) {
toast(R.string.bluetooth_connect_fail)
errorFeedback()
} else if (!send) {
toast(R.string.bluetooth_send_fail)
errorFeedback()
} else {
toast(R.string.bluetooth_send_success)
}
}
}
if (!bulkMode) {
activity.startActivity(
MainActivity.getDecodeIntent(activity, scan)
startActivity(
MainActivity.getDecodeIntent(this, scan)
)
}
}
@@ -43,6 +43,7 @@ class PickActivity : AppCompatActivity() {
tryRotate = true,
tryInvert = true,
tryDownscale = true,
maxNumberOfSymbols = 1,
formats = prefs.barcodeFormats.joinToString()
)
@@ -145,7 +146,7 @@ class PickActivity : AppCompatActivity() {
)
}
scope.launch {
cropped.decode()?.let {
cropped.decode()?.first()?.let {
withContext(Dispatchers.Main) {
if (isFinishing) {
return@withContext
@@ -243,7 +244,7 @@ class PickActivity : AppCompatActivity() {
private fun showResult() {
val r = result
if (r != null) {
showResult(this, r)
showResult(r)
finish()
} else {
applicationContext.toast(R.string.no_barcode_found)
@@ -3,6 +3,7 @@ package de.markusfisch.android.binaryeye.app
import android.Manifest
import android.app.Activity
import android.content.pm.PackageManager
import android.os.Build
import android.support.v4.app.ActivityCompat
import android.support.v4.content.ContextCompat
@@ -32,6 +33,18 @@ fun Activity.hasLocationPermission(callback: () -> Any): Boolean {
)
}
const val PERMISSION_BLUETOOTH = 4
fun Activity.hasBluetoothPermission() = if (
Build.VERSION.SDK_INT >= Build.VERSION_CODES.S
) {
hasPermission(
Manifest.permission.BLUETOOTH_CONNECT,
PERMISSION_BLUETOOTH
)
} else {
false
}
private fun Activity.hasPermission(
permission: String,
requestCode: Int
@@ -0,0 +1,105 @@
package de.markusfisch.android.binaryeye.bluetooth
import android.bluetooth.BluetoothAdapter
import android.bluetooth.BluetoothDevice
import android.bluetooth.BluetoothSocket
import android.support.v7.preference.ListPreference
import de.markusfisch.android.binaryeye.database.Scan
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.launch
import kotlinx.coroutines.withContext
import java.io.OutputStreamWriter
import java.util.*
fun Scan.sendBluetoothAsync(
host: String,
callback: (Boolean, Boolean) -> Unit
) {
CoroutineScope(Dispatchers.IO).launch(Dispatchers.IO) {
var connectResponse = true
var sendResponse = false
if (!isConnected) {
connectResponse = connect(host)
}
if (connectResponse) {
sendResponse = send(content)
}
withContext(Dispatchers.Main) {
callback(connectResponse, sendResponse)
}
}
}
fun setBluetoothHosts(listPref: ListPreference) {
val devices = try {
BluetoothAdapter.getDefaultAdapter().bondedDevices
} catch (e: SecurityException) {
// Do nothing, either the user has denied Bluetooth access
// or the permission was removed by the system. We're catching
// the exception to keep the app from crashing.
null
} ?: return
listPref.entries = devices.map {
it.name
}.toTypedArray()
listPref.entryValues = devices.map {
it.address
}.toTypedArray()
listPref.callChangeListener(listPref.value)
}
private lateinit var socket: BluetoothSocket
private lateinit var writer: OutputStreamWriter
private val blue = BluetoothAdapter.getDefaultAdapter()
private val uuid = UUID.fromString(
"8a8478c9-2ca8-404b-a0de-101f34ab71ae"
)
private var isConnected = false
private fun connect(deviceName: String): Boolean = try {
val device = findByName(deviceName) ?: throw RuntimeException(
"Bluetooth device not found"
)
socket = device.createRfcommSocketToServiceRecord(uuid)
socket.connect()
isConnected = true
writer = socket.outputStream.writer()
true
} catch (e: Exception) {
close()
false
}
private fun send(message: String): Boolean = try {
writer.apply {
write(message)
write("\n")
flush()
}
true
} catch (e: Exception) {
close()
false
}
private fun close() {
writer.close()
socket.close()
isConnected = false
}
private fun findByName(findableName: String): BluetoothDevice? {
val deviceList = blue.bondedDevices
for (device in deviceList) {
if (device.address == findableName) {
return device
}
}
return null
}
@@ -178,9 +178,9 @@ fun Scan.toRecreation(
Format.valueOf(format),
when (errorCorrectionLevel) {
"L" -> 0
"M" -> 1
"Q" -> 2
"H" -> 3
"M" -> 4
"Q" -> 6
"H" -> 8
else -> -1
},
size,
@@ -18,12 +18,14 @@ import android.support.v7.preference.PreferenceGroup
import de.markusfisch.android.binaryeye.R
import de.markusfisch.android.binaryeye.activity.SplashActivity
import de.markusfisch.android.binaryeye.app.addFragment
import de.markusfisch.android.binaryeye.app.hasBluetoothPermission
import de.markusfisch.android.binaryeye.app.prefs
import de.markusfisch.android.binaryeye.media.beepConfirm
import de.markusfisch.android.binaryeye.preference.UrlPreference
import de.markusfisch.android.binaryeye.view.setPaddingFromWindowInsets
import de.markusfisch.android.binaryeye.view.systemBarRecyclerViewScrollListener
import de.markusfisch.android.binaryeye.widget.toast
import de.markusfisch.android.binaryeye.bluetooth.setBluetoothHosts
class PreferencesFragment : PreferenceFragmentCompat() {
private val changeListener = object : OnSharedPreferenceChangeListener {
@@ -39,6 +41,14 @@ class PreferencesFragment : PreferenceFragmentCompat() {
beepConfirm()
setSummary(preference)
}
"send_scan_bluetooth" -> {
if (prefs.sendScanBluetooth &&
activity?.hasBluetoothPermission() == false
) {
prefs.sendScanBluetooth = false
}
setSummary(preference)
}
else -> setSummary(preference)
}
}
@@ -46,9 +56,20 @@ class PreferencesFragment : PreferenceFragmentCompat() {
override fun onCreatePreferences(state: Bundle?, rootKey: String?) {
addPreferencesFromResource(R.xml.preferences)
setBluetoothResources()
wireClearNetworkPreferences()
}
private fun setBluetoothResources() {
if (prefs.sendScanBluetooth &&
activity?.hasBluetoothPermission() == true
) {
setBluetoothHosts(
findPreference("send_scan_bluetooth_host") as ListPreference
)
}
}
private fun wireClearNetworkPreferences() {
findPreference("clear_network_suggestions").apply {
if (Build.VERSION.SDK_INT > Build.VERSION_CODES.Q) {
@@ -122,6 +143,12 @@ class PreferencesFragment : PreferenceFragmentCompat() {
setTargetFragment(this@PreferencesFragment, 0)
show(fm, null)
}
} else if (preference.key == "send_scan_bluetooth_host") {
val ac = activity ?: return
if (ac.hasBluetoothPermission()) {
setBluetoothHosts(preference as ListPreference)
}
super.onDisplayPreferenceDialog(preference)
} else {
super.onDisplayPreferenceDialog(preference)
}
@@ -165,6 +165,16 @@ class Preferences {
apply(SEND_SCAN_TYPE, value)
field = value
}
var sendScanBluetooth = false
set(value) {
apply(SEND_SCAN_BLUETOOTH, value)
field = value
}
var sendScanBluetoothHost: String = ""
set(value) {
apply(SEND_SCAN_BLUETOOTH_HOST, value)
field = value
}
var customLocale: String = ""
set(value) {
apply(CUSTOM_LOCALE, value)
@@ -260,6 +270,16 @@ class Preferences {
preferences.getString(SEND_SCAN_TYPE, sendScanType)?.also {
sendScanType = it
}
sendScanBluetooth = preferences.getBoolean(
SEND_SCAN_BLUETOOTH,
sendScanBluetooth
)
preferences.getString(
SEND_SCAN_BLUETOOTH_HOST,
sendScanBluetoothHost
)?.also {
sendScanBluetoothHost = it
}
preferences.getString(CUSTOM_LOCALE, customLocale)?.also {
customLocale = it
}
@@ -334,6 +354,8 @@ class Preferences {
private const val SEND_SCAN_ACTIVE = "send_scan_active"
private const val SEND_SCAN_URL = "send_scan_url"
private const val SEND_SCAN_TYPE = "send_scan_type"
private const val SEND_SCAN_BLUETOOTH = "send_scan_bluetooth"
private const val SEND_SCAN_BLUETOOTH_HOST = "send_scan_bluetooth_host"
private const val CUSTOM_LOCALE = "custom_locale"
private const val INDEX_OF_LAST_SELECTED_FORMAT = "index_of_last_selected_format"
private const val INDEX_OF_LAST_SELECTED_EC_LEVEL = "index_of_last_selected_ec_level"
Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.3 KiB

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 KiB

After

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.7 KiB

After

Width:  |  Height:  |  Size: 4.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.9 KiB

After

Width:  |  Height:  |  Size: 4.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 731 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 899 B

After

Width:  |  Height:  |  Size: 583 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 755 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.8 KiB

After

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.7 KiB

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

After

Width:  |  Height:  |  Size: 899 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 698 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 KiB

After

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.8 KiB

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.3 KiB

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.9 KiB

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.1 KiB

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.3 KiB

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.8 KiB

After

Width:  |  Height:  |  Size: 5.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 6.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.6 KiB

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.3 KiB

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.9 KiB

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 8.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 22 KiB

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.2 KiB

After

Width:  |  Height:  |  Size: 3.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.4 KiB

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.7 KiB

After

Width:  |  Height:  |  Size: 4.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 32 KiB

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.4 KiB

After

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 KiB

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.2 KiB

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.5 KiB

After

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.9 KiB

After

Width:  |  Height:  |  Size: 5.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.3 KiB

After

Width:  |  Height:  |  Size: 6.9 KiB

+7
View File
@@ -124,6 +124,13 @@
<string name="send_type_post_json">POST application/json</string>
<string name="send_type_external_browser">Open in external browser</string>
<string name="test_url">পরীক্ষার জন্য ইউআরএল</string>
<string name="send_scan_bluetooth">Forward scans with Bluetooth</string>
<string name="send_scan_bluetooth_summary">Enable to forwards scans to a given Bluetooth host.</string>
<string name="send_scan_bluetooth_host">Host</string>
<string name="no_bluetooth_hosts_paired">No Hosts Paired</string>
<string name="bluetooth_connect_fail">Could not connect to bluetooth device.</string>
<string name="bluetooth_send_fail">Could not send to bluetooth device.</string>
<string name="bluetooth_send_success">Successful bluetooth send.</string>
<string name="really_remove_scan">আসলেই এটা মুছবে?</string>
<string name="really_remove_all_scans">আসলেই সব মুছবে?</string>
<string name="really_remove_selected_scans">আসলেই নির্বাচিত সব মুছবে?</string>
+7
View File
@@ -126,6 +126,13 @@
<string name="send_type_post_json">POST application/json</string>
<string name="send_type_external_browser">Otevřít v prohlížeči</string>
<string name="test_url">Otestovat URL</string>
<string name="send_scan_bluetooth">Forward scans with Bluetooth</string>
<string name="send_scan_bluetooth_summary">Enable to forwards scans to a given Bluetooth host.</string>
<string name="send_scan_bluetooth_host">Host</string>
<string name="no_bluetooth_hosts_paired">No Hosts Paired</string>
<string name="bluetooth_connect_fail">Could not connect to bluetooth device.</string>
<string name="bluetooth_send_fail">Could not send to bluetooth device.</string>
<string name="bluetooth_send_success">Successful bluetooth send.</string>
<string name="really_remove_scan">Opravdu odstranit sken?</string>
<string name="really_remove_all_scans">Opravdu odstranit všechny skeny?</string>
<string name="really_remove_selected_scans">Opravdu odstranit zvolené skeny?</string>
+7
View File
@@ -124,6 +124,13 @@
<string name="send_type_post_json">POST application/json</string>
<string name="send_type_external_browser">Åbn i ekstern browser</string>
<string name="test_url">Test URL</string>
<string name="send_scan_bluetooth">Forward scans with Bluetooth</string>
<string name="send_scan_bluetooth_summary">Enable to forwards scans to a given Bluetooth host.</string>
<string name="send_scan_bluetooth_host">Host</string>
<string name="no_bluetooth_hosts_paired">No Hosts Paired</string>
<string name="bluetooth_connect_fail">Could not connect to bluetooth device.</string>
<string name="bluetooth_send_fail">Could not send to bluetooth device.</string>
<string name="bluetooth_send_success">Successful bluetooth send.</string>
<string name="really_remove_scan">Vil du virkelig fjerne scanningen?</string>
<string name="really_remove_all_scans">Vil du virkelig fjerne alle scanninger?</string>
<string name="really_remove_selected_scans">Vil du virkelig fjerne valgte scanninger?</string>
+7
View File
@@ -124,6 +124,13 @@
<string name="send_type_post_json">POST application/json</string>
<string name="send_type_external_browser">In externem Browser öffnen</string>
<string name="test_url">Test URL</string>
<string name="send_scan_bluetooth">Scans per Bluetooth weiterleiten</string>
<string name="send_scan_bluetooth_summary">Aktivieren Sie diese Option, um Scans an das angegebene Bluetooth-Gerät weiterzuleiten.</string>
<string name="send_scan_bluetooth_host">Gerät</string>
<string name="no_bluetooth_hosts_paired">Keine Geräte verbunden</string>
<string name="bluetooth_connect_fail">Es kann leider keine Verbindung zum Bluetooth-Gerät hergestellt werden</string>
<string name="bluetooth_send_fail">Senden zum Bluetooth-Gerät fehlgeschlagen</string>
<string name="bluetooth_send_success">Erfolgreich zum Bluetooth-Gerät gesendet</string>
<string name="really_remove_scan">Code wirklich entfernen?</string>
<string name="really_remove_all_scans">Alle Codes entfernen?</string>
<string name="really_remove_selected_scans">Alle ausgewählten Codes entfernen?</string>
+7
View File
@@ -124,6 +124,13 @@
<string name="send_type_post_json">POST application/json</string>
<string name="send_type_external_browser">Abrir en el navegador</string>
<string name="test_url">URL de prueba</string>
<string name="send_scan_bluetooth">Forward scans with Bluetooth</string>
<string name="send_scan_bluetooth_summary">Enable to forwards scans to a given Bluetooth host.</string>
<string name="send_scan_bluetooth_host">Host</string>
<string name="no_bluetooth_hosts_paired">No Hosts Paired</string>
<string name="bluetooth_connect_fail">Could not connect to bluetooth device.</string>
<string name="bluetooth_send_fail">Could not send to bluetooth device.</string>
<string name="bluetooth_send_success">Successful bluetooth send.</string>
<string name="really_remove_scan">¿Realmente desea borrar el escaneo seleccionado?</string>
<string name="really_remove_all_scans">¿Realmente desea borrar todo lo escaneado?</string>
<string name="really_remove_selected_scans">¿Realmente desea borrar los escaneos seleccionados?</string>
+7
View File
@@ -124,6 +124,13 @@
<string name="send_type_post_json">POST application/json</string>
<string name="send_type_external_browser">گشودن در مرورگر خارجی</string>
<string name="test_url">آزمودن نشانی</string>
<string name="send_scan_bluetooth">Forward scans with Bluetooth</string>
<string name="send_scan_bluetooth_summary">Enable to forwards scans to a given Bluetooth host.</string>
<string name="send_scan_bluetooth_host">Host</string>
<string name="no_bluetooth_hosts_paired">No Hosts Paired</string>
<string name="bluetooth_connect_fail">Could not connect to bluetooth device.</string>
<string name="bluetooth_send_fail">Could not send to bluetooth device.</string>
<string name="bluetooth_send_success">Successful bluetooth send.</string>
<string name="really_remove_scan">برای برداشتن پویش مطمئنید؟</string>
<string name="really_remove_all_scans">برای برداشتن همهٔ پویش‌ها مطمئنید؟</string>
<string name="really_remove_selected_scans">برای برداشتن پویش‌های برگزیده شده مطمئنید؟</string>
+7
View File
@@ -125,6 +125,13 @@
<string name="send_type_post_json">POST application/json</string>
<string name="send_type_external_browser">Ouvrir dans un navigateur externe</string>
<string name="test_url">Tester l\'URL</string>
<string name="send_scan_bluetooth">Forward scans with Bluetooth</string>
<string name="send_scan_bluetooth_summary">Enable to forwards scans to a given Bluetooth host.</string>
<string name="send_scan_bluetooth_host">Host</string>
<string name="no_bluetooth_hosts_paired">No Hosts Paired</string>
<string name="bluetooth_connect_fail">Could not connect to bluetooth device.</string>
<string name="bluetooth_send_fail">Could not send to bluetooth device.</string>
<string name="bluetooth_send_success">Successful bluetooth send.</string>
<string name="really_remove_scan">Supprimer le scan ?</string>
<string name="really_remove_all_scans">Supprimer tous les scans ?</string>
<string name="really_remove_selected_scans">Supprimer les scans sélectionnés ?</string>
+7
View File
@@ -124,6 +124,13 @@
<string name="send_type_post_json">POST application/json</string>
<string name="send_type_external_browser">Megnyitás külső böngészőben</string>
<string name="test_url">Teszt URL</string>
<string name="send_scan_bluetooth">Forward scans with Bluetooth</string>
<string name="send_scan_bluetooth_summary">Enable to forwards scans to a given Bluetooth host.</string>
<string name="send_scan_bluetooth_host">Host</string>
<string name="no_bluetooth_hosts_paired">No Hosts Paired</string>
<string name="bluetooth_connect_fail">Could not connect to bluetooth device.</string>
<string name="bluetooth_send_fail">Could not send to bluetooth device.</string>
<string name="bluetooth_send_success">Successful bluetooth send.</string>
<string name="really_remove_scan">Valóban eltávolítja a beolvasást?</string>
<string name="really_remove_all_scans">Valóban eltávolítja az összes beolvasását?</string>
<string name="really_remove_selected_scans">Valóban eltávolítja a kijelölt beolvasásokat?</string>
+7
View File
@@ -123,6 +123,13 @@
<string name="send_type_post_json">POST application/json</string>
<string name="send_type_external_browser">Buka di peramban eksternal</string>
<string name="test_url">URL Tes</string>
<string name="send_scan_bluetooth">Forward scans with Bluetooth</string>
<string name="send_scan_bluetooth_summary">Enable to forwards scans to a given Bluetooth host.</string>
<string name="send_scan_bluetooth_host">Host</string>
<string name="no_bluetooth_hosts_paired">No Hosts Paired</string>
<string name="bluetooth_connect_fail">Could not connect to bluetooth device.</string>
<string name="bluetooth_send_fail">Could not send to bluetooth device.</string>
<string name="bluetooth_send_success">Successful bluetooth send.</string>
<string name="really_remove_scan">Yakin menghapus pindaian?</string>
<string name="really_remove_all_scans">Yakin menghapus semua pindaian?</string>
<string name="really_remove_selected_scans">Yakin menghapus pindaian yang dipilih?</string>
+7
View File
@@ -124,6 +124,13 @@
<string name="send_type_post_json">POST application/json</string>
<string name="send_type_external_browser">Apri nel browser esterno</string>
<string name="test_url">Prova URL</string>
<string name="send_scan_bluetooth">Inoltra scansioni con Bluetooth</string>
<string name="send_scan_bluetooth_summary">Abilita per inoltrare le scansioni ad un determinato host Bluetooth.</string>
<string name="send_scan_bluetooth_host">Host</string>
<string name="no_bluetooth_hosts_paired">Nessun host accoppiato</string>
<string name="bluetooth_connect_fail">Impossibile connettersi al dispositivo Bluetooth.</string>
<string name="bluetooth_send_fail">Impossibile inviare al dispositivo Bluetooth.</string>
<string name="bluetooth_send_success">Invio via Bluetooth riuscito.</string>
<string name="really_remove_scan">Vuoi rimuovere la scansione?</string>
<string name="really_remove_all_scans">Vuoi rimuovere tutte le scansioni?</string>
<string name="really_remove_selected_scans">Vuoi rimuovere le scansioni selezionate?</string>
+7
View File
@@ -123,6 +123,13 @@
<string name="send_type_post_json">POST application/json</string>
<string name="send_type_external_browser">外部ブラウザで開く</string>
<string name="test_url">URLをテスト</string>
<string name="send_scan_bluetooth">Forward scans with Bluetooth</string>
<string name="send_scan_bluetooth_summary">Enable to forwards scans to a given Bluetooth host.</string>
<string name="send_scan_bluetooth_host">Host</string>
<string name="no_bluetooth_hosts_paired">No Hosts Paired</string>
<string name="bluetooth_connect_fail">Could not connect to bluetooth device.</string>
<string name="bluetooth_send_fail">Could not send to bluetooth device.</string>
<string name="bluetooth_send_success">Successful bluetooth send.</string>
<string name="really_remove_scan">このスキャン履歴を削除しても宜しいですか?</string>
<string name="really_remove_all_scans">全てのスキャン履歴を削除しても宜しいですか?</string>
<string name="really_remove_selected_scans">選択されたスキャン履歴を削除しても宜しいですか?</string>
+7
View File
@@ -124,6 +124,13 @@
<string name="send_type_post_json">POST application/json</string>
<string name="send_type_external_browser">Open in external browser</string>
<string name="test_url">Test URL</string>
<string name="send_scan_bluetooth">Forward scans with Bluetooth</string>
<string name="send_scan_bluetooth_summary">Enable to forwards scans to a given Bluetooth host.</string>
<string name="send_scan_bluetooth_host">Host</string>
<string name="no_bluetooth_hosts_paired">No Hosts Paired</string>
<string name="bluetooth_connect_fail">Could not connect to bluetooth device.</string>
<string name="bluetooth_send_fail">Could not send to bluetooth device.</string>
<string name="bluetooth_send_success">Successful bluetooth send.</string>
<string name="really_remove_scan">ნამდვილად გსურთ სკანირების წაშლა?</string>
<string name="really_remove_all_scans">ნამდვილად გსურთ ყველაფრის წაშლა?</string>
<string name="really_remove_selected_scans">ნამდვილად გსურთ შერჩეული შტრიხ-კოდების წაშლა?</string>
+7 -1
View File
@@ -6,7 +6,6 @@
<string name="content">Content</string>
<string name="binary_data">(binary data)</string>
<plurals name="barcode_info">
<item quantity="one">%2$d character, %1$s</item>
<item quantity="other">%2$d characters, %1$s</item>
</plurals>
<string name="error_correction_level">Error correction level</string>
@@ -124,6 +123,13 @@
<string name="send_type_post_json">POST application/json</string>
<string name="send_type_external_browser">Open in external browser</string>
<string name="test_url">Test URL</string>
<string name="send_scan_bluetooth">Forward scans with Bluetooth</string>
<string name="send_scan_bluetooth_summary">Enable to forwards scans to a given Bluetooth host.</string>
<string name="send_scan_bluetooth_host">Host</string>
<string name="no_bluetooth_hosts_paired">No Hosts Paired</string>
<string name="bluetooth_connect_fail">Could not connect to bluetooth device.</string>
<string name="bluetooth_send_fail">Could not send to bluetooth device.</string>
<string name="bluetooth_send_success">Successful bluetooth send.</string>
<string name="really_remove_scan">Really remove scan?</string>
<string name="really_remove_all_scans">Really remove all scans?</string>
<string name="really_remove_selected_scans">Really remove selected scans?</string>
+7
View File
@@ -124,6 +124,13 @@
<string name="send_type_post_json">POST toepassing/json</string>
<string name="send_type_external_browser">Open in external browser</string>
<string name="test_url">Test URL</string>
<string name="send_scan_bluetooth">Forward scans with Bluetooth</string>
<string name="send_scan_bluetooth_summary">Enable to forwards scans to a given Bluetooth host.</string>
<string name="send_scan_bluetooth_host">Host</string>
<string name="no_bluetooth_hosts_paired">No Hosts Paired</string>
<string name="bluetooth_connect_fail">Could not connect to bluetooth device.</string>
<string name="bluetooth_send_fail">Could not send to bluetooth device.</string>
<string name="bluetooth_send_success">Successful bluetooth send.</string>
<string name="really_remove_scan">Scan echt verwijderen?</string>
<string name="really_remove_all_scans">Alle scans echt verwijderen?</string>
<string name="really_remove_selected_scans">Geselecteerde scans verwijderen?</string>
+13
View File
@@ -63,6 +63,12 @@
<string name="really_remove_scan">Czy naprawdę usunąć skan?</string>
<string name="really_remove_selected_scans">Czy naprawdę usunąć wybrane skany?</string>
<string name="binary_data">(dane binarne)</string>
<plurals name="barcode_info">
<item quantity="one">%2$d character, %1$s</item>
<item quantity="few">%2$d characters, %1$s</item>
<item quantity="many">%2$d characters, %1$s</item>
<item quantity="other">%2$d characters, %1$s</item>
</plurals>
<string name="show_hex_dump">Pokazuj zrzut szesnastkowy</string>
<string name="show_hex_dump_summary">Pokaż zeskanowaną zawartośc w postaci szesnastkowej</string>
<string name="show_recreation">Show recreated barcode</string>
@@ -138,6 +144,13 @@
<string name="send_type_post_json">POST application/json</string>
<string name="send_type_external_browser">Otwórz w zewnętrznej przeglądarce</string>
<string name="test_url">Testuj URL</string>
<string name="send_scan_bluetooth">Forward scans with Bluetooth</string>
<string name="send_scan_bluetooth_summary">Enable to forwards scans to a given Bluetooth host.</string>
<string name="send_scan_bluetooth_host">Host</string>
<string name="no_bluetooth_hosts_paired">No Hosts Paired</string>
<string name="bluetooth_connect_fail">Could not connect to bluetooth device.</string>
<string name="bluetooth_send_fail">Could not send to bluetooth device.</string>
<string name="bluetooth_send_success">Successful bluetooth send.</string>
<string name="copy_password">Skopiuj hasło do schowka</string>
<string name="copied_password_to_clipboard">Hasło skopiowane do schowka</string>
<string name="gtin_price">Sugerowana cena</string>
@@ -124,6 +124,13 @@
<string name="send_type_post_json">POST application/json</string>
<string name="send_type_external_browser">Abrir em navegador externo</string>
<string name="test_url">Testar a URL</string>
<string name="send_scan_bluetooth">Forward scans with Bluetooth</string>
<string name="send_scan_bluetooth_summary">Enable to forwards scans to a given Bluetooth host.</string>
<string name="send_scan_bluetooth_host">Host</string>
<string name="no_bluetooth_hosts_paired">No Hosts Paired</string>
<string name="bluetooth_connect_fail">Could not connect to bluetooth device.</string>
<string name="bluetooth_send_fail">Could not send to bluetooth device.</string>
<string name="bluetooth_send_success">Successful bluetooth send.</string>
<string name="really_remove_scan">Deseja remover esta digitalização?</string>
<string name="really_remove_all_scans">Deseja remover todas as digitalizações?</string>
<string name="really_remove_selected_scans">Deseja remover digitalizações selecionados?</string>
@@ -126,6 +126,13 @@
<string name="send_type_post_json">POST-приложение/json</string>
<string name="send_type_external_browser">Открыть во внешнем браузере</string>
<string name="test_url">Проверка URL</string>
<string name="send_scan_bluetooth">Отправлять сканирования по bluetooth</string>
<string name="send_scan_bluetooth_summary">Пересылать сканированные данные на указанный узел bluetooth.</string>
<string name="send_scan_bluetooth_host">Узел</string>
<string name="no_bluetooth_hosts_paired">Нет сопряжённых узлов</string>
<string name="bluetooth_connect_fail">Невозможно подключиться к bluetooth-устройству.</string>
<string name="bluetooth_send_fail">Невозможно отправить на bluetooth-устройство.</string>
<string name="bluetooth_send_success">Успешно отправлено по bluetooth.</string>
<string name="really_remove_scan">Удалить сканирование?</string>
<string name="really_remove_all_scans">Удалить все сканирования?</string>
<string name="really_remove_selected_scans">Удалить выбранные штрих-коды?</string>
+7
View File
@@ -124,6 +124,13 @@
<string name="send_type_post_json">POST application/json</string>
<string name="send_type_external_browser">Harici tarayıcıda aç</string>
<string name="test_url">URL\'yi sına</string>
<string name="send_scan_bluetooth">Forward scans with Bluetooth</string>
<string name="send_scan_bluetooth_summary">Enable to forwards scans to a given Bluetooth host.</string>
<string name="send_scan_bluetooth_host">Host</string>
<string name="no_bluetooth_hosts_paired">No Hosts Paired</string>
<string name="bluetooth_connect_fail">Could not connect to bluetooth device.</string>
<string name="bluetooth_send_fail">Could not send to bluetooth device.</string>
<string name="bluetooth_send_success">Successful bluetooth send.</string>
<string name="really_remove_scan">Tarama gerçekten silinsin mi?</string>
<string name="really_remove_all_scans">Tüm taramalar gerçekten silinsin mi?</string>
<string name="really_remove_selected_scans">Seçili taramalar gerçekten silinsin mi?</string>
+7
View File
@@ -125,6 +125,13 @@
<string name="send_type_post_json">POST application/json</string>
<string name="send_type_external_browser">Відкрити у зовнішньому браузері</string>
<string name="test_url">Перевірити URL</string>
<string name="send_scan_bluetooth">Forward scans with Bluetooth</string>
<string name="send_scan_bluetooth_summary">Enable to forwards scans to a given Bluetooth host.</string>
<string name="send_scan_bluetooth_host">Host</string>
<string name="no_bluetooth_hosts_paired">No Hosts Paired</string>
<string name="bluetooth_connect_fail">Could not connect to bluetooth device.</string>
<string name="bluetooth_send_fail">Could not send to bluetooth device.</string>
<string name="bluetooth_send_success">Successful bluetooth send.</string>
<string name="really_remove_scan">Дійсно видалити сканування?</string>
<string name="really_remove_all_scans">Дійсно видалити всі сканування?</string>
<string name="really_remove_selected_scans">Дійсно видалити вибрані сканування?</string>
+7
View File
@@ -123,6 +123,13 @@
<string name="send_type_post_json">POST application/json</string>
<string name="send_type_external_browser">Open in external browser</string>
<string name="test_url">URL thử</string>
<string name="send_scan_bluetooth">Forward scans with Bluetooth</string>
<string name="send_scan_bluetooth_summary">Enable to forwards scans to a given Bluetooth host.</string>
<string name="send_scan_bluetooth_host">Host</string>
<string name="no_bluetooth_hosts_paired">No Hosts Paired</string>
<string name="bluetooth_connect_fail">Could not connect to bluetooth device.</string>
<string name="bluetooth_send_fail">Could not send to bluetooth device.</string>
<string name="bluetooth_send_success">Successful bluetooth send.</string>
<string name="really_remove_scan">Thật sự xoá lần quét này?</string>
<string name="really_remove_all_scans">Thật sự xoá tất cả các lần quét?</string>
<string name="really_remove_selected_scans">Thật sự xoá các lần quét được chọn?</string>
@@ -123,6 +123,13 @@
<string name="send_type_post_json">POST application/json</string>
<string name="send_type_external_browser">在外部浏览器中打开</string>
<string name="test_url">测试 URL</string>
<string name="send_scan_bluetooth">Forward scans with Bluetooth</string>
<string name="send_scan_bluetooth_summary">Enable to forwards scans to a given Bluetooth host.</string>
<string name="send_scan_bluetooth_host">Host</string>
<string name="no_bluetooth_hosts_paired">No Hosts Paired</string>
<string name="bluetooth_connect_fail">Could not connect to bluetooth device.</string>
<string name="bluetooth_send_fail">Could not send to bluetooth device.</string>
<string name="bluetooth_send_success">Successful bluetooth send.</string>
<string name="really_remove_scan">确定删除记录?</string>
<string name="really_remove_all_scans">确定删除全部记录?</string>
<string name="really_remove_selected_scans">确定删除所选记录?</string>
@@ -123,6 +123,13 @@
<string name="send_type_post_json">POST application/json</string>
<string name="send_type_external_browser">在外部瀏覽器中開啟</string>
<string name="test_url">測試 URL</string>
<string name="send_scan_bluetooth">Forward scans with Bluetooth</string>
<string name="send_scan_bluetooth_summary">Enable to forwards scans to a given Bluetooth host.</string>
<string name="send_scan_bluetooth_host">Host</string>
<string name="no_bluetooth_hosts_paired">No Hosts Paired</string>
<string name="bluetooth_connect_fail">Could not connect to bluetooth device.</string>
<string name="bluetooth_send_fail">Could not send to bluetooth device.</string>
<string name="bluetooth_send_success">Successful bluetooth send.</string>
<string name="really_remove_scan">確定刪除記錄?</string>
<string name="really_remove_all_scans">確定刪除全部掃描記錄?</string>
<string name="really_remove_selected_scans">確定刪除所選掃描記錄?</string>
+8
View File
@@ -0,0 +1,8 @@
<resources>
<string-array name="bluetooth_host_names">
<item>@string/no_bluetooth_hosts_paired</item>
</string-array>
<string-array name="bluetooth_host_values">
<item>@string/no_bluetooth_hosts_paired_value</item>
</string-array>
</resources>
@@ -3,4 +3,5 @@
<string name="url_hint" translatable="false">http://example.com/</string>
<string name="url_hint_add_content" translatable="false">http://example.com/?content=</string>
<string name="project_url" translatable="false">https://github.com/markusfisch/BinaryEye</string>
<string name="no_bluetooth_hosts_paired_value" translatable="false" />
</resources>
+7
View File
@@ -124,6 +124,13 @@
<string name="send_type_post_json">POST application/json</string>
<string name="send_type_external_browser">Open in external browser</string>
<string name="test_url">Test URL</string>
<string name="send_scan_bluetooth">Forward scans with Bluetooth</string>
<string name="send_scan_bluetooth_summary">Enable to forwards scans to a given Bluetooth host.</string>
<string name="send_scan_bluetooth_host">Host</string>
<string name="no_bluetooth_hosts_paired">No Hosts Paired</string>
<string name="bluetooth_connect_fail">Could not connect to bluetooth device.</string>
<string name="bluetooth_send_fail">Could not send to bluetooth device.</string>
<string name="bluetooth_send_success">Successful bluetooth send.</string>
<string name="really_remove_scan">Really remove scan?</string>
<string name="really_remove_all_scans">Really remove all scans?</string>
<string name="really_remove_selected_scans">Really remove selected scans?</string>
+11
View File
@@ -91,6 +91,17 @@
android:entries="@array/send_type_names"
android:entryValues="@array/send_type_values"
android:defaultValue="0"/>
<android.support.v7.preference.SwitchPreferenceCompat
android:defaultValue="false"
android:key="send_scan_bluetooth"
android:title="@string/send_scan_bluetooth"
android:summary="@string/send_scan_bluetooth_summary"/>
<ListPreference
android:key="send_scan_bluetooth_host"
android:title="@string/send_scan_bluetooth_host"
android:entries="@array/bluetooth_host_names"
android:entryValues="@array/bluetooth_host_values"
android:defaultValue="@string/no_bluetooth_hosts_paired_value"/>
</PreferenceCategory>
<PreferenceCategory android:title="@string/content_category">
<android.support.v7.preference.SwitchPreferenceCompat
+11
View File
@@ -91,6 +91,17 @@
android:entries="@array/send_type_names"
android:entryValues="@array/send_type_values"
android:defaultValue="0"/>
<android.support.v7.preference.SwitchPreferenceCompat
android:defaultValue="false"
android:key="send_scan_bluetooth"
android:title="@string/send_scan_bluetooth"
android:summary="@string/send_scan_bluetooth_summary"/>
<ListPreference
android:key="send_scan_bluetooth_host"
android:title="@string/send_scan_bluetooth_host"
android:entries="@array/bluetooth_host_names"
android:entryValues="@array/bluetooth_host_values"
android:defaultValue="@string/no_bluetooth_hosts_paired_value"/>
</PreferenceCategory>
<PreferenceCategory android:title="@string/content_category">
<android.support.v7.preference.SwitchPreferenceCompat
+11
View File
@@ -86,6 +86,17 @@
android:entries="@array/send_type_names"
android:entryValues="@array/send_type_values"
android:defaultValue="0"/>
<android.support.v7.preference.SwitchPreferenceCompat
android:defaultValue="false"
android:key="send_scan_bluetooth"
android:title="@string/send_scan_bluetooth"
android:summary="@string/send_scan_bluetooth_summary"/>
<ListPreference
android:key="send_scan_bluetooth_host"
android:title="@string/send_scan_bluetooth_host"
android:entries="@array/bluetooth_host_names"
android:entryValues="@array/bluetooth_host_values"
android:defaultValue="@string/no_bluetooth_hosts_paired_value"/>
</PreferenceCategory>
<PreferenceCategory android:title="@string/content_category">
<android.support.v7.preference.SwitchPreferenceCompat
+2 -2
View File
@@ -1,7 +1,7 @@
buildscript {
ext {
kotlin_version = '1.7.20'
tools_version = '7.3.1'
kotlin_version = '1.7.21'
tools_version = '7.4.2'
sdk_version = 33
support_version = '25.3.1'
}
@@ -0,0 +1,7 @@
* Support sending scans via bluetooth
* Fix resolving error correction level for recreation
* Improve asset image compression
* Update ZXing C++
* Update Italian translation
* Update Russian translation
@@ -0,0 +1,7 @@
* Support sending scans via bluetooth
* Fix resolving error correction level for recreation
* Improve asset image compression
* Update ZXing C++
* Update Italian translation
* Update Russian translation
Binary file not shown.

Before

Width:  |  Height:  |  Size: 19 KiB

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 8.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 46 KiB

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 56 KiB

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 435 KiB

After

Width:  |  Height:  |  Size: 388 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 787 KiB

After

Width:  |  Height:  |  Size: 717 KiB

+1 -1
View File
@@ -1,6 +1,6 @@
#Wed Jan 26 11:58:22 CET 2022
distributionBase=GRADLE_USER_HOME
distributionUrl=https\://services.gradle.org/distributions/gradle-7.4-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-7.6-bin.zip
distributionPath=wrapper/dists
zipStorePath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME