Android TransactionTooLargeException при вызове TakePictureAndroid

Форум для тех, кто программирует под Android
Ответить Пред. темаСлед. тема
Anonymous
 Android TransactionTooLargeException при вызове TakePicture

Сообщение Anonymous »

Мне нужно использовать камеру в моем приложении для работы. Я вижу, что в API все изменилось >= 28 по сравнению с тем, как я это делал раньше, когда мог использовать startActivityForResult.
Однако я столкнулся с проблемой: я запускаю приложение камеры и сразу же получаю сообщение об ошибке TransactionTooLargeException в консоли отладки/запуска.
Для вызова камеры я делаю< /p>

Код: Выделить всё

mGetContent = registerForActivityResult(
new ActivityResultContracts.TakePicture(),
result -> {
if (result) {

}
}
);
Где mGetContent определен в классе как

Код: Выделить всё

private ActivityResultLauncher mGetContent;
В моем файле AndroidManifest.xml есть следующее

Код: Выделить всё

        android:name="androidx.core.content.FileProvider"
android:authorities="com.test.fileprovider"
android:exported="false"
android:grantUriPermissions="true">


В моем файле file_paths у меня есть В моем действии настроена кнопка, с помощью которой я запускаю камеру с помощью

Код: Выделить всё

findViewById(R.id.button)).setOnClickListener(v -> {
File directory = new File(context.getFilesDir(), "app_images");
if (!directory.exists()) directory.mkdir();

File file = new File(directory, "image.jpg");

Uri uri = getUriForFile(this, "com.test.fileprovider", file);

mGetContent.launch(uri);
};
Как только я нажимаю на кнопку и открывается приложение камеры, я получаю, как я могу только предположить, слишком общее сообщение об ошибке.

Код: Выделить всё

E/JavaBinder: !!! FAILED BINDER TRANSACTION !!!  (parcel size = 1284092)
E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.test, PID: 14296
java.lang.RuntimeException: android.os.TransactionTooLargeException: data parcel size 1284092 bytes
at android.app.servertransaction.PendingTransactionActions$StopInfo.run(PendingTransactionActions.java:161)
at android.os.Handler.handleCallback(Handler.java:883)
at android.os.Handler.dispatchMessage(Handler.java:100)
at android.os.Looper.loop(Looper.java:214)
at android.app.ActivityThread.main(ActivityThread.java:7397)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:935)
Caused by: android.os.TransactionTooLargeException: data parcel size 1284092 bytes
at android.os.BinderProxy.transactNative(Native Method)
at android.os.BinderProxy.transact(BinderProxy.java:511)
at android.app.IActivityTaskManager$Stub$Proxy.activityStopped(IActivityTaskManager.java:4524)
at android.app.servertransaction.PendingTransactionActions$StopInfo.run(PendingTransactionActions.java:145)
Пытался найти что-то в Google, но не мог понять, в чем проблема.
Некоторые предложения указали мне на onSaveInstanceState, поэтому я переопределил это и установил на нем точку останова, чтобы увидеть, что происходит, но все прошло без каких-либо проблем (насколько я могу судить).
Как-то в растерянности с этим один.

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

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

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

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

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

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Android TransactionTooLargeException при вызове TakePicture
    Anonymous » » в форуме JAVA
    0 Ответы
    11 Просмотры
    Последнее сообщение Anonymous
  • Android TransactionTooLargeException при вызове TakePicture
    Anonymous » » в форуме Android
    0 Ответы
    8 Просмотры
    Последнее сообщение Anonymous
  • Android TransactionTooLargeException при вызове TakePicture
    Anonymous » » в форуме JAVA
    0 Ответы
    12 Просмотры
    Последнее сообщение Anonymous
  • ActivityResultContracts.TakePicture сохраняет изображение в галерее вместо целевого URI.
    Anonymous » » в форуме JAVA
    0 Ответы
    16 Просмотры
    Последнее сообщение Anonymous
  • ActivityResultContracts.TakePicture сохраняет изображение в галерее вместо целевого URI.
    Anonymous » » в форуме Android
    0 Ответы
    18 Просмотры
    Последнее сообщение Anonymous

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