小编Sur*_*fel的帖子

如何通过移动应用程序使用旧版本的 Expo?

我有一个使用expo版本的项目30.0.1,我不希望更改创建的应用程序,CRNA当我尝试运行npm start并选择ios或android时,模拟器上的expo移动应用程序总是给我一个错误,说the experience you requested uses Expo SDK v(null) but this copy of Expo Client requires that at least v34.0.0. the author should upgrade their experience to a newer Expo SDK version现在我想运行该应用程序与旧的博览会版本一样,我怎样才能实现这一目标?

我尝试从模拟器中卸载 Expo Client 应用程序,但是当它重新安装时,它会在模拟器上安装较新的 Expo 客户端应用程序。有没有办法告诉Expo根据当前项目的Expo版本在模拟器上安装Expo客户端?

react-native expo

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

存档时“命令 PhaseScriptExecution 失败,退出代码非零”

所以我有世博会建立了一个应用程序,但随后退出来获得iOS和Android文件夹的一切工作都在Android和iOS我已经发布其Android系统,但在iOS精细当我尝试存档给我一个错误的项目Command PhaseScriptExecution failed with nonzero exit code,我不知道是什么导致了这个错误我已经阅读了很多 StackOverflow 问题,尝试了很多东西,但没有运气,这是我迄今为止尝试过的。

我试过:

  • 删除 pod 锁定文件,删除 pod 文件夹,正在执行pod deintegrate,正在执行pod update
    • 在keychainAccess中锁定和解锁登录
    • 清理 xcode 中的构建文件夹
    • 重新启动我的笔记本电脑和 xcode
    • 从新构建系统更改为旧构建系统
    • 删除 DerivedData 文件夹并清理 Xcode
  • 升级 cocopods 并再次执行 pod install

好吧,之前,构建Command+B也不起作用,但现在我去了目标-> 应用程序名称-> 构建阶段-> 捆绑博览会资产-> 并检查了“仅在安装时运行脚本”选项,构建开始工作但仍在存档不起作用

除了上述错误,我还注意到 xcode 上的另一个错误

在此处输入图片说明

所以请如果有人有任何想法为什么会发生这种情况,请?

错误截图

react-native expo xcode11

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

Android 应用程序在发布版本中崩溃,但在调试版本中工作 - React-Native

我知道这是一个常见问题,但我看到的错误有所不同,这是错误

06-13 15:37:51.081  1690  3926 I ActivityManager: START u0 {act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=com.lawyr/.MainActivity bnds=[849,682][1056,960] (has extras)} from uid 10020 on display 0
06-13 15:37:51.137  1690  1782 I ActivityManager: Start proc 13071:com.lawyr/u0a88 for activity com.lawyr/.MainActivity
06-13 15:37:51.285 13071 13071 D SoLoader: adding application source: com.facebook.soloader.DirectorySoSource[root = /data/app/com.lawyr-1/lib/x86 flags = 0]
06-13 15:37:51.290 13071 13071 D SoLoader: adding backup source from : com.facebook.soloader.ApkSoSource[root = /data/data/com.lawyr/lib-main flags = 1]
06-13 15:37:51.293 13071 13071 D SoLoader: Preparing SO source: com.facebook.soloader.DirectorySoSource[root = /data/app/com.lawyr-1/lib/x86 flags = …
Run Code Online (Sandbox Code Playgroud)

crash android release react-native

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

使用边界框react-native-camera裁剪图像

我的应用程序中有一个相机视图,其中有一个可调整大小的边界框 相机视图边界框图像

现在,在拍摄图像后,我希望能够只拍摄图像中聚焦的部分,因此我使用了此反应本机库中的 ImageEditor

我遇到的问题是,我在裁剪方面没有获得一致的结果,目前我有以下值 boxX盯着边界框的 X 位置;boxY边界框的起始 Y 位置;boxWidth边界框的宽度;boxHeight边界框的高度。

我首先使用了以下代码

ImageEditor.cropImage(image.uri, 
                {
                    offset: {x: boxX, y: boxY},
                    size: {width: boxWidth, height: boxHeight},
                }
            )
Run Code Online (Sandbox Code Playgroud)

这给出了非常像素化且非常错误的图像裁剪,我不知道为什么,然后我通过添加新变量(例如图像宽度和高度以及设备宽度和高度)来添加一些计算,并提出了以下代码:

ImageEditor.cropImage(data.uri, 
                {
                    offset: {x: ((boxX)/deviceWidth)*data.width, y:((boxY)/deviceHeight)*data.height},
                    size: {width: boxWidth/deviceWidth*imageWidth, height: boxHeight/deviceHeight*imageHeight},

                }
            )
Run Code Online (Sandbox Code Playgroud)

这好多了,但在 Android 上裁剪仍然是错误的,但在 iOS 上这似乎工作得很好而且准确,我的问题是我怎样才能实现这一目标,请告诉我是否需要进行任何计算才能获得一致的结果。

crop react-native react-native-camera

5
推荐指数
1
解决办法
3717
查看次数

在 firestore 中包含文档 ID 作为字段 ID

这就是我想要实现的目标,我希望数据库中的每个文档都有一个唯一的 id 字段,并且我希望该唯一 id 与文档 id 相同。

例子:

documents:       data:

eBgdTRE123       id:'eBgdTRE123'
                 name:'Jhon Doe'
                 job:'Programmer'     
Run Code Online (Sandbox Code Playgroud)

我希望我的数据库具有这种结构,现在我有两个想法来实现这一目标

1:使用云功能并有onCreate监听器,每次有新文档时抓取文档并设置id字段并在此处更新它我是如何做的

exports.addDocIdToField = 

functions.firestore.document('collectionname/{docID}').onCreate((snap,context) => {
    const id = context.params.docID;
    return admin.firestore().collection('collectionname')
        .doc(id).set({ id: snap.id }, { merge: true })
        .then(() => {
            return null;
        })
        .catch((error) => {
            return null;
        });
})
Run Code Online (Sandbox Code Playgroud)

2:使用上述方法创建文档。添加该文档后立即添加新文档获取新添加的文档并更新其id

它们都可以工作,但我的问题是我可以依靠这种操作吗?我的意思是,如果id无论如何undefined它都可能导致应用程序中的进一步错误。

或者是否还有其他方法可以实现这一目标?

node.js firebase google-cloud-functions google-cloud-firestore

4
推荐指数
1
解决办法
2982
查看次数

Xcode 未反映来自 React-Native 的最新应用程序代码

编辑:

好吧,事实证明这不是 AppStore 的问题,我从 Xcode 发布模式运行了应用程序,并且在模拟器上运行了相同的旧版本,我不知道为什么,但 Xcode 没有运行最新的 jsbundle。

现在我发现这个问题有同样的问题,并尝试遵循它,我运行了这个命令: react-native bundle --entry-file index.js --platform ios --dev false --bundle-output ios/main.jsbundle --assets-dest ios/assets并将新生成的放入main.jsbundle其中/ios/ProjectName,但当我从Xcode运行代码时,它仍然给我一个旧版本,我也尝试清理和重建并删除派生数据和再次构建,结果相同

我最近将一个应用程序上传到苹果应用程序商店,但似乎遇到了问题,这是我上传该应用程序的情况,它获得了批准,并说它已准备好出售,但当我去应用程序商店并下载该应用程序时,它只是该应用程序的先前版本,我没有看到该应用程序上所做的所有新更改...这对我来说有点奇怪,我还在新版本发布中上传了新徽标,并且该徽标已更新..版本也在应用商店列表中更新,前一个是 1.0,这个显示 1.1,并且“新增内容”部分也更新了...我还更改了这个新版本的预览和屏幕截图,这也反映在应用程序上商店列表,但只有当我下载应用程序时,我才会获得以前的版本。

我尝试去我的应用程序商店连接,然后活动,我看到我的版本有正确的上传日期和版本号...我在这里缺少什么吗?

谢谢,

xcode app-store react-native app-store-connect

3
推荐指数
1
解决办法
6005
查看次数

从给定数组生成增量值数组

如何从给定数组生成增量值数组

这个想法是创建一种菱形形状,一旦到达阵列的中间,阵列的尺寸就开始减小。换句话说,最长的数组将是包含数组中间值的数组或 (array.length/2 + 1)

如果元素不足以完成后半部分的数组,只需将其替换为“E”以指示空白,就像第二个示例一样。

example 1
var array = ['a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p']
//the longest array in length is containing 'i' which is the value at 
    array.length/2 + 1
var output = [
    ['a'],
    ['b','c'],
    ['d','e','f'],
    ['g','h','i','j'], 
    ['k','l','m'],
    ['n','o'],
    ['p']
]

example 2
var array = ['a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t']
enter code here
//the longest array in length is containing 'k' which is the value at array.length/2 + 1
var output = [
    ['a'],
    ['b','c'],
    ['d','e','f'],
    ['g','h','i','j'],
    ['k','l','m','n','o'],
    ['p','q','r','s'],
    ['t','E','E'],
    ['E','E'],
    ['E]
]
Run Code Online (Sandbox Code Playgroud)

这是我尝试过的代码: …

javascript arrays algorithm

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