标签: react-native-image-picker

在 Android 上从相机返回时 React Native 应用程序崩溃

我有一个似乎很常见的问题,但我还没有找到解决方案。我正在使用react-navigationreact-native-screensreact-native-image-picker。最后一个插件允许应用程序拍照并从图库加载照片。它在大多数情况下都有效,但有时在拍照并返回应用程序后会崩溃。我在他们的 GitHub 上搜索了解决方案,有很多关于此崩溃的报告,但没有一个修复。另一个库react-native-image-crop-picker也报告了这个崩溃,所以这似乎不是插件的问题,而是Android的问题。

这是我从 Firebase 崩溃日志中得到的信息:

这似乎与 Android 在需要更多内存时杀死后台应用程序的方式有关。最后一个错误有一个指向 Github 问题的链接。他们建议修改MainActivity.java -> onCreate(),并更改super.onCreate(savedInstanceState); super.onCreate(null); 。然而,这并不能解决任何问题,它只是使应用程序重新启动而不是崩溃,但我仍然丢失了整个导航堆栈和我刚刚拍摄的照片。这个问题有适当的解决办法吗?

android react-native react-navigation react-native-image-picker

12
推荐指数
1
解决办法
2364
查看次数

类型错误:未定义不是一个对象(评估'_reactNativeImagePicker.default.showImagePicker')

使用 React Image Picker 我面临这个错误:TypeError: undefined is not an object (evaluating '_reactNativeImagePicker.default.showImagePicker')

当我单击图像选择器功能时会发生这种情况

手机截图:

错误图像

这是我的代码:

import React from 'react';
import { View, Text,Button } from 'react-native';
import ImagePicker from 'react-native-image-picker';

const options = {
    title: 'Select Avatar',
    customButtons: [{ name: 'fb', title: 'Choose Photo from Facebook' }],
    storageOptions: {
      skipBackup: true,
      path: 'images',
    },
  };

function Picker(){
    const openPicker =()=>{
      ImagePicker.showImagePicker(options, (response) => {
        console.log('Response = ', response);
      
        if (response.didCancel) {
          console.log('User cancelled image picker');
        } else if (response.error) { …
Run Code Online (Sandbox Code Playgroud)

react-native react-native-image-picker

11
推荐指数
3
解决办法
7850
查看次数

向 API 请求 formData,上传图片时 axios 出现“网络错误”

我正在向服务器发出 POST 请求以上传图像并在 react-native 中使用 axios 发送表单数据。我收到“网络错误”。我也尝试 fetch 但没有任何效果。使用 react native image picker libeary 选择 image.in postman api 工作正常

        formData.append('title', Title);
        formData.append('class_id', selectClass._id)
        formData.append('subject_id', checkSelected)
        formData.append('teacher_id', userId)
        formData.append('description', lecture);
        formData.append('type', 'image');

       var arr=[];
       arr.push(imageSource)
       arr.map((file,index)=>{
       formData.append('file',{
       uri:file.path,
       type:file.type,
       name:file.name
       })
       })


       axios({
       method: 'post',
       url: URL + 'admin/assignment/create',
       data: data,
       headers: {
       "content-type": "multipart/form-data",
       'x-auth-token': token,
        },
       })
     .then(function (response) {
    //handle success
    console.log('axios assigment post',response);
      })
   .catch(function (response) {
     //handle error
      console.log('axios assigment post',response);
    });
Run Code Online (Sandbox Code Playgroud)

multipartform-data react-native axios react-native-android react-native-image-picker

10
推荐指数
6
解决办法
7905
查看次数

任务:react-native-image-picker:compileDebugJavaWithJavac失败

我有一个要更新 UI 的项目,但是每当我使用 npx react-native run android 运行应用程序时,都会出现错误

Task :react-native-image-picker:compileDebugJavaWithJavac FAILED

这是下面的完整错误:

`此版本中使用了已弃用的 Gradle 功能,使其与 Gradle 7.0 不兼容。使用“--warning-mode all”显示各个弃用警告。请参阅https://docs.gradle.org/6.7/userguide/command_line_interface.html#sec:command_line_warnings 302 个可操作任务:2 个已执行,300 个最新警告:映射新 ns http://schemas.android.com/ repository/android/common/02到旧的 ns http://schemas.android.com/repository/android/common/01 警告:将新的 ns http://schemas.android.com/repository/android/generic/02映射到旧 ns http://schemas.android.com/repository/android/generic/01 警告:将新 ns http://schemas.android.com/sdk/android/repo/addon2/02映射到旧 ns http:// schemas.android.com/sdk/android/repo/addon2/01 警告:将新 ns http://schemas.android.com/sdk/android/repo/addon2/03映射到旧 ns http://schemas.android。 com/sdk/android/repo/addon2/01 警告:将新 ns http://schemas.android.com/sdk/android/repo/repository2/02映射到旧 ns http://schemas.android.com/sdk/ android/repo/repository2/01 警告:将新的 ns http://schemas.android.com/sdk/android/repo/repository2/03映射到旧的 ns http://schemas.android.com/sdk/android/repo/ repository2/01 警告:将新的 ns http://schemas.android.com/sdk/android/repo/sys-img2/03映射到旧的 ns http://schemas.android.com/sdk/android/repo/sys- img2/01 警告:将新 ns http://schemas.android.com/sdk/android/repo/sys-img2/02映射到旧 ns http://schemas.android.com/sdk/android/repo/sys-图片2/01 警告:意外元素(uri:“”,本地:“基本扩展名”)。预期元素为 <{}codename>、<{}layoutlib>、<{}api-level> C:\Users\CURTIS\Downloads\efik\node_modules\react-native-image-picker\android\src\main\java …

java android gradlew react-native react-native-image-picker

10
推荐指数
1
解决办法
2482
查看次数

React-native node.js 显示错误:Multipart:使用 react-native-image-picker 上传图像时未找到边界

上传图像时,它显示错误:多部分:在节点 js 服务器控制台上找不到边界

这是我的本机代码

    const createFormData = async (photo, body) => {
  const data = new FormData();
   console.log("photoooooooooooo",photo.fileName);

  data.append("photo", {
    name: photo.fileName,
    type: photo.type,
    uri:
      Platform.OS === "android" ? photo.uri : photo.uri.replace("file://", "")
  });

  Object.keys(body).forEach(key => {
    data.append(key, body[key]);
  });
  console.log("datatyeeeeeeeeeeeeee",data);
  return data;
};


  const chooseFile = async() => {
    var options = {
      title: 'Select Image',
      customButtons: [
        { name: 'customOptionKey', title: 'Choose Photo from Custom Option' },
      ],
      storageOptions: {
        skipBackup: true,
        path: 'images',
      },
    };
    ImagePicker.showImagePicker(options, response …
Run Code Online (Sandbox Code Playgroud)

node.js express reactjs react-native react-native-image-picker

8
推荐指数
1
解决办法
490
查看次数

react-native-image-picker vs expo ImagePicker

我尝试了很多尝试来启动 react-native-image-picker 并使用我的 RN 应用程序。我正在使用 Expo 和 VS Code,并且没有使用 Xcode 或 Android Studio 运行该应用程序。在应用程序中获取相机胶卷的方法似乎有很多,我不确定哪条路是最好的。似乎没有人为我工作,所以我想选择最佳路径并专注于使那条路径有效。

我正在关注文档:https : //github.com/react-native-community/react-native-image-picker

我尝试过的事情:

  • 反应原生相机胶卷
  • 世博图像选择器
  • 博览会图片选择器
  • react-native-image-picker
  • 反应图像上传
  • 反应原生照片上传

我的代码:

import React, {useState, useEffect} from 'react';
import {StyleSheet, View, TextInput, TouchableOpacity, Text, CameraRoll } from 'react-native'
import ImagePicker from 'react-native-image-picker';
// import * as ImagePicker from 'expo-image-picker';
import Constants from 'expo-constants';

const PicturesScreen = ({navigation}) => {
    const [pictures, setPictures] = useState([]);

getPermissionAsync = async () => {
    if (Constants.platform.ios) {
      const { status …
Run Code Online (Sandbox Code Playgroud)

react-native react-native-camera expo react-native-image-picker

7
推荐指数
1
解决办法
8701
查看次数

React Native 任​​务:react-native-image-picker:compileDebugJavaWithJavac 失败

当尝试在 Windows 计算机上运行我的项目时,它无法正常工作,它可以在我的 macOS 上运行,但在 Windows 上运行时会抛出以下错误:

Task :react-native-image-picker:compileDebugJavaWithJavac FAILED
Run Code Online (Sandbox Code Playgroud)
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.TIRAMISU) {
                                                           ^
  symbol:   variable TIRAMISU
  location: class VERSION_CODES
Run Code Online (Sandbox Code Playgroud)

运行它npx react-native run-android

build.gradle有以下内容:


buildscript {
    ext {
        buildToolsVersion = "30.0.3"
        minSdkVersion = 30
        compileSdkVersion = 30
        targetSdkVersion = 30
                ndkVersion = "20.1.5948944"
    }

Run Code Online (Sandbox Code Playgroud)

一直在尝试更改我安装的所有内容的数量,29以及minSdk 、buildTools、编译30和目标,但没有任何效果。3133

目前,拥有节点 14 和 JDK 11

当我使用 33 时,错误更改为以下之一:

 Task :react-native-webview:compileDebugJavaWithJavac FAILED
Run Code Online (Sandbox Code Playgroud)

已经尝试过多次./gradlew clean

有人知道发生了什么事吗?我缺少什么?

java gradle android-studio react-native react-native-image-picker

7
推荐指数
1
解决办法
1万
查看次数

React-Native:通常使用 react-native-image-crop-picker 和 Camera 使用 openCamera 时在 android 上崩溃

我在一加 6 上打开相机时遇到了 react-native-image-picker 和 react-native-image-crop-picker 的问题。使用打开相机时,打开相机的后台应用程序(我的应用程序)崩溃。它进入白屏并重新启动应用程序。此外,react-native log-android 中没有日志。我确实设法使用 android studio 和 logcat 发现一旦相机打开应用程序就会立即崩溃并留下一个死的进程。问题是我找不到任何实际的崩溃日志。尽管事先我收到了很多“访问被拒绝找到属性“vendor.debug.egl.swapinterval””,但经过一些研究,这些信息似乎并不相关。

目前这个问题只发生在我的一加 6T 上。这些问题不会发生在模拟器或 IOS 上。即使不是在我试过的 xiamoi 设备上。

我已经尝试了从在图像裁剪选择器中压缩图像(代码一)到尝试压缩图像并在 react-native-image-picker(代码二)中使用 noData 标志的所有方法。另外,100%有权限,甚至可以在应用权限=>{我的应用}中的android系统权限中看到它此外,我尝试清理我的一加6t相机的缓存,卸载-重新安装我的应用,并将开发者选项重置为默认。

我基本上已经解决了 github 中两个库的所有问题,但没有任何效果。

ImagePicker.openCamera({
                width: 800,
                height: 600,
                compressImageMaxWidth: 640,
                compressImageMaxHeight: 480,
                compressImageQuality: 0.8
            }).then(image => {
                console.log(image);
            }).catch(e => console.log(e));
Run Code Online (Sandbox Code Playgroud)
ImagePicker.launchCamera({noData: true, maxWidth: 800, maxHeight: 600, quality: 0.8}, (response) => {
  console.log('Response = ', response);

  if (response.didCancel) {
    console.log('User cancelled image picker');
  } else if (response.error) {
    console.log('ImagePicker Error: ', response.error);
  } else if …
Run Code Online (Sandbox Code Playgroud)

react-native react-native-android react-native-image-picker

6
推荐指数
1
解决办法
2957
查看次数

在 React Native 中将图像转换为 Base64

我已经使用了react-native-image-picker,现在我从照片库中选择图像。要将图像发送到 API,我必须首先将其转换为 Base64,然后转换为字节数组。我的文件路径位于response.uri 中。我该怎么做?

当我执行 console.log(response) 时,我得到了这个结果

'Response = ', {
  fileSize: 6581432,
  longitude: -17.548928333333333,
  uri: 'file:///Users/shubhamb/Library/Developer/CoreSimulator/Devices/B58314DF-F0A9-48D2-B68A-984A02271B72/data/Containers/Data/Application/63143214-8A03-4AC8-A79C-42EC9B82E841/tmp/2AACBC57-0C07-4C98-985E-154668E6A384.jpg',
  fileName: 'IMG_0003.JPG',
  latitude: 65.682895,
  origURL: 'assets-library://asset/asset.JPG?id=9F983DBA-EC35-42B8-8773-B597CF782EDD&ext=JPG',
  type: 'image/jpeg',
  height: 2002,
  width: 3000,
  timestamp: '2012-08-08T18:52:11Z',
  isVertical: false,
}

Run Code Online (Sandbox Code Playgroud)

react-native react-native-image-picker

6
推荐指数
2
解决办法
2万
查看次数

如何在Expo React Native中将base64转换为字节?

我正在尝试将图像从图像选择器发送到服务器,但图像选择器仅返回 base64。

如何使用 expo 将 React-Native 中的 base64 转换为字节?

react-native expo react-native-image-picker

6
推荐指数
1
解决办法
7870
查看次数