mirror of
https://github.com/CatimaLoyalty/Android.git
synced 2025-12-24 23:57:53 -05:00
Compare commits
83 Commits
create-pul
...
create-pul
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
98ba87ea56 | ||
|
|
d5c03f9d36 | ||
|
|
6ed2ff849a | ||
|
|
2945450186 | ||
|
|
8944c6d5dc | ||
|
|
97db8ee025 | ||
|
|
777a3cce28 | ||
|
|
91386df0f7 | ||
|
|
9f95812d32 | ||
|
|
361b011205 | ||
|
|
ac45a5cdfe | ||
|
|
e892f5d57c | ||
|
|
a3d24ebe3b | ||
|
|
29ce8e63b3 | ||
|
|
223d6d1d35 | ||
|
|
e712765f0b | ||
|
|
ad68c43857 | ||
|
|
626c25b781 | ||
|
|
0e9366e0ce | ||
|
|
cccffe9543 | ||
|
|
821e81303c | ||
|
|
d3ba0ff93f | ||
|
|
2bf9f58054 | ||
|
|
07ba380c21 | ||
|
|
6e523dff7e | ||
|
|
702cc17bd5 | ||
|
|
6b9c452de7 | ||
|
|
5d9a670225 | ||
|
|
4cb939ab6b | ||
|
|
f14b2dffcd | ||
|
|
55b0ee7a63 | ||
|
|
4adfb0d292 | ||
|
|
948ee26852 | ||
|
|
a652d3fd9a | ||
|
|
18e530f3a0 | ||
|
|
a55dcd760c | ||
|
|
2bbcad03ef | ||
|
|
cc9c50032c | ||
|
|
06cf3e9288 | ||
|
|
a25e91dede | ||
|
|
57086649f4 | ||
|
|
7d2fc03248 | ||
|
|
b2ad30d1ae | ||
|
|
8970a0a031 | ||
|
|
c9e713cf7f | ||
|
|
64e315f0b0 | ||
|
|
f60cf0e674 | ||
|
|
5d2a1b0263 | ||
|
|
77860441ad | ||
|
|
f46ec1ec51 | ||
|
|
e644c347ec | ||
|
|
0b28df9999 | ||
|
|
dddb3e3a11 | ||
|
|
0518821341 | ||
|
|
2eefcf1270 | ||
|
|
93c3705207 | ||
|
|
9fcf9e4dd9 | ||
|
|
392ce9bc79 | ||
|
|
da3eaf36f1 | ||
|
|
0458c501c8 | ||
|
|
632ef8b3a8 | ||
|
|
40e5014cc6 | ||
|
|
ba09eb4ca3 | ||
|
|
2c77dcadb5 | ||
|
|
99eaaebf1c | ||
|
|
f2e77cdf09 | ||
|
|
8f00b17315 | ||
|
|
3a17756532 | ||
|
|
cff3fff971 | ||
|
|
2763635f17 | ||
|
|
1dd1a1273f | ||
|
|
3f5b953c16 | ||
|
|
1539d88d78 | ||
|
|
91ee846054 | ||
|
|
c5cecee7b1 | ||
|
|
1e0a52d780 | ||
|
|
0792bb1407 | ||
|
|
6e9a05389a | ||
|
|
68833a7ff1 | ||
|
|
cc7553850a | ||
|
|
e66277d665 | ||
|
|
caea63ea32 | ||
|
|
8218cc63c7 |
6
.github/workflows/android.yml
vendored
6
.github/workflows/android.yml
vendored
@@ -58,17 +58,17 @@ jobs:
|
||||
api-level: 21
|
||||
arch: x86_64
|
||||
script: ./gradlew connected${{ matrix.flavor }}DebugAndroidTest
|
||||
- name: Run instrumented tests (API 34)
|
||||
- name: Run instrumented tests (API 35)
|
||||
uses: ReactiveCircus/android-emulator-runner@v2
|
||||
with:
|
||||
api-level: 34
|
||||
api-level: 35
|
||||
arch: x86_64
|
||||
script: ./gradlew connected${{ matrix.flavor }}DebugAndroidTest
|
||||
- name: SpotBugs
|
||||
run: ./gradlew spotbugs${{ matrix.flavor }}Release
|
||||
- name: Archive test results
|
||||
if: always()
|
||||
uses: actions/upload-artifact@v4.6.1
|
||||
uses: actions/upload-artifact@v4.6.2
|
||||
with:
|
||||
name: test-results-flavor${{ matrix.flavor }}
|
||||
path: app/build/reports
|
||||
|
||||
4
.github/workflows/changelog-to-fastlane.yml
vendored
4
.github/workflows/changelog-to-fastlane.yml
vendored
@@ -29,13 +29,13 @@ jobs:
|
||||
id: checkout
|
||||
uses: actions/checkout@v4.2.2
|
||||
- name: Setup Python
|
||||
uses: actions/setup-python@v5.4.0
|
||||
uses: actions/setup-python@v5.5.0
|
||||
with:
|
||||
python-version: '3.x'
|
||||
- name: Run converter script
|
||||
run: python .scripts/changelog_to_fastlane.py
|
||||
- name: Create Pull Request
|
||||
uses: peter-evans/create-pull-request@v7.0.7
|
||||
uses: peter-evans/create-pull-request@v7.0.8
|
||||
with:
|
||||
title: "Update Fastlane changelogs"
|
||||
commit-message: "Update Fastlane changelogs"
|
||||
|
||||
2
.github/workflows/contributors-to-file.yml
vendored
2
.github/workflows/contributors-to-file.yml
vendored
@@ -33,7 +33,7 @@ jobs:
|
||||
file_in_repo: app/src/main/res/raw/contributors.txt
|
||||
min_commit_count: 5
|
||||
- name: Create Pull Request
|
||||
uses: peter-evans/create-pull-request@v7.0.7
|
||||
uses: peter-evans/create-pull-request@v7.0.8
|
||||
with:
|
||||
title: "Update contributors"
|
||||
commit-message: "Update contributors"
|
||||
|
||||
@@ -39,7 +39,7 @@ jobs:
|
||||
- name: Generate featureGraphic.png for each language
|
||||
run: .scripts/generate_feature_graphic/generate_feature_graphic.sh
|
||||
- name: Create Pull Request
|
||||
uses: peter-evans/create-pull-request@v7.0.7
|
||||
uses: peter-evans/create-pull-request@v7.0.8
|
||||
with:
|
||||
title: "Update feature graphic"
|
||||
commit-message: "Update feature graphic"
|
||||
|
||||
2
.github/workflows/gradle-update.yml
vendored
2
.github/workflows/gradle-update.yml
vendored
@@ -26,7 +26,7 @@ jobs:
|
||||
id: gradle-update
|
||||
- uses: gradle/actions/wrapper-validation@v4
|
||||
- name: Create Pull Request
|
||||
uses: peter-evans/create-pull-request@v7.0.7
|
||||
uses: peter-evans/create-pull-request@v7.0.8
|
||||
with:
|
||||
title: "Update Gradle to ${{ steps.gradle-update.outputs.version }}"
|
||||
commit-message: "Update Gradle to ${{ steps.gradle-update.outputs.version }}"
|
||||
|
||||
2
.github/workflows/update-locales.yml
vendored
2
.github/workflows/update-locales.yml
vendored
@@ -31,7 +31,7 @@ jobs:
|
||||
- name: Update locales
|
||||
run: .scripts/locales.py
|
||||
- name: Create Pull Request
|
||||
uses: peter-evans/create-pull-request@v7.0.7
|
||||
uses: peter-evans/create-pull-request@v7.0.8
|
||||
with:
|
||||
title: "Update locales"
|
||||
commit-message: "Update locales"
|
||||
|
||||
@@ -1,5 +1,11 @@
|
||||
# Changelog
|
||||
|
||||
## v2.34.5 - 147 (2025-03-22)
|
||||
|
||||
- Target Android 15
|
||||
- Fix crash reading unsupported pkpass files
|
||||
- Improve pkpass support
|
||||
|
||||
## v2.34.4 - 146 (2025-01-17)
|
||||
|
||||
- Ability to sort cards by start of validity
|
||||
|
||||
45
Gemfile.lock
45
Gemfile.lock
@@ -9,21 +9,22 @@ GEM
|
||||
public_suffix (>= 2.0.2, < 7.0)
|
||||
artifactory (3.0.17)
|
||||
atomos (0.1.3)
|
||||
aws-eventstream (1.3.0)
|
||||
aws-partitions (1.1020.0)
|
||||
aws-sdk-core (3.214.0)
|
||||
aws-eventstream (1.3.2)
|
||||
aws-partitions (1.1072.0)
|
||||
aws-sdk-core (3.220.2)
|
||||
aws-eventstream (~> 1, >= 1.3.0)
|
||||
aws-partitions (~> 1, >= 1.992.0)
|
||||
aws-sigv4 (~> 1.9)
|
||||
base64
|
||||
jmespath (~> 1, >= 1.6.1)
|
||||
aws-sdk-kms (1.96.0)
|
||||
aws-sdk-core (~> 3, >= 3.210.0)
|
||||
aws-sdk-kms (1.99.0)
|
||||
aws-sdk-core (~> 3, >= 3.216.0)
|
||||
aws-sigv4 (~> 1.5)
|
||||
aws-sdk-s3 (1.176.0)
|
||||
aws-sdk-core (~> 3, >= 3.210.0)
|
||||
aws-sdk-s3 (1.182.0)
|
||||
aws-sdk-core (~> 3, >= 3.216.0)
|
||||
aws-sdk-kms (~> 1)
|
||||
aws-sigv4 (~> 1.5)
|
||||
aws-sigv4 (1.10.1)
|
||||
aws-sigv4 (1.11.0)
|
||||
aws-eventstream (~> 1, >= 1.0.2)
|
||||
babosa (1.0.4)
|
||||
base64 (0.2.0)
|
||||
@@ -33,7 +34,7 @@ GEM
|
||||
commander (4.6.0)
|
||||
highline (~> 2.0.0)
|
||||
declarative (0.0.20)
|
||||
digest-crc (0.6.5)
|
||||
digest-crc (0.7.0)
|
||||
rake (>= 12.0.0, < 14.0.0)
|
||||
domain_name (0.6.20240107)
|
||||
dotenv (2.8.1)
|
||||
@@ -58,8 +59,8 @@ GEM
|
||||
faraday-em_synchrony (1.0.0)
|
||||
faraday-excon (1.1.0)
|
||||
faraday-httpclient (1.0.1)
|
||||
faraday-multipart (1.0.4)
|
||||
multipart-post (~> 2)
|
||||
faraday-multipart (1.1.0)
|
||||
multipart-post (~> 2.0)
|
||||
faraday-net_http (1.0.2)
|
||||
faraday-net_http_persistent (1.2.0)
|
||||
faraday-patron (1.0.0)
|
||||
@@ -67,8 +68,8 @@ GEM
|
||||
faraday-retry (1.0.3)
|
||||
faraday_middleware (1.2.1)
|
||||
faraday (~> 1.0)
|
||||
fastimage (2.3.1)
|
||||
fastlane (2.226.0)
|
||||
fastimage (2.4.0)
|
||||
fastlane (2.227.0)
|
||||
CFPropertyList (>= 2.3, < 4.0.0)
|
||||
addressable (>= 2.8, < 3.0.0)
|
||||
artifactory (~> 3.0)
|
||||
@@ -129,12 +130,12 @@ GEM
|
||||
google-apis-core (>= 0.11.0, < 2.a)
|
||||
google-apis-storage_v1 (0.31.0)
|
||||
google-apis-core (>= 0.11.0, < 2.a)
|
||||
google-cloud-core (1.7.1)
|
||||
google-cloud-core (1.8.0)
|
||||
google-cloud-env (>= 1.0, < 3.a)
|
||||
google-cloud-errors (~> 1.0)
|
||||
google-cloud-env (1.6.0)
|
||||
faraday (>= 0.17.3, < 3.0)
|
||||
google-cloud-errors (1.4.0)
|
||||
google-cloud-errors (1.5.0)
|
||||
google-cloud-storage (1.47.0)
|
||||
addressable (~> 2.8)
|
||||
digest-crc (~> 0.4)
|
||||
@@ -152,21 +153,23 @@ GEM
|
||||
highline (2.0.3)
|
||||
http-cookie (1.0.8)
|
||||
domain_name (~> 0.5)
|
||||
httpclient (2.8.3)
|
||||
httpclient (2.9.0)
|
||||
mutex_m
|
||||
jmespath (1.6.2)
|
||||
json (2.9.0)
|
||||
jwt (2.9.3)
|
||||
json (2.10.2)
|
||||
jwt (2.10.1)
|
||||
base64
|
||||
mini_magick (4.13.2)
|
||||
mini_mime (1.1.5)
|
||||
multi_json (1.15.0)
|
||||
multipart-post (2.4.1)
|
||||
mutex_m (0.3.0)
|
||||
nanaimo (0.4.0)
|
||||
naturally (2.2.1)
|
||||
nkf (0.2.0)
|
||||
optparse (0.6.0)
|
||||
os (1.1.4)
|
||||
plist (3.7.1)
|
||||
plist (3.7.2)
|
||||
public_suffix (6.0.1)
|
||||
rake (13.2.1)
|
||||
representable (3.2.0)
|
||||
@@ -174,10 +177,10 @@ GEM
|
||||
trailblazer-option (>= 0.1.1, < 0.2.0)
|
||||
uber (< 0.2.0)
|
||||
retriable (3.1.2)
|
||||
rexml (3.3.9)
|
||||
rexml (3.4.1)
|
||||
rouge (3.28.0)
|
||||
ruby2_keywords (0.0.5)
|
||||
rubyzip (2.3.2)
|
||||
rubyzip (2.4.1)
|
||||
security (0.1.5)
|
||||
signet (0.19.0)
|
||||
addressable (~> 2.8)
|
||||
|
||||
@@ -21,9 +21,9 @@ android {
|
||||
defaultConfig {
|
||||
applicationId = "me.hackerchick.catima"
|
||||
minSdk = 21
|
||||
targetSdk = 34
|
||||
versionCode = 146
|
||||
versionName = "2.34.4"
|
||||
targetSdk = 35
|
||||
versionCode = 147
|
||||
versionName = "2.34.5"
|
||||
|
||||
vectorDrawables.useSupportLibrary = true
|
||||
multiDexEnabled = true
|
||||
|
||||
4
app/src/debug/res/values-fa/strings.xml
Normal file
4
app/src/debug/res/values-fa/strings.xml
Normal file
@@ -0,0 +1,4 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="app_name">عیبیابی کاتیما</string>
|
||||
</resources>
|
||||
@@ -1,2 +1,4 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources></resources>
|
||||
<resources>
|
||||
<string name="app_name">Catimaデバーグ</string>
|
||||
</resources>
|
||||
|
||||
@@ -45,6 +45,7 @@ public class BarcodeSelectorActivity extends CatimaAppCompatActivity implements
|
||||
binding = BarcodeSelectorActivityBinding.inflate(getLayoutInflater());
|
||||
setTitle(R.string.selectBarcodeTitle);
|
||||
setContentView(binding.getRoot());
|
||||
Utils.applyWindowInsets(binding.getRoot());
|
||||
Toolbar toolbar = binding.toolbar;
|
||||
setSupportActionBar(toolbar);
|
||||
enableToolbarBackButton();
|
||||
|
||||
@@ -36,6 +36,7 @@ public class CardShortcutConfigure extends CatimaAppCompatActivity implements Lo
|
||||
setResult(RESULT_CANCELED);
|
||||
|
||||
setContentView(binding.getRoot());
|
||||
Utils.applyWindowInsets(binding.getRoot());
|
||||
Toolbar toolbar = binding.toolbar;
|
||||
toolbar.setTitle(R.string.shortcutSelectCard);
|
||||
setSupportActionBar(toolbar);
|
||||
|
||||
@@ -7,6 +7,7 @@ import android.os.Bundle;
|
||||
import android.view.View;
|
||||
import android.view.Window;
|
||||
|
||||
import androidx.activity.EdgeToEdge;
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.annotation.Nullable;
|
||||
import androidx.appcompat.app.ActionBar;
|
||||
@@ -24,6 +25,7 @@ public class CatimaAppCompatActivity extends AppCompatActivity {
|
||||
|
||||
@Override
|
||||
protected void onCreate(@Nullable Bundle savedInstanceState) {
|
||||
EdgeToEdge.enable(this);
|
||||
super.onCreate(savedInstanceState);
|
||||
Utils.patchColors(this);
|
||||
}
|
||||
|
||||
@@ -60,6 +60,7 @@ public class ImportExportActivity extends CatimaAppCompatActivity {
|
||||
binding = ImportExportActivityBinding.inflate(getLayoutInflater());
|
||||
setTitle(R.string.importExport);
|
||||
setContentView(binding.getRoot());
|
||||
Utils.applyWindowInsets(binding.getRoot());
|
||||
Toolbar toolbar = binding.toolbar;
|
||||
setSupportActionBar(toolbar);
|
||||
enableToolbarBackButton();
|
||||
|
||||
@@ -297,6 +297,7 @@ public class LoyaltyCardEditActivity extends CatimaAppCompatActivity implements
|
||||
super.onCreate(savedInstanceState);
|
||||
binding = LoyaltyCardEditActivityBinding.inflate(getLayoutInflater());
|
||||
setContentView(binding.getRoot());
|
||||
Utils.applyWindowInsets(binding.getRoot());
|
||||
|
||||
viewModel = new ViewModelProvider(this).get(LoyaltyCardEditActivityViewModel.class);
|
||||
|
||||
|
||||
@@ -248,6 +248,7 @@ public class LoyaltyCardViewActivity extends CatimaAppCompatActivity implements
|
||||
super.onCreate(savedInstanceState);
|
||||
binding = LoyaltyCardViewLayoutBinding.inflate(getLayoutInflater());
|
||||
setContentView(binding.getRoot());
|
||||
Utils.applyWindowInsets(binding.getRoot());
|
||||
Toolbar toolbar = binding.toolbar;
|
||||
setSupportActionBar(toolbar);
|
||||
|
||||
|
||||
@@ -229,6 +229,7 @@ public class MainActivity extends CatimaAppCompatActivity implements LoyaltyCard
|
||||
|
||||
binding = MainActivityBinding.inflate(getLayoutInflater());
|
||||
setContentView(binding.getRoot());
|
||||
Utils.applyWindowInsets(binding.getRoot());
|
||||
setSupportActionBar(binding.toolbar);
|
||||
groupsTabLayout = binding.groups;
|
||||
contentMainBinding = ContentMainBinding.bind(binding.include.getRoot());
|
||||
|
||||
@@ -48,6 +48,7 @@ public class ManageGroupActivity extends CatimaAppCompatActivity implements Mana
|
||||
super.onCreate(inputSavedInstanceState);
|
||||
binding = ActivityManageGroupBinding.inflate(getLayoutInflater());
|
||||
setContentView(binding.getRoot());
|
||||
Utils.applyWindowInsets(binding.getRoot());
|
||||
Toolbar toolbar = binding.toolbar;
|
||||
setSupportActionBar(toolbar);
|
||||
|
||||
|
||||
@@ -42,6 +42,7 @@ public class ManageGroupsActivity extends CatimaAppCompatActivity implements Gro
|
||||
binding = ManageGroupsActivityBinding.inflate(getLayoutInflater());
|
||||
setTitle(R.string.groups);
|
||||
setContentView(binding.getRoot());
|
||||
Utils.applyWindowInsets(binding.getRoot());
|
||||
Toolbar toolbar = binding.toolbar;
|
||||
setSupportActionBar(toolbar);
|
||||
enableToolbarBackButton();
|
||||
|
||||
@@ -296,30 +296,22 @@ class PkpassParser(context: Context, uri: Uri?) {
|
||||
}
|
||||
|
||||
// Append type-specific info to the pass
|
||||
noteText.append("\n\n")
|
||||
|
||||
// Find the relevant pass type and parse it
|
||||
var hasPassData = false
|
||||
for (passType in listOf("boardingPass", "coupon", "eventTicket", "generic")) {
|
||||
try {
|
||||
noteText.append(
|
||||
parsePassJSONPassFields(
|
||||
jsonObject.getJSONObject(passType),
|
||||
locale
|
||||
)
|
||||
var extraText = parsePassJSONPassFields(
|
||||
jsonObject.getJSONObject(passType),
|
||||
locale
|
||||
)
|
||||
|
||||
hasPassData = true
|
||||
noteText.append("\n\n")
|
||||
noteText.append(extraText)
|
||||
|
||||
break
|
||||
} catch (ignored: JSONException) {}
|
||||
}
|
||||
|
||||
// Failed to parse anything, error out
|
||||
if (!hasPassData) {
|
||||
throw FormatException(mContext.getString(R.string.errorReadingFile))
|
||||
}
|
||||
|
||||
note = noteText.toString()
|
||||
}
|
||||
|
||||
|
||||
@@ -100,6 +100,7 @@ public class ScanActivity extends CatimaAppCompatActivity {
|
||||
customBarcodeScannerBinding = CustomBarcodeScannerBinding.bind(binding.zxingBarcodeScanner);
|
||||
setTitle(R.string.scanCardBarcode);
|
||||
setContentView(binding.getRoot());
|
||||
Utils.applyWindowInsets(binding.getRoot());
|
||||
Toolbar toolbar = binding.toolbar;
|
||||
setSupportActionBar(toolbar);
|
||||
enableToolbarBackButton();
|
||||
|
||||
@@ -24,6 +24,13 @@ import com.yalantis.ucrop.UCropActivity;
|
||||
public class UCropWrapper extends UCropActivity {
|
||||
public static final String UCROP_TOOLBAR_TYPEFACE_STYLE = "ucop_toolbar_typeface_style";
|
||||
|
||||
@Override
|
||||
public void onCreate(Bundle savedInstanceState) {
|
||||
super.onCreate(savedInstanceState);
|
||||
|
||||
Utils.applyWindowInsets(findViewById(android.R.id.content));
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onPostCreate(@Nullable Bundle savedInstanceState) {
|
||||
super.onPostCreate(savedInstanceState);
|
||||
|
||||
@@ -27,6 +27,7 @@ import android.util.Log;
|
||||
import android.util.TypedValue;
|
||||
import android.view.MotionEvent;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.view.Window;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.TextView;
|
||||
@@ -38,7 +39,10 @@ import androidx.annotation.RawRes;
|
||||
import androidx.appcompat.app.AppCompatActivity;
|
||||
import androidx.appcompat.app.AppCompatDelegate;
|
||||
import androidx.core.graphics.ColorUtils;
|
||||
import androidx.core.graphics.Insets;
|
||||
import androidx.core.os.LocaleListCompat;
|
||||
import androidx.core.view.ViewCompat;
|
||||
import androidx.core.view.WindowInsetsCompat;
|
||||
import androidx.core.view.WindowInsetsControllerCompat;
|
||||
import androidx.core.widget.TextViewCompat;
|
||||
import androidx.exifinterface.media.ExifInterface;
|
||||
@@ -194,12 +198,25 @@ public class Utils {
|
||||
|
||||
List<String> locales = pkpassParser.listLocales();
|
||||
if (locales.isEmpty()) {
|
||||
return Collections.singletonList(new ParseResult(ParseResultType.FULL, pkpassParser.toLoyaltyCard(null)));
|
||||
try {
|
||||
return Collections.singletonList(new ParseResult(ParseResultType.FULL, pkpassParser.toLoyaltyCard(null)));
|
||||
} catch (Exception e) {
|
||||
Log.e(TAG, "Error calling toLoyaltyCard on pkpass file", e);
|
||||
Toast.makeText(context, R.string.errorReadingFile, Toast.LENGTH_LONG).show();
|
||||
return new ArrayList<>();
|
||||
}
|
||||
}
|
||||
|
||||
List<ParseResult> parseResultList = new ArrayList<>();
|
||||
for (String locale : locales) {
|
||||
ParseResult parseResult = new ParseResult(ParseResultType.FULL, pkpassParser.toLoyaltyCard(locale));
|
||||
ParseResult parseResult;
|
||||
try {
|
||||
parseResult = new ParseResult(ParseResultType.FULL, pkpassParser.toLoyaltyCard(locale));
|
||||
} catch (Exception e) {
|
||||
Log.e(TAG, "Error calling toLoyaltyCard on pkpass file", e);
|
||||
Toast.makeText(context, R.string.errorReadingFile, Toast.LENGTH_LONG).show();
|
||||
return new ArrayList<>();
|
||||
}
|
||||
parseResult.setNote(locale);
|
||||
parseResultList.add(parseResult);
|
||||
}
|
||||
@@ -1093,4 +1110,20 @@ public class Utils {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
public static void applyWindowInsets(View root) {
|
||||
/* This function basically fakes the activity being edge-to-edge. Useful for those activities that are really hard to get to behave well */
|
||||
ViewCompat.setOnApplyWindowInsetsListener(root, (view, windowInsets) -> {
|
||||
Insets insets = windowInsets.getInsets(WindowInsetsCompat.Type.systemBars());
|
||||
|
||||
ViewGroup.MarginLayoutParams layoutParams = (ViewGroup.MarginLayoutParams) view.getLayoutParams();
|
||||
layoutParams.leftMargin = insets.left;
|
||||
layoutParams.bottomMargin = insets.bottom;
|
||||
layoutParams.rightMargin = insets.right;
|
||||
layoutParams.topMargin = insets.top;
|
||||
view.setLayoutParams(layoutParams);
|
||||
|
||||
return WindowInsetsCompat.CONSUMED;
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
@@ -42,6 +42,7 @@ public class SettingsActivity extends CatimaAppCompatActivity {
|
||||
binding = SettingsActivityBinding.inflate(getLayoutInflater());
|
||||
setTitle(R.string.settings);
|
||||
setContentView(binding.getRoot());
|
||||
Utils.applyWindowInsets(binding.getRoot());
|
||||
Toolbar toolbar = binding.toolbar;
|
||||
setSupportActionBar(toolbar);
|
||||
enableToolbarBackButton();
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
app:layout_behavior="@string/appbar_scrolling_view_behavior"
|
||||
tools:context="protect.card_locker.MainActivity"
|
||||
tools:context="protect.card_locker.ManageGroupActivity"
|
||||
tools:showIn="@layout/main_activity">
|
||||
|
||||
<TextView
|
||||
|
||||
@@ -15,11 +15,11 @@ IllusiveMan196
|
||||
Altonss
|
||||
Michael Moroni
|
||||
Eric
|
||||
B o d o
|
||||
GM
|
||||
laralem
|
||||
Petr Novák
|
||||
Joel A
|
||||
B o d o
|
||||
Priit Jõerüüt
|
||||
Taco
|
||||
pfaffenrodt
|
||||
@@ -29,16 +29,16 @@ Scrambled777
|
||||
ikanakova
|
||||
HudobniVolk
|
||||
Giovanni Donisi
|
||||
Edgars Andersons
|
||||
Jiri Grönroos
|
||||
Nyatsuki
|
||||
Edgars Andersons
|
||||
Silvério Santos
|
||||
Balázs Meskó
|
||||
Milo Ivir
|
||||
Samantaz Fox
|
||||
Cliff Heraldo
|
||||
Sergio Paredes
|
||||
Ankit Tiwari
|
||||
Silvério Santos
|
||||
josé m
|
||||
Arno-github
|
||||
Jose Delvani
|
||||
@@ -49,13 +49,13 @@ Skrripy
|
||||
huuhaa
|
||||
waffshappen
|
||||
Marnick L'Eau
|
||||
Maksim2005UA
|
||||
ngocanhtve
|
||||
Quentin PAGÈS
|
||||
Projjal Moitra
|
||||
Robin
|
||||
JungHee Lee
|
||||
தமிழ் நேரம்
|
||||
Maksim2005UA
|
||||
Ziad OUALHADJ
|
||||
Vasilis
|
||||
Robin Liu
|
||||
|
||||
@@ -54,7 +54,7 @@
|
||||
<string name="settings_portrait_orientation">الوضع الرأسي</string>
|
||||
<string name="settings_landscape_orientation">الوضع الأفقي</string>
|
||||
<string name="settings_theme">مظهر</string>
|
||||
<string name="settings_display_barcode_max_brightness">عرض مشرق علي الشاشة</string>
|
||||
<string name="settings_display_barcode_max_brightness">شاشة ساطعة</string>
|
||||
<string name="importSuccessful">تم استيراد البيانات</string>
|
||||
<string name="exportSuccessful">تم تصدير البيانات</string>
|
||||
<string name="enter_group_name">أدخل اسم المجموعة</string>
|
||||
@@ -298,7 +298,7 @@
|
||||
<string name="enter_card_id">أدخل رقم الهوية أو النص الموجود على بطاقتك</string>
|
||||
<string name="addWithoutBarcode">إضافة بدون باركود</string>
|
||||
<string name="field_must_not_be_empty">يجب ألا يكون الحقل فارغا</string>
|
||||
<string name="app_name">Catima</string>
|
||||
<string name="app_name">كاتيما</string>
|
||||
<string name="settings_follow_sensor_orientation">التدوير دائمًا ( تجاهل إعدادات النظام)</string>
|
||||
<string name="add_manually_warning_title">الفحص موصى به</string>
|
||||
<string name="continue_">استمر</string>
|
||||
@@ -332,4 +332,5 @@
|
||||
<string name="settings_column_count_5">٥</string>
|
||||
<string name="settings_column_count_6">٦</string>
|
||||
<string name="settings_column_count_7">٧</string>
|
||||
</resources>
|
||||
<string name="sort_by_valid_from">صالح من</string>
|
||||
</resources>
|
||||
|
||||
@@ -41,7 +41,7 @@
|
||||
<string name="importFailed">نمیتوان ایمپورت کرد</string>
|
||||
<string name="exportSuccessfulTitle">خروجی گرفته شده</string>
|
||||
<string name="exportFailedTitle">خروجی گرفتن ناموفق بود</string>
|
||||
<string name="storageReadPermissionRequired">دسترسی به خواندن محل ذخیره برای این کار نیاز است…</string>
|
||||
<string name="storageReadPermissionRequired">برای این اقدام دسترسی به حافظه مورد نیاز است…</string>
|
||||
<string name="exportOptionExplanation">داده در محلی که شما انتخاب میکنید نوشته خواهد شد.</string>
|
||||
<string name="receive">دریافت</string>
|
||||
<string name="continue_">ادامه</string>
|
||||
@@ -79,10 +79,10 @@
|
||||
<string name="about">درباره</string>
|
||||
<string name="importOptionApplicationExplanation">از هر برنامه یا مدیر فایل دلخواه خود برای باز کردن یک فایل استفاده کنید.</string>
|
||||
<string name="app_copyright_fmt" tools:ignore="PluralsCandidate">حق تکثیر © 2019–<xliff:g>%d</xliff:g> سیلویا وَن اُس و مشارکت کنندگان</string>
|
||||
<string name="app_copyright_short">حق تکثیر © سیلویا وَن اُس و مشارکت کنندگان</string>
|
||||
<string name="app_copyright_short">حق نشر © سیلویا وَن اُس و مشارکت کنندگان</string>
|
||||
<string name="failedParsingImportUriError">تجزیه URI ورودی ناموفق بود</string>
|
||||
<string name="importOptionFilesystemExplanation">یک فایل مشخص از فایلهای سیستم انتخاب کنید.</string>
|
||||
<string name="importOptionFilesystemTitle">وادر کردن از فایل های سیستم</string>
|
||||
<string name="importOptionFilesystemTitle">ورود از فایل سیستم</string>
|
||||
<plurals name="selectedCardCount">
|
||||
<item quantity="one"><xliff:g>%d</xliff:g> انتخاب شد</item>
|
||||
<item quantity="other"><xliff:g>%d</xliff:g> انتخاب شد</item>
|
||||
@@ -112,4 +112,72 @@
|
||||
<string name="intent_import_card_from_url_share_text">میخواهم یک کارت را با تو به اشتراک بگذارم</string>
|
||||
<string name="settings_use_volume_keys_navigation">جابجایی میان کارت ها با استفاده از کلید های صدا</string>
|
||||
<string name="settings_use_volume_keys_navigation_summary">از کلید های صدا برای تغیر کارت نمایشی استفاده کنید</string>
|
||||
<string name="about_title_fmt">درباره <xliff:g id="app_name">%s</xliff:g></string>
|
||||
<string name="debug_version_fmt">نسخه <xliff:g id="version">%s</xliff:g></string>
|
||||
<string name="chooseExpiryDate">انتخاب تاریخ انقضاء</string>
|
||||
<string name="app_libraries">کتابخانه های شخص ثالث: <xliff:g id="app_libraries_list">%s</xliff:g></string>
|
||||
<string name="app_copyright_old">بر اساس کارت وفاداری Keychain\nکپی رایت © 2016-2020 سازنده : Branden</string>
|
||||
<string name="app_license">نرمافزار آزاد با حقوق کپیلفت، تحت مجوز GPLv3+</string>
|
||||
<string name="groups">گروهها</string>
|
||||
<string name="noGroupCards">این گروه خالی است</string>
|
||||
<string name="noGroups">روی دکمه + اضافه کلیک کنید تا گروههایی برای دستهبندی اضافه کنید.</string>
|
||||
<string name="editGroup">ویرایش گروه: <xliff:g>%s</xliff:g></string>
|
||||
<string name="importCatimaMessage">فایل <i>catima.zip</i> خروجی خود را از Catima برای وارد کردن انتخاب کنید.\nآن را از منوی وارد/صادر کردن در یک اپلیکیشن دیگر Catima با فشردن دکمه صادرکردن ابتدا ایجاد کنید.</string>
|
||||
<string name="importStocard">واردات از Stocard</string>
|
||||
<string name="unsupportedBarcodeType">این نوع بارکد هنوز نمیتواند نمایش داده شود. ممکن است در نسخه آینده برنامه پشتیبانی شود.</string>
|
||||
<plurals name="balancePoints">
|
||||
<item quantity="one"><xliff:g>%s</xliff:g> امتیاز</item>
|
||||
<item quantity="other"><xliff:g>%s</xliff:g> امتیاز</item>
|
||||
</plurals>
|
||||
<string name="importFidmeMessage">فایل خروجی <i>fidme-export-request-xxxxxx.zip</i> خود را از FidMe برای وارد کردن انتخاب کنید، و سپس نوع بارکدها را به صورت دستی مشخص کنید.\nآن را از پروفایل FidMe خود با انتخاب گزینه حفاظت از داده و سپس فشار دادن گزینه استخراج داده من ابتدا ایجاد کنید.</string>
|
||||
<string name="leaveWithoutSaveTitle">خروج</string>
|
||||
<string name="balanceSentence">موجودی: <xliff:g>%s</xliff:g></string>
|
||||
<string name="sameAsCardId">همانند شناسه</string>
|
||||
<string name="setBarcodeId">تنظیم مقدار بارکد</string>
|
||||
<string name="exportSuccessful">دادهها صادر شدند</string>
|
||||
<string name="enter_group_name">نام گروه را وارد کنید</string>
|
||||
<string name="importLoyaltyCardKeychain">وارد کردن از جاکلیدی کارت وفاداری</string>
|
||||
<string name="importLoyaltyCardKeychainMessage">فایل خروجی <i>LoyaltyCardKeychain.csv</i> خود را از جاسوئیچی کارت وفاداری برای وارد کردن انتخاب کنید.\nآن را از منوی وارد/صادرکردن در جاسوئیچی کارت وفاداری با فشردن دکمه صادرکردن ابتدا ایجاد کنید.</string>
|
||||
<string name="app_resources">منابع آزاد از طرف شخص ثالث: <xliff:g id="app_resources_list">%s</xliff:g></string>
|
||||
<string name="settings_lock_on_opening_orientation">قفل به جهت استفاده شده در هنگام بازکردن کارت</string>
|
||||
<plurals name="groupCardCount">
|
||||
<item quantity="one"><xliff:g>%d</xliff:g> کارت</item>
|
||||
<item quantity="other"><xliff:g>%d</xliff:g> کارت</item>
|
||||
</plurals>
|
||||
<string name="group_name_already_in_use">نام گروه قبلاً استفاده شده</string>
|
||||
<string name="group_name_is_empty">نام گروه نباید خالی باشد</string>
|
||||
<string name="group_updated">گروه به روز شد</string>
|
||||
<string name="all">همه</string>
|
||||
<string name="deleteConfirmationGroup">حذف گروه؟</string>
|
||||
<string name="failedOpeningFileManager">ابتدا یک مدیریت فایل نصب کنید.</string>
|
||||
<string name="moveUp">به بالا حرکت کن</string>
|
||||
<string name="moveDown">به پایین حرکت کن</string>
|
||||
<string name="leaveWithoutSaveConfirmation">بدون ذخیره ترک میکنید؟</string>
|
||||
<string name="addManually">بارکد را دستی وارد کنید</string>
|
||||
<string name="addFromImage">یک تصویر از گالری انتخاب کنید</string>
|
||||
<string name="groupsList">گروهها: <xliff:g>%s</xliff:g></string>
|
||||
<string name="expiryStateSentence">تاریخ انقضاء: <xliff:g>%s</xliff:g></string>
|
||||
<string name="card">کارت</string>
|
||||
<string name="editBarcode">ویرایش بارکد</string>
|
||||
<string name="expiryDate">تاریخ انقضا</string>
|
||||
<string name="never">هرگز</string>
|
||||
<string name="moveBarcodeToTopOfScreen">بارکد را به بالای صفحه منتقل کنید</string>
|
||||
<string name="noBarcodeFound">بارکدی پیدا نشد</string>
|
||||
<string name="errorReadingImage">نمی توان تصویر را خواند</string>
|
||||
<string name="balance">موجودی</string>
|
||||
<string name="currency">ارز</string>
|
||||
<string name="points">امتیازها</string>
|
||||
<string name="balanceParsingFailed">موجودی نامعتبر</string>
|
||||
<string name="chooseImportType">وارد کردن داده ها از</string>
|
||||
<string name="app_loyalty_card_keychain">جاکلیدی کارت وفاداری</string>
|
||||
<string name="privacy_policy">خط مشی رازداری</string>
|
||||
<string name="accept">قبول</string>
|
||||
<string name="importCatima">واردات از کاتیما</string>
|
||||
<string name="importFidme">واردات از FidMe</string>
|
||||
<string name="importStocardMessage">فایل خروجی <i>***.zip</i> خود را از Stocard برای وارد کردن انتخاب کنید.\nاین فایل را با ارسال ایمیل به آدرس support@stocardapp.com و درخواست خروجی دادههای خود دریافت کنید.</string>
|
||||
<string name="importVoucherVault">واردات از صندوق کوپن</string>
|
||||
<string name="importVoucherVaultMessage">فایل خروجی <i>vouchervault.json</i> خود را از صندوق کوپن برای وارد کردن انتخاب کنید.\nآن را ابتدا با فشردن دکمه صادرکردن در صندوق کوپن ایجاد کنید.</string>
|
||||
<string name="barcodeId">مقدار بارکد</string>
|
||||
<string name="group_edit">ویرایش گروه</string>
|
||||
<string name="expiryStateSentenceExpired">منقضی شده: <xliff:g>%s</xliff:g></string>
|
||||
</resources>
|
||||
|
||||
@@ -302,4 +302,5 @@
|
||||
<string name="addFromPkpass">Pilih file Buku Tabungan (.pkpass)</string>
|
||||
<string name="unsupportedFile">File ini tidak didukung</string>
|
||||
<string name="generic_error_please_retry">Maaf, terjadi kesalahan, silakan coba lagi...</string>
|
||||
</resources>
|
||||
<string name="sort_by_valid_from">Berlaku dari</string>
|
||||
</resources>
|
||||
|
||||
@@ -230,4 +230,16 @@
|
||||
<string name="settings_oled_dark_summary">有機ELディスプレイでの電池の使用量を削減します</string>
|
||||
<string name="action_more_options">オプション</string>
|
||||
<string name="add_a_card_in_a_different_way">別の方法でカードを追加</string>
|
||||
</resources>
|
||||
<string name="continue_">続</string>
|
||||
<string name="permissionReadCardsLabel">Catimaのカードを読む</string>
|
||||
<string name="settings_column_count_6">6</string>
|
||||
<string name="settings_column_count_3">3</string>
|
||||
<string name="settings_column_count_5">5</string>
|
||||
<string name="settings_column_count_7">7</string>
|
||||
<string name="importCancelled">輸入がキャンセルされた</string>
|
||||
<string name="settings_column_count_1">1</string>
|
||||
<string name="settings_column_count_2">2</string>
|
||||
<string name="settings_column_count_4">4</string>
|
||||
<string name="settings_category_title_privacy">プライバシー</string>
|
||||
<string name="exportCancelled">輸出がキャンセルされた</string>
|
||||
</resources>
|
||||
|
||||
@@ -42,7 +42,7 @@
|
||||
<string name="importLoyaltyCardKeychain">Importuoti iš Loyalty Card Keychain</string>
|
||||
<string name="app_loyalty_card_keychain">Lojalumo kortelės</string>
|
||||
<string name="moveBarcodeToTopOfScreen">Perkelti brūkšninį kodą į ekrano viršų</string>
|
||||
<string name="settings_display_barcode_max_brightness">Šviesinti brūkšninio kodo rodinį</string>
|
||||
<string name="settings_display_barcode_max_brightness">Šviesinti ekraną</string>
|
||||
<string name="failedParsingImportUriError">Nepavyko iššifruoti importo URI</string>
|
||||
<string name="turn_flashlight_off">Išjunkti žibintuvėlį</string>
|
||||
<string name="turn_flashlight_on">Įjunkti žibintuvėlį</string>
|
||||
@@ -196,7 +196,7 @@
|
||||
<string name="noGiftCardsGroup">Sukurkite keletą kortelių ir priskirkite jas grupei čia.</string>
|
||||
<string name="setIcon">Nustatyti piktogramą</string>
|
||||
<string name="selectColor">Pasirinkti spalvą</string>
|
||||
<string name="settings_card_orientation">Brūkšninio kodo orientacija</string>
|
||||
<string name="settings_card_orientation">Ekrano orientacija</string>
|
||||
<string name="failedLaunchingPhotoPicker">Nepavyko rasti palaikomos galerijos programėlės</string>
|
||||
<string name="previousCard">Ankstesnė</string>
|
||||
<string name="nextCard">Kita</string>
|
||||
@@ -264,7 +264,7 @@
|
||||
<string name="enter_card_id">Įveskite ID numerį arba tekstą ant jūsų kortelės</string>
|
||||
<string name="noCameraFoundGuideText">Atrodo, kad jūsų įrenginys neturi kameros. Jei jis turi kamerą, pabandykite perkrauti įrenginį. Naudokite žemiau esantį „Daugiau galimybių“ mygtuką, kad pridėtumėte brūkšninį kodą kitu būdu.</string>
|
||||
<string name="settings_display_barcode_max_brightness_summary">Būtina, kad veiktų kai kurie skeneriai</string>
|
||||
<string name="settings_disable_lockscreen_while_viewing_card_summary">Išjungti ekrano užraktą kol peržiūrite kortelę</string>
|
||||
<string name="settings_disable_lockscreen_while_viewing_card_summary">Išjungia ekrano užraktą kol peržiūrite kortelę</string>
|
||||
<string name="settings_allow_content_provider_read_title">Leisti kitoms programoms išrinkti mano informaciją</string>
|
||||
<string name="settings_allow_content_provider_read_summary">Programos vis tiek turės prašyti leidimo, kad gautu informaciją</string>
|
||||
<string name="show_name_below_image_thumbnail">Rodyti pavadinimą po piktogramą</string>
|
||||
@@ -273,7 +273,7 @@
|
||||
<string name="continue_">Tęsti</string>
|
||||
<string name="add_manually_warning_message">Kai kuriuose parduotuvėse brūkšninio kodo vertė gali skirtis nuo kortelėje nurodyto numerio. Dėlto įvedus brūkšninį kodą rankiniu būdu gali nepavykti. Vietoj to, labai rekomenduojama nuskaityti brūkšninį kodą naudojant kamerą. Ar vis tiek norite tęsti?</string>
|
||||
<string name="permissionReadCardsLabel">Skenuoti Catima Korteles</string>
|
||||
<string name="settings_category_title_cards">Kortelės</string>
|
||||
<string name="settings_category_title_cards">Kortelių peržiūra</string>
|
||||
<string name="settings_category_title_general">Bendri</string>
|
||||
<string name="settings_category_title_privacy">Privatumąi</string>
|
||||
<string name="importCancelled">Importas atšauktas</string>
|
||||
@@ -298,4 +298,7 @@
|
||||
<string name="app_copyright_short">Autorių teisės © Sylvia van Os ir Pagalbininkai</string>
|
||||
<string name="useFrontImage">Naudoti priekinį vaizdą</string>
|
||||
<string name="useBackImage">Naudoti galinį vaizdą</string>
|
||||
</resources>
|
||||
<string name="sort_by_valid_from">Teisinga forma</string>
|
||||
<string name="settings_use_volume_keys_navigation">Keisti korteles su garso mygtukais</string>
|
||||
<string name="settings_use_volume_keys_navigation_summary">Naudokite garso mygtukus kortelių pakeitimui</string>
|
||||
</resources>
|
||||
|
||||
@@ -149,7 +149,7 @@
|
||||
<string name="updateBalance">Ažuriraj stanje</string>
|
||||
<string name="failedToRetrieveImageFile">Preuzimanje fotografije nije uspelo</string>
|
||||
<string name="sort_by_name">Ime</string>
|
||||
<string name="sort_by_most_recently_used">Nedevno korišćeno</string>
|
||||
<string name="sort_by_most_recently_used">Nedavno korišćeno</string>
|
||||
<string name="sort_by_expiry">Ističe</string>
|
||||
<string name="reverse">…u obrnutom redosledu</string>
|
||||
<string name="sort_by">Sortiraj po</string>
|
||||
@@ -298,4 +298,5 @@
|
||||
<string name="useBackImage">Koristi zadnju fotografiju</string>
|
||||
<string name="pageWithNumber">Strana <xliff:g>%d</xliff:g></string>
|
||||
<string name="noCameraFoundGuideText">Čini se da tvoj uređaj nema kameru. Ako je ima, pokušaj da ponovo pokreneš uređaj. U suprotnom, koristi dugme Više opcija, koje se nalazi ispod, da bi dodao bar-kod na drugi način.</string>
|
||||
</resources>
|
||||
<string name="sort_by_valid_from">Važi od</string>
|
||||
</resources>
|
||||
|
||||
@@ -285,7 +285,7 @@
|
||||
<string name="enter_card_id">Введіть ID або текст на вашій картці</string>
|
||||
<string name="addWithoutBarcode">Додати картку без штрих-коду</string>
|
||||
<string name="field_must_not_be_empty">Поле вводу не повинно бути порожнім</string>
|
||||
<string name="app_name">Катіма</string>
|
||||
<string name="app_name">Catima</string>
|
||||
<string name="settings_follow_sensor_orientation">Завжди обертати (ігнорувати системні налаштування)</string>
|
||||
<string name="add_manually_warning_message">У деяких магазинах значення штрихкоду відрізняється від номера, записаного на картці. Через це введення штрихкоду вручну може не завжди спрацювати. Наполегливо рекомендуємо відсканувати штрихкод за допомогою камери. Ви все ще хочете продовжити?</string>
|
||||
<string name="continue_">Продовжити</string>
|
||||
|
||||
@@ -176,6 +176,69 @@ class PkpassTest {
|
||||
Assert.assertTrue(imageBitmap.sameAs(parser.image))
|
||||
}
|
||||
|
||||
@Test
|
||||
fun testFakeEmptyEurowingsPassForGitHubIssue2317() {
|
||||
// Prepare
|
||||
val context: Context = ApplicationProvider.getApplicationContext()
|
||||
val pkpass = "pkpass/Eurowings_fake_empty_for_gh_issue_2317/Eurowings.pkpass"
|
||||
val image = "pkpass/Eurowings_fake_empty_for_gh_issue_2317/logo@2x.png"
|
||||
|
||||
val pkpassUri = Uri.parse(pkpass)
|
||||
val imageUri = Uri.parse(image)
|
||||
ShadowContentResolver().registerInputStream(pkpassUri, javaClass.getResourceAsStream(pkpass))
|
||||
ShadowContentResolver().registerInputStream(imageUri, javaClass.getResourceAsStream(image))
|
||||
|
||||
val parser = PkpassParser(context, pkpassUri)
|
||||
val imageBitmap = BitmapFactory.decodeStream(context.contentResolver.openInputStream(imageUri))
|
||||
|
||||
// Confirm this does not have languages
|
||||
Assert.assertEquals(listOf("de", "en"), parser.listLocales())
|
||||
|
||||
// Confirm correct parsing (en)
|
||||
var parsedCard = parser.toLoyaltyCard("de")
|
||||
|
||||
Assert.assertEquals(-1, parsedCard.id)
|
||||
Assert.assertEquals("EUROWINGS", parsedCard.store)
|
||||
Assert.assertEquals("Eurowings Boarding Pass", parsedCard.note)
|
||||
Assert.assertEquals(Date(1567911600000), parsedCard.validFrom)
|
||||
Assert.assertEquals(null, parsedCard.expiry)
|
||||
Assert.assertEquals(BigDecimal(0), parsedCard.balance)
|
||||
Assert.assertEquals(null, parsedCard.balanceType)
|
||||
Assert.assertEquals("M1DOE/JOHN JBZPPP CGNDBVEW 0954 251A012D0073 148>5181W 9250BEW 00000000000002A0000000000000 0 N", parsedCard.cardId)
|
||||
Assert.assertEquals(null, parsedCard.barcodeId)
|
||||
Assert.assertEquals(BarcodeFormat.AZTEC, parsedCard.barcodeType!!.format())
|
||||
Assert.assertEquals(Color.parseColor("#FFFFFF"), parsedCard.headerColor)
|
||||
Assert.assertEquals(0, parsedCard.starStatus)
|
||||
Assert.assertEquals(0, parsedCard.archiveStatus)
|
||||
Assert.assertEquals(0, parsedCard.lastUsed)
|
||||
Assert.assertEquals(DBHelper.DEFAULT_ZOOM_LEVEL, parsedCard.zoomLevel)
|
||||
|
||||
// Confirm correct image is used
|
||||
Assert.assertTrue(imageBitmap.sameAs(parser.image))
|
||||
|
||||
// Confirm correct parsing (en)
|
||||
parsedCard = parser.toLoyaltyCard("en")
|
||||
|
||||
Assert.assertEquals(-1, parsedCard.id)
|
||||
Assert.assertEquals("EUROWINGS", parsedCard.store)
|
||||
Assert.assertEquals("Eurowings Boarding Pass", parsedCard.note)
|
||||
Assert.assertEquals(Date(1567911600000), parsedCard.validFrom)
|
||||
Assert.assertEquals(null, parsedCard.expiry)
|
||||
Assert.assertEquals(BigDecimal(0), parsedCard.balance)
|
||||
Assert.assertEquals(null, parsedCard.balanceType)
|
||||
Assert.assertEquals("M1DOE/JOHN JBZPPP CGNDBVEW 0954 251A012D0073 148>5181W 9250BEW 00000000000002A0000000000000 0 N", parsedCard.cardId)
|
||||
Assert.assertEquals(null, parsedCard.barcodeId)
|
||||
Assert.assertEquals(BarcodeFormat.AZTEC, parsedCard.barcodeType!!.format())
|
||||
Assert.assertEquals(Color.parseColor("#FFFFFF"), parsedCard.headerColor)
|
||||
Assert.assertEquals(0, parsedCard.starStatus)
|
||||
Assert.assertEquals(0, parsedCard.archiveStatus)
|
||||
Assert.assertEquals(0, parsedCard.lastUsed)
|
||||
Assert.assertEquals(DBHelper.DEFAULT_ZOOM_LEVEL, parsedCard.zoomLevel)
|
||||
|
||||
// Confirm correct image is used
|
||||
Assert.assertTrue(imageBitmap.sameAs(parser.image))
|
||||
}
|
||||
|
||||
@Test
|
||||
fun testDCBPkPass() {
|
||||
// Prepare
|
||||
|
||||
Binary file not shown.
Binary file not shown.
|
After Width: | Height: | Size: 7.5 KiB |
@@ -1,7 +1,7 @@
|
||||
// Top-level build file where you can add configuration options common to all sub-projects/modules.
|
||||
|
||||
plugins {
|
||||
id("com.android.application") version "8.9.0" apply false
|
||||
id("com.android.application") version "8.9.1" apply false
|
||||
id("com.github.spotbugs") version "5.1.4" apply false
|
||||
id("org.jetbrains.kotlin.android") version "2.1.10" apply false
|
||||
}
|
||||
|
||||
BIN
fastlane/metadata/android/ca/images/featureGraphic.png
Normal file
BIN
fastlane/metadata/android/ca/images/featureGraphic.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 49 KiB |
@@ -1,5 +1,5 @@
|
||||
- Předvyplnění stávajícího ID do začátku úprava ID karty. (pull #94)
|
||||
- Omezení šířky generovaných čárových kódů, aby byla snížena spotřeba paměti a chyby nedostatku paměti. (pull #103)
|
||||
- Při editaci karty změněno tlačítko „Zadat kartu“ na „Upravit kartu“, pokud ID karty již existuje. (pull #104)
|
||||
- Změněno barevné schéma tak, aby bylo jemnější a kompatibilní s ikonou aplikace, a změněno rozložení při prohlížení karty, aby bylo přehlednější. (pull #107)
|
||||
- Přidán úvodní průvodce, který se spustí při prvním spuštění aplikace. (pull #108)
|
||||
- Předvyplnění stávajícího ID do začátku úprava ID karty.
|
||||
- Omezení šířky generovaných čárových kódů, aby byla snížena spotřeba paměti a chyby nedostatku paměti.
|
||||
- Při editaci karty změněno tlačítko „Zadat kartu“ na „Upravit kartu“, pokud ID karty již existuje.
|
||||
- Změněno barevné schéma tak, aby bylo jemnější a kompatibilní s ikonou aplikace, a změněno rozložení při prohlížení karty, aby bylo přehlednější.
|
||||
- Přidán úvodní průvodce, který se spustí při prvním spuštění aplikace.
|
||||
|
||||
3
fastlane/metadata/android/cs-CZ/changelogs/147.txt
Normal file
3
fastlane/metadata/android/cs-CZ/changelogs/147.txt
Normal file
@@ -0,0 +1,3 @@
|
||||
- Cíl Android 15
|
||||
- Opraven pád při čtení nepodporovaných souborů pkpass
|
||||
- Vylepšení podpory pkpass
|
||||
@@ -1,5 +1,5 @@
|
||||
- PŘELOMOVÁ ZMĚNA: Formát zálohování se změnil, viz https://github.com/TheLastProject/Catima/wiki/Export-format
|
||||
- PŘELOMOVÁ ZMĚNA: Změnil se formát sdílení URL, viz https://github.com/TheLastProject/Catima/wiki/Card-sharing-URL-format
|
||||
- PŘELOMOVÁ ZMĚNA: Formát zálohování se změnil, viz GitHub
|
||||
- PŘELOMOVÁ ZMĚNA: Změnil se formát sdílení URL, viz GitHub
|
||||
- Umožnění zapnutí nebo vypnutí svítilny při skenování
|
||||
- Přidána podpora UPC-E
|
||||
- Podpora přidávání přední a zadní fotografie ke každé kartě
|
||||
@@ -7,5 +7,4 @@
|
||||
- Podpora importu ze Stocard (beta)
|
||||
- Oprava zbytečných bílých znaků v poznámkách z importu Fidme
|
||||
- Podpora nového formátu exportu z trezoru voucherů
|
||||
- Oprava tlačítek plovoucích akcí, která jsou v systému Android 4 za ostatními prvky rozhraní
|
||||
- Oprava horního okraje panelu aplikace pro prohlížení věrnostních karet
|
||||
- Spousta dalších změn
|
||||
|
||||
3
fastlane/metadata/android/de-DE/changelogs/147.txt
Normal file
3
fastlane/metadata/android/de-DE/changelogs/147.txt
Normal file
@@ -0,0 +1,3 @@
|
||||
- Angepasst für Android 15
|
||||
- Kein Absturz mehr beim Lesen nicht unterstützter pkpass-Dateien
|
||||
- Verbesserte Unterstützung des pkpass Imports
|
||||
3
fastlane/metadata/android/en-US/changelogs/147.txt
Normal file
3
fastlane/metadata/android/en-US/changelogs/147.txt
Normal file
@@ -0,0 +1,3 @@
|
||||
- Target Android 15
|
||||
- Fix crash reading unsupported pkpass files
|
||||
- Improve pkpass support
|
||||
3
fastlane/metadata/android/fa-IR/changelogs/10.txt
Normal file
3
fastlane/metadata/android/fa-IR/changelogs/10.txt
Normal file
@@ -0,0 +1,3 @@
|
||||
- تغییر نام پیشفرض فایلهای وارد/صادر شده. (pull #84 (https://github.com/brarcher/loyalty-card-locker/pull/84))
|
||||
- تصحیح متن در صفحه وارد/صادر کردن. (pull #87 (https://github.com/brarcher/loyalty-card-locker/pull/87))
|
||||
- بهبود طرحبندی صفحه نمایش کارت. متن خواناتر شده و با یک کلیک طولانی قابل انتخاب است. (pull #91 (https://github.com/brarcher/loyalty-card-locker/pull/91))
|
||||
2
fastlane/metadata/android/fa-IR/changelogs/100.txt
Normal file
2
fastlane/metadata/android/fa-IR/changelogs/100.txt
Normal file
@@ -0,0 +1,2 @@
|
||||
- پنهان کردن جستجو، گسترش و مرتب کردن نمادها تا زمانی که حداقل 1 کارت وجود دارد
|
||||
- رفع پوسته های مختلف
|
||||
3
fastlane/metadata/android/fa-IR/changelogs/101.txt
Normal file
3
fastlane/metadata/android/fa-IR/changelogs/101.txt
Normal file
@@ -0,0 +1,3 @@
|
||||
- رفع عدم استفاده از رنگ پوسته برش دهنده
|
||||
- رفع مشکلات جزئی پوسته
|
||||
- اضافه شدن پوسته سیاه خالص برای صفحه نمایش های OLED
|
||||
2
fastlane/metadata/android/fa-IR/changelogs/102.txt
Normal file
2
fastlane/metadata/android/fa-IR/changelogs/102.txt
Normal file
@@ -0,0 +1,2 @@
|
||||
- اصلاحات جزئی مختلف
|
||||
- رفع خرابی هنگام استفاده از ترجمه نروژی
|
||||
2
fastlane/metadata/android/fa-IR/changelogs/103.txt
Normal file
2
fastlane/metadata/android/fa-IR/changelogs/103.txt
Normal file
@@ -0,0 +1,2 @@
|
||||
- انتخاب زبان دستی را برطرف کنید که همه جا اعمال نمی شود
|
||||
- رفع خرابی در نمای ویرایش در محل بدون منطقه
|
||||
2
fastlane/metadata/android/fa-IR/changelogs/104.txt
Normal file
2
fastlane/metadata/android/fa-IR/changelogs/104.txt
Normal file
@@ -0,0 +1,2 @@
|
||||
- وضعیت گسترش جزئیات کارت را ذخیره کنید
|
||||
- اصلاحات جزئی رابط
|
||||
2
fastlane/metadata/android/fa-IR/changelogs/105.txt
Normal file
2
fastlane/metadata/android/fa-IR/changelogs/105.txt
Normal file
@@ -0,0 +1,2 @@
|
||||
- رفع بلوک خاکستری ظاهر شدن در مقدار نامعتبر برای بارکد
|
||||
- رفع واردات Stocard
|
||||
1
fastlane/metadata/android/fa-IR/changelogs/106.txt
Normal file
1
fastlane/metadata/android/fa-IR/changelogs/106.txt
Normal file
@@ -0,0 +1 @@
|
||||
- رفع برخی از دنباله های کاراکتر که به عنوان یک کاراکتر نشان داده می شوند
|
||||
1
fastlane/metadata/android/fa-IR/changelogs/107.txt
Normal file
1
fastlane/metadata/android/fa-IR/changelogs/107.txt
Normal file
@@ -0,0 +1 @@
|
||||
- رفع واردات Stocard
|
||||
5
fastlane/metadata/android/fa-IR/changelogs/108.txt
Normal file
5
fastlane/metadata/android/fa-IR/changelogs/108.txt
Normal file
@@ -0,0 +1,5 @@
|
||||
- قابلیت تکثیر کارت را اضافه کنید
|
||||
- اجازه ندهید انتخاب قبل از سال 1970 منقضی شود (به هر حال آنها هرگز کار نکردند)
|
||||
- اضافه کردن پشتیبانی برای آرشیو کارت
|
||||
- حذف را از ویرایش به نمایش منتقل کنید
|
||||
- نماد قفل چرخش را به نفع تنظیم قفل چرخشی جدید حذف کنید
|
||||
1
fastlane/metadata/android/fa-IR/changelogs/109.txt
Normal file
1
fastlane/metadata/android/fa-IR/changelogs/109.txt
Normal file
@@ -0,0 +1 @@
|
||||
- رفع رنگ متن نادرست روی دکمه "بدون بارکد"
|
||||
5
fastlane/metadata/android/fa-IR/changelogs/11.txt
Normal file
5
fastlane/metadata/android/fa-IR/changelogs/11.txt
Normal file
@@ -0,0 +1,5 @@
|
||||
- هنگام ویرایش شناسه کارت، شناسه موجود را از قبل پر کنید تا شروع شود. (pull #94 (https://github.com/brarcher/loyalty-card-locker/pull/94))
|
||||
- محدودیت عرض بارکدهای تولید شده را برای کاهش مصرف و خطا حافظه. (pull #103 (https://github.com/brarcher/loyalty-card-locker/pull/103))
|
||||
- هنگام ویرایش کارت، تغییر دکمه "تایید کارت" در صورتی که شناسه کارت از قبل وجود دارد. "Edit Card". (pull #104 (https://github.com/brarcher/loyalty-card-locker/pull/104))
|
||||
- تغییر رنگ بندی به نرمی و سازگاری با نماد برنامه و تمیزتر کردن طرح هنگام مشاهده کارت. (pull #107 (https://github.com/brarcher/loyalty-card-locker/pull/107))
|
||||
- اضافه کردن یک جادوگر معرفی که در اولین اجرا برنامه راه اندازی می شود. (pull #108 (https://github.com/brarcher/loyalty-card-locker/pull/108))
|
||||
7
fastlane/metadata/android/fa-IR/changelogs/111.txt
Normal file
7
fastlane/metadata/android/fa-IR/changelogs/111.txt
Normal file
@@ -0,0 +1,7 @@
|
||||
- پشتیبانی از زبان عربی
|
||||
- نمایش تعداد کارت های آرشیو شده در نمای کلی گروه
|
||||
- رفع اشکالات تجزیه تعادل (کارت های ساخته شده به زبان عربی و سایر زبان ها با اعداد غیر غربی قابل ذخیره نیستند)
|
||||
- رفع عدم اعمال تم سفارشی به صفحه اصلی به درستی
|
||||
- بهبود نمایش کارت های انتخاب شده
|
||||
- رفع خرابی هنگام خروج cardview در طرحبندیهای RTL برای کارتهای دارای انقضا یا موجودی
|
||||
- فلش عقب را در نمای کارتی که در طرحبندیهای RTL به مسیر اشتباه اشاره میکند، رفع کنید
|
||||
1
fastlane/metadata/android/fa-IR/changelogs/112.txt
Normal file
1
fastlane/metadata/android/fa-IR/changelogs/112.txt
Normal file
@@ -0,0 +1 @@
|
||||
- امکان تنظیم یک سربرگ سفارشی را بیشتر نمایان کنید
|
||||
3
fastlane/metadata/android/fa-IR/changelogs/113.txt
Normal file
3
fastlane/metadata/android/fa-IR/changelogs/113.txt
Normal file
@@ -0,0 +1,3 @@
|
||||
- دکمه های قبلی و بعدی را به نمای کارت وفاداری اضافه کنید
|
||||
- رفع رنگ پیش زمینه در دکمه ویرایش
|
||||
- نماد ذخیره فلاپی دیسک را با علامت چک جایگزین کنید
|
||||
3
fastlane/metadata/android/fa-IR/changelogs/114.txt
Normal file
3
fastlane/metadata/android/fa-IR/changelogs/114.txt
Normal file
@@ -0,0 +1,3 @@
|
||||
- اضافه کردن نماد تک رنگ برای اندروید 13
|
||||
- صفحه نمایش اولین راه اندازی را بهبود بخشید
|
||||
- رفع واردات Fidme
|
||||
4
fastlane/metadata/android/fa-IR/changelogs/115.txt
Normal file
4
fastlane/metadata/android/fa-IR/changelogs/115.txt
Normal file
@@ -0,0 +1,4 @@
|
||||
- باز کردن تصویر در گالری با فشار طولانی
|
||||
- اعمال سبک متریال به دیالوگ ها
|
||||
- با اشتراک گذاری یک تصویر در Catima از ایجاد کارت پشتیبانی کنید
|
||||
- دکمه خرج سریع را به صفحه کارت اضافه کنید
|
||||
2
fastlane/metadata/android/fa-IR/changelogs/116.txt
Normal file
2
fastlane/metadata/android/fa-IR/changelogs/116.txt
Normal file
@@ -0,0 +1,2 @@
|
||||
- رفع عدم اجازه گفتگوی خرج سریع، جدا کردن
|
||||
- پشتیبانی از بارگذاری تصویر از مدیر فایل
|
||||
2
fastlane/metadata/android/fa-IR/changelogs/117.txt
Normal file
2
fastlane/metadata/android/fa-IR/changelogs/117.txt
Normal file
@@ -0,0 +1,2 @@
|
||||
- حذف مجوزهای غیر ضروری
|
||||
- اندروید 13 را هدف قرار دهید
|
||||
2
fastlane/metadata/android/fa-IR/changelogs/118.txt
Normal file
2
fastlane/metadata/android/fa-IR/changelogs/118.txt
Normal file
@@ -0,0 +1,2 @@
|
||||
- پشتیبانی از تنظیم شروع اعتبار کارت
|
||||
- رفع واردات Stocard (فرمت صادرات Stocard تغییر کرد)
|
||||
1
fastlane/metadata/android/fa-IR/changelogs/119.txt
Normal file
1
fastlane/metadata/android/fa-IR/changelogs/119.txt
Normal file
@@ -0,0 +1 @@
|
||||
- از رنگهای Material You در دستگاههای بیشتری استفاده کنید (بهروزرسانی کتابخانه Google)
|
||||
1
fastlane/metadata/android/fa-IR/changelogs/12.txt
Normal file
1
fastlane/metadata/android/fa-IR/changelogs/12.txt
Normal file
@@ -0,0 +1 @@
|
||||
- هنگام چرخاندن صفحه نمایش در اولین اجرای جادوگر، از خرابی جلوگیری کنید.
|
||||
3
fastlane/metadata/android/fa-IR/changelogs/120.txt
Normal file
3
fastlane/metadata/android/fa-IR/changelogs/120.txt
Normal file
@@ -0,0 +1,3 @@
|
||||
- طراحی مجدد کامل صفحه نمایش کارت اصلی و وفاداری
|
||||
- سبک Material You برای صفحه تنظیمات
|
||||
- رفع خرابی هنگام استفاده از "عکس گرفتن" با برنامه دوربین غیرفعال
|
||||
1
fastlane/metadata/android/fa-IR/changelogs/121.txt
Normal file
1
fastlane/metadata/android/fa-IR/changelogs/121.txt
Normal file
@@ -0,0 +1 @@
|
||||
- بهروز رسانی کتابخانه های استفاده شده
|
||||
3
fastlane/metadata/android/fa-IR/changelogs/122.txt
Normal file
3
fastlane/metadata/android/fa-IR/changelogs/122.txt
Normal file
@@ -0,0 +1,3 @@
|
||||
- برای تغییر آیکون کارت در نمای فعالیت، فشار طولانی دهید
|
||||
- بهبود استایل دکمه در صفحه گروه ها
|
||||
- مقادیر بارکد طولانی را ثابت کنید که باعث می شود بارکد به اندازه کم شود
|
||||
2
fastlane/metadata/android/fa-IR/changelogs/123.txt
Normal file
2
fastlane/metadata/android/fa-IR/changelogs/123.txt
Normal file
@@ -0,0 +1,2 @@
|
||||
- بهبودهای جزئی رابط کاربری
|
||||
- رفع عدم استفاده از طراحی جدید در دستگاه های با صفحه نمایش مربع
|
||||
1
fastlane/metadata/android/fa-IR/changelogs/124.txt
Normal file
1
fastlane/metadata/android/fa-IR/changelogs/124.txt
Normal file
@@ -0,0 +1 @@
|
||||
- پشتیبانی از انتخاب دقیق جزئیات برای مشاهده در نمای کلی کارت
|
||||
1
fastlane/metadata/android/fa-IR/changelogs/125.txt
Normal file
1
fastlane/metadata/android/fa-IR/changelogs/125.txt
Normal file
@@ -0,0 +1 @@
|
||||
- با رنگهای از دست رفته سرصفحه با ظرافت بیشتری برخورد کنید
|
||||
1
fastlane/metadata/android/fa-IR/changelogs/126.txt
Normal file
1
fastlane/metadata/android/fa-IR/changelogs/126.txt
Normal file
@@ -0,0 +1 @@
|
||||
- رفع انواع RTL
|
||||
4
fastlane/metadata/android/fa-IR/changelogs/127.txt
Normal file
4
fastlane/metadata/android/fa-IR/changelogs/127.txt
Normal file
@@ -0,0 +1,4 @@
|
||||
- بهبود رندر بارکد
|
||||
- قابلیت همکاری اولیه با برنامه های خارجی (اندروید 6.0+)
|
||||
- صفحه تنظیمات سازماندهی مجدد
|
||||
- وارد کردن از برخی مرورگرهایی که یک دنباله / را به نشانی اشتراکگذاری اضافه میکنند، رفع کنید
|
||||
1
fastlane/metadata/android/fa-IR/changelogs/128.txt
Normal file
1
fastlane/metadata/android/fa-IR/changelogs/128.txt
Normal file
@@ -0,0 +1 @@
|
||||
- رفع خرابی نادر
|
||||
22
fastlane/metadata/android/fa-IR/full_description.txt
Normal file
22
fastlane/metadata/android/fa-IR/full_description.txt
Normal file
@@ -0,0 +1,22 @@
|
||||
جستجوی کارتهای پاداش پلاستیکی را در حین تسویهحساب فروشگاه یا فروشگاه اینترنتی متوقف کنید.
|
||||
<b>بارکدها را با استفاده از دوربین دستگاه خود اسکن کنید، کارتها را فراموش کنید.</b>
|
||||
|
||||
کیف پول خود را فراموش کنید یا آن را برای اشیاء قیمتی بسیار سبک نگه دارید.
|
||||
|
||||
با استفاده از این ابزار ضروری حمل روزانه (EDC) می توانید پلاستیک بی مصرف را با پول نقد جایگزین کنید.
|
||||
|
||||
- از جاسوسی با مجوزهای بسیار کم خودداری کنید. بدون دسترسی به اینترنت و بدون تبلیغات.
|
||||
- کارت ها یا کدهایی را با نام و رنگ های قابل تنظیم اضافه کنید.
|
||||
- اگر بارکدی برای ذخیره وجود ندارد یا نمی توان از آن استفاده کرد، وارد کردن کد دستی.
|
||||
- کارت ها و کدها را از فایل ها، کاتیما، FidMe، K، جاکلیدی کارت وفاداری، Stocard و صندوق کوپن وارد کنید.
|
||||
- از تمام کارت های خود یک نسخه پشتیبان تهیه کنید و در صورت تمایل آنها را به دستگاه جدیدی انتقال دهید.
|
||||
- کوپن ها، پیشنهادات انحصاری، کدهای تبلیغاتی، یا کارت ها و کدها را با استفاده از هر برنامه ای به اشتراک بگذارید.
|
||||
- تم تیره و گزینه های دسترسی برای کاربران دارای اختلال بینایی.
|
||||
- ساخته شده برای همه توسط انجمن نرم افزار libre.
|
||||
- ترجمه های دست ساز محلی برای بیش از 40 زبان.
|
||||
- رایگان، توسط مشارکت های جامعه پشتیبانی می شود.
|
||||
- استفاده کنید، مطالعه کنید، تغییر دهید و آن را به دلخواه به اشتراک بگذارید. <i>با همه</i>.
|
||||
- نه تنها نرم افزار آزاد / منبع باز. مدیریت کارت نرم افزار رایگان <i>Copylefted</i> (GPLv3+).
|
||||
|
||||
زندگی و خرید خود را ساده کنید و هرگز رسید کاغذی، کارت هدیه پرداخت در فروشگاه یا بلیط هواپیما را گم نکنید.
|
||||
تمام جوایز و جوایز خود را با خود ببرید و در حین حرکت پس انداز کنید.
|
||||
BIN
fastlane/metadata/android/fa-IR/images/featureGraphic.png
Normal file
BIN
fastlane/metadata/android/fa-IR/images/featureGraphic.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 19 KiB |
1
fastlane/metadata/android/fa-IR/short_description.txt
Normal file
1
fastlane/metadata/android/fa-IR/short_description.txt
Normal file
@@ -0,0 +1 @@
|
||||
برای بارکدها، عضویتها، برنامههای وفاداری، کوپنها و بلیطهای شما.
|
||||
1
fastlane/metadata/android/fa-IR/title.txt
Normal file
1
fastlane/metadata/android/fa-IR/title.txt
Normal file
@@ -0,0 +1 @@
|
||||
کاتیما – کیف پول کارت وفاداری
|
||||
3
fastlane/metadata/android/lv/changelogs/147.txt
Normal file
3
fastlane/metadata/android/lv/changelogs/147.txt
Normal file
@@ -0,0 +1,3 @@
|
||||
- Android 15 atbalsts
|
||||
- Novērsts avārija neatbalstītu pkpass datņu lasīšanas laikā
|
||||
- Uzlabots pkpass atbalsts
|
||||
2
fastlane/metadata/android/lv/changelogs/15.txt
Normal file
2
fastlane/metadata/android/lv/changelogs/15.txt
Normal file
@@ -0,0 +1,2 @@
|
||||
- Pievienots lietotnes īsinājumikonu atbalsts (Android 7.1+), kas nodrošina, ka visnesenāk izmantotās kartes parādīsies kā īsinājumikonas. (izmaiņu pieprasījums #145 (https://github.com/brarcher/loyalty-card-locker/pull/145))
|
||||
- Pievienots logrīks, kas darbojas kā piesprausta lietotnes īsinājumikona, lai atbalstītu ierīces, kurās darbojas Android vecāks par 7.1. (izmaiņu pieprasījums #142 (https://github.com/brarcher/loyalty-card-locker/pull/142))
|
||||
1
fastlane/metadata/android/pt-PT/changelogs/138.txt
Normal file
1
fastlane/metadata/android/pt-PT/changelogs/138.txt
Normal file
@@ -0,0 +1 @@
|
||||
- Corrigir gesto de voltar no ecrã principal descartando o teclado e a pesquisa no Android 13+
|
||||
@@ -1 +1,3 @@
|
||||
- Opção para navegar entre cartões usando os botões de volume
|
||||
- Corrigir importação de Stocard
|
||||
- Corrigir a mensagem "Importe cancelado" de aparecer após importações bem sucedidas
|
||||
|
||||
1
fastlane/metadata/android/pt-PT/changelogs/140.txt
Normal file
1
fastlane/metadata/android/pt-PT/changelogs/140.txt
Normal file
@@ -0,0 +1 @@
|
||||
- Corrigir o embrulho de texto na caixa de diálogo de adicionar
|
||||
3
fastlane/metadata/android/pt-PT/changelogs/142.txt
Normal file
3
fastlane/metadata/android/pt-PT/changelogs/142.txt
Normal file
@@ -0,0 +1,3 @@
|
||||
- Adicionar apoio de Passbook (.pkpass)
|
||||
- Corrigir a importação de ficheiros de PDF transparentes
|
||||
- Melhorar a exibição de miniaturas transparentes
|
||||
1
fastlane/metadata/android/pt-PT/changelogs/143.txt
Normal file
1
fastlane/metadata/android/pt-PT/changelogs/143.txt
Normal file
@@ -0,0 +1 @@
|
||||
- Corrigir travar ao abrir ficheiros de pkpass inválidos
|
||||
2
fastlane/metadata/android/pt-PT/changelogs/146.txt
Normal file
2
fastlane/metadata/android/pt-PT/changelogs/146.txt
Normal file
@@ -0,0 +1,2 @@
|
||||
- Capacidade de classificar cartões pelo início da validade
|
||||
- Reverter temporariamente a focar no Android 14 para corrigir problemas de IU
|
||||
3
fastlane/metadata/android/pt-PT/changelogs/147.txt
Normal file
3
fastlane/metadata/android/pt-PT/changelogs/147.txt
Normal file
@@ -0,0 +1,3 @@
|
||||
- Focar no Android 15
|
||||
- Corrigir travar de falhas de leitura de ficheiros de pkpass não suportados
|
||||
- Melhorar o apoio de pkpass
|
||||
3
fastlane/metadata/android/pt/changelogs/10.txt
Normal file
3
fastlane/metadata/android/pt/changelogs/10.txt
Normal file
@@ -0,0 +1,3 @@
|
||||
- Foi alterado o nome de ficheiro padrão de importar/exportar. (pull #84 (https://github.com/brarcher/loyalty-card-locker/pull/84))
|
||||
- Corrigida a sequência na página de importação/exportação. (pull #87 (https://github.com/brarcher/loyalty-card-locker/pull/87))
|
||||
- Disposição da página de visualização do cartão melhorada. O texto deve ser mais fácil de ler e selecionável com um toque longo. (pull #91 (https://github.com/brarcher/loyalty-card-locker/pull/91))
|
||||
2
fastlane/metadata/android/pt/changelogs/104.txt
Normal file
2
fastlane/metadata/android/pt/changelogs/104.txt
Normal file
@@ -0,0 +1,2 @@
|
||||
- Grava o estado de expansão dos pormenores dos cartões
|
||||
- Pequenas correções na IU
|
||||
2
fastlane/metadata/android/pt/changelogs/105.txt
Normal file
2
fastlane/metadata/android/pt/changelogs/105.txt
Normal file
@@ -0,0 +1,2 @@
|
||||
- Corrige bloco cinzento aparecendo em dado inválido para código de barras
|
||||
- Correções na importação de Stocard
|
||||
1
fastlane/metadata/android/pt/changelogs/106.txt
Normal file
1
fastlane/metadata/android/pt/changelogs/106.txt
Normal file
@@ -0,0 +1 @@
|
||||
- Corrige algumas sequências de caracteres que eram mostrados como um único caractere
|
||||
1
fastlane/metadata/android/pt/changelogs/107.txt
Normal file
1
fastlane/metadata/android/pt/changelogs/107.txt
Normal file
@@ -0,0 +1 @@
|
||||
- Correções na importação de Stocard
|
||||
5
fastlane/metadata/android/pt/changelogs/108.txt
Normal file
5
fastlane/metadata/android/pt/changelogs/108.txt
Normal file
@@ -0,0 +1,5 @@
|
||||
- Adiciona função de duplicar cartão
|
||||
- Não permitir expiração anterior a 1970 (nunca funcionou de qualquer forma)
|
||||
- Adiciona suporte a arquivar cartões
|
||||
- Move a função deletar da ecrã de edição para visualização
|
||||
- Remove ícone de travamento de rotação em favor de nova configuração de travamento de rotação
|
||||
1
fastlane/metadata/android/pt/changelogs/109.txt
Normal file
1
fastlane/metadata/android/pt/changelogs/109.txt
Normal file
@@ -0,0 +1 @@
|
||||
- Corrige cor incorreta de texto no botão "Sem código de barras"
|
||||
5
fastlane/metadata/android/pt/changelogs/11.txt
Normal file
5
fastlane/metadata/android/pt/changelogs/11.txt
Normal file
@@ -0,0 +1,5 @@
|
||||
- Ao editar um identificador de um cartão, pré-preencher o identificador existente.
|
||||
- Limitada a largura dos códigos de barras gerados para reduzir o uso de memória e erros.
|
||||
- Alterado o botão "Introduzir cartão" para "Editar cartão" se já existir um identificador.
|
||||
- Alterado o esquema de cores para ser mais suave e compatível com o ícone da aplicação e disposição alterada ao visualizar um cartão.
|
||||
- Acrescentado um assistente de introdução que será lançado no primeiro lançamento da aplicação
|
||||
7
fastlane/metadata/android/pt/changelogs/111.txt
Normal file
7
fastlane/metadata/android/pt/changelogs/111.txt
Normal file
@@ -0,0 +1,7 @@
|
||||
- Suporte a Árabe
|
||||
- Mostra número de cartões arquivados na visão de grupo
|
||||
- Corrige problemas na validação de saldo com números não ocidentais
|
||||
- Corrige problema em que temas personalizados não eram aplicados à ecrã principal corretamente
|
||||
- Melhora a visualização de cartões selecionados
|
||||
- Corrige falha ao sair da visualização de cartão em modo de Direita para Esquerda (RTL) com saldo ou data de expiração
|
||||
- Corrige direção da seta de voltar na visualização de cartão no modo RTL
|
||||
1
fastlane/metadata/android/pt/changelogs/112.txt
Normal file
1
fastlane/metadata/android/pt/changelogs/112.txt
Normal file
@@ -0,0 +1 @@
|
||||
- Torna possível definir um cabeçalho personalizado mais visível
|
||||
3
fastlane/metadata/android/pt/changelogs/113.txt
Normal file
3
fastlane/metadata/android/pt/changelogs/113.txt
Normal file
@@ -0,0 +1,3 @@
|
||||
- Adiciona botões anterior e próximo à visualização de cartões de fidelidade
|
||||
- Corrige cor de primeiro plano no botão de edição
|
||||
- Substitui ícone de disquete para gravar por marca de seleção
|
||||
3
fastlane/metadata/android/pt/changelogs/114.txt
Normal file
3
fastlane/metadata/android/pt/changelogs/114.txt
Normal file
@@ -0,0 +1,3 @@
|
||||
- Adiciona ícone monocromático para Android 13
|
||||
- Melhora a primeira ecrã de lançamento
|
||||
- Correções na importação de Fidme
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user