После обновления до уровня API 34 приложение аварийно завершает работу на некоторых устройствах Android.Android

Форум для тех, кто программирует под Android
Ответить Пред. темаСлед. тема
Anonymous
 После обновления до уровня API 34 приложение аварийно завершает работу на некоторых устройствах Android.

Сообщение Anonymous »

Я обновил свой уровень API в соответствии с новейшими требованиями консоли Google Play, но приложение аварийно завершает работу на некоторых устройствах Android.
У меня есть следующее в android/app/build.gradle< /код>
android {
compileSdkVersion 34
...
defaultConfig {
minSdkVersion 33
targetSdkVersion 34
...

В pubspec.yaml
min_sdk_android: 33

Он работает на многих устройствах Android (например, Oppo A13 ColorOS, Samsung A71 A13, Samsung Galaxy Z A14),
но на некоторых происходит сбой (например, Pixel 8 A14).
Судя по тому, что я видел, он зависает на значке запуска запуска.
Последняя версия — единственная активная в администраторе консоли Google Play.
Почему на некоторых устройствах Android все еще происходит сбой?

ОБНОВЛЕНИЕ:
Вот трассировка стека:
Failed to find provider info for 24:95:2F:97:51:D9
NfcTag::connectionEventHandler: NDEF detection timed out
nativeNfcTag_doCheckNdefResult: unknown status=0xB2
Cannot get requestId: Handwriting was not initialized.
Not starting debugger since process cannot load the jdwp agent.
[ERROR:flutter/runtime/dart_vm_initializer.cc(41)] Unhandled Exception: PlatformException(Exception encountered, read, javax.crypto.BadPaddingException: error:1e000065:Cipher functions:OPENSSL_internal:BAD_DECRYPT
at com.android.org.conscrypt.NativeCrypto.EVP_CipherFinal_ex(Native Method)
at com.android.org.conscrypt.OpenSSLEvpCipher.doFinalInternal(OpenSSLEvpCipher.java:152)
at com.android.org.conscrypt.OpenSSLCipher.engineDoFinal(OpenSSLCipher.java:374)
at javax.crypto.Cipher.doFinal(Cipher.java:2074)
at b0.h.b(Unknown Source:35)
at a0.a.c(Unknown Source:11)
at a0.a.k(Unknown Source:17)
at a0.e$b.run(Unknown Source:233)
at android.os.Handler.handleCallback(Handler.java:959)
at android.os.Handler.dispatchMessage(Handler.java:100)
at android.os.Looper.loopOnce(Looper.java:232)
at android.os.Looper.loop(Looper.java:317)
at android.os.HandlerThread.run(HandlerThread.java:85)
, null)
#0 StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:652)
#1 MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:310)

#2 main (package:myppcmetrics_app/main.dart:22)

!!! FAILED BINDER TRANSACTION !!! (parcel size = 556)
Invalid frequency(-1), using 5G as default rssi array
View class com.android.systemui.keyguard.ui.view.UdfpsLottieViewWrapper is an AppCompat widget that can only be used with a Theme.AppCompat theme (or descendant).
View class com.android.systemui.keyguard.ui.view.UdfpsLottieViewWrapper is an AppCompat widget that can only be used with a Theme.AppCompat theme (or descendant).

Я добавил обработку ошибок для вызова FlutterSecureStorage().read(key:'client_id') следующим образом. Есть ли другие ошибки, которые я не вижу и не обрабатываю в данный момент?
import 'dart:convert';

import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:flutter_secure_storage/flutter_secure_storage.dart';
import 'package:flutter_translate/flutter_translate.dart';
import 'package:myppcmetrics_app/config/theme.dart';
import 'package:myppcmetrics_app/screens/components/cockpit_charts.dart';
import 'package:myppcmetrics_app/screens/components/logo_header.dart';
import 'package:myppcmetrics_app/screens/components/menu.dart';
import 'package:myppcmetrics_app/service/translation.dart';
import 'package:myppcmetrics_app/state/client.dart';
import 'package:myppcmetrics_app/state/login.dart';
import 'package:myppcmetrics_app/state/route.dart' as custom_router;
import 'package:provider/provider.dart';

final FlutterSecureStorage storage = const FlutterSecureStorage();

void main() async {
WidgetsFlutterBinding.ensureInitialized();

LocalizationDelegate delegate = await LocalizationDelegate.create(
fallbackLocale: 'de',
supportedLocales: ['de', 'it', 'fr', 'en'],
preferences: TranslatePreferences());

String? clientId;

try {
clientId = await storage.read(key: 'client_id');
} catch (e) {
await clearAllStorage();
}

String? chartOrderJson =
await const FlutterSecureStorage().read(key: 'chart_order');
List chartOrder = ChartTypes.values;
if (chartOrderJson != null) {
List chartOrderTmp = jsonDecode(chartOrderJson);
chartOrder = [];
for (int id in chartOrderTmp) {
chartOrder.add(ChartTypes.fromId(id));
}
}
SystemChrome.setPreferredOrientations([
DeviceOrientation.portraitUp,
DeviceOrientation.portraitDown,
]);
runApp(LocalizedApp(
delegate,
MultiProvider(
providers: [
ListenableProvider(
create: (context) => ClientState.create(
clientId != null ? int.parse(clientId) : null),
),
ListenableProvider(create: (context) {
return LoginState(
delegate.currentLocale.languageCode.toUpperCase(), chartOrder);
}),
ListenableProvider(
create: (context) => custom_router.RouteState.create(
custom_router.RouteState.login)),
],
child: const MyPPCApp(),
)));
}

Future clearAllStorage() async {
try {
await storage.deleteAll();
print('Secure storage cleared');
} catch (e) {
print('Error clearing secure storage: $e');
}
}

После реализации этих изменений (clearAllStorage()) мое приложение также вылетает на эмуляторе со следующей ошибкой:
App com.google.android.youtube became active but still in NEVER bucket
updateValue is called with a value {0, 0, 0, 0, 0, 0, 0, 0}, which is lower than the previous value {24, 0, 86, 0, 24, 0, 44, 0}
updateValue is called with a value {0, 0, 0, 0, 0, 0, 0, 0}, which is lower than the previous value {6, 0, 24, 0, 185, 0, 24, 0}
updateValue is called with a value {0, 0, 0, 0, 0, 0, 0, 0}, which is lower than the previous value {521, 0, 684, 0, 1102, 0, 615, 0}
Not starting debugger since process cannot load the jdwp agent.
App com.google.android.youtube became active but still in NEVER bucket
App com.google.android.youtube became active but still in NEVER bucket
No package ID 78 found for resource ID 0x780b000f.
No package ID 78 found for resource ID 0x780b000f.
PackageRecordCache: appContext was already set bbex@b1efbc5 -> bbex@4413849
Unable to match the desired swap behavior.
a: 3
File error accessing recents directory (directory doesn't exist?).
Unable to match the desired swap behavior.
device/generic/goldfish-opengl/system/GLESv2_enc/GL2Encoder.cpp:s_glGetUniformLocation:2206 GL error 0x502


Подробнее здесь: https://stackoverflow.com/questions/789 ... id-devices
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Android»