Android app cra sh при доступе к камере только в выпускной сборке - PullRequest
0 голосов
/ 27 мая 2020

Создать проект cordova.

При попытке установить изображение профиля через камеру приложение вылетало. Это происходит только при сборке релиза. Получение исключения ниже:

java.lang.RuntimeException: Failure delivering result 
ResultInfo{who=@android:requestPermissions:, request=0, result=-1, data=Intent { 
act=android.content.pm.action.REQUEST_PERMISSIONS (has extras) }} to activity 
{com.jtr.retail/com.jtr.retail.MainActivity}: java.lang.NullPointerException: Attempt to invoke 
virtual method 'android.content.res.XmlResourceParser 
android.content.pm.ProviderInfo.loadXmlMetaData(android.content.pm.PackageManager, 
java.lang.String)' on a null object reference at 
android.app.ActivityThread.deliverResults(ActivityThread.java:4423)

AndroidMinifest. xml: поставщик под

<provider android:authorities="${applicationId}.provider" android:exported="false" android:grantUriPermissions="true" android:name="org.apache.cordova.camera.FileProvider">
            <meta-data android:name="android.support.FILE_PROVIDER_PATHS" android:resource="@xml/camera_provider_paths" />
</provider>

Javascript Код: Кнопка захвата функция, запускаемая обработчиком кликов cameraGetPicture.

function cameraGetPicture() {
                    navigator.camera.getPicture(onSuccess, onFail, { quality: 50,
                        destinationType: Camera.DestinationType.DATA_URL,
                        sourceType: Camera.PictureSourceType.CAMERA
                    });

                    function onSuccess(imageURL) {
                        var image = document.getElementById('myImage');
                        image.src = imageURL;
                    }
                    function onFail(message) {
                        alert('Failed because: ' + message);
                    }
                }
  • android: 6.3.0
  • target sdk: 28
  • плагин камеры: cordova-plugin-camera@4.1.0
  • воспроизведение на Android 9.0

Убедительный совет по устранению проблемы.

...