ios 未找到ReactNativepod规范

8zzbczxx  于 12个月前  发布在  iOS
关注(0)|答案(9)|浏览(134)

所以我试图运行一个用react-native编写的iOS应用程序项目,在克隆和npm安装后,我在iOS文件夹中尝试pod安装时遇到了问题。
这就是错误:
[!]在../node_modules/react-native-permissions中未找到ReactNativePermissions的podspec
原因是:
pod 'ReactNativePermissions',:path => '../node_modules/react-native-permissions'
我试着搜索,但找不到任何工作的解决方案,有人可以帮助我吗?
React-native版本:2.0.1 React-native-permission:版本2.0.8
这就是问题所在。我意识到的一件事是,人们通常会做一些类似“npm install library”的事情,但没有指定版本。发生的事情是,它在package.json中变成了“^version”,几年后,当我运行npm install时,我得到了较新的版本,它不兼容,所以一定要检查你的版本。

unftdfkk

unftdfkk1#

更新:
对于react-native-permissions v3.0.1^,路径更改为#{permissions_path}/<ModuleName>/Permission-<ModuleName>.podspec
对于确切的路径,请尝试(从项目根):

cd node_modules/react-native-permissions/ios/

字符串
你会得到所有可用的模块名称,cd <ModuleName>和你的'.podspec'文件应该在那里。
对我来说,问题出在路径上。我将路径改为:

pod 'Permission-Camera', :path => "#{permissions_path}/Camera/Permission-Camera.podspec"


那就成功了

bq9c1y66

bq9c1y662#

更新

文档已更新至3.0.0+
参考https://github.com/zoontek/react-native-permissions/issues/547#issuecomment-735216465

更新

我再次遇到了这个问题,我注意到yarn add react-native-permissions安装了3.0.0-beta.2版本,它没有permissions_path中的podspecs。我更新了package.json以获得最新的2+版本(当时是2.2.2)来解决。
x1c 0d1x的数据

先前

:路径应该有双引号,而不是单引号。
例如
pod 'Permission-Camera', :path => '#{permissions_path}/Camera.podspec'

pod 'Permission-Camera', :path => "#{permissions_path}/Camera.podspec"

ar5n3qh5

ar5n3qh53#

目标yourProject做:

permissions_path = '../node_modules/react-native-permissions/ios'
  pod 'Permission-Camera', :path => "#{permissions_path}/Camera/Permission-Camera.podspec"

字符串

pinkon5k

pinkon5k4#

我的问题是目标没有.podspec`
我有

pod 'Permission-Calendars', :path => "#{permissions_path}/Calendars"

字符串
而不是

pod 'Permission-Calendars', :path => "#{permissions_path}/Calendars.podspec"

6yoyoihd

6yoyoihd5#

首先将此添加到您的pod文件依赖项位置:

target 'Bverify' do
  # Pods for your project name

字符串
........

permissions_path = '../node_modules/react-native-permissions/ios'
  pod 'Permission-Camera', :path => "#{permissions_path}/Camera.podspec"
  pod 'Permission-MediaLibrary', :path => "#{permissions_path}/MediaLibrary.podspec"
  pod 'Permission-PhotoLibrary', :path => "#{permissions_path}/PhotoLibrary.podspec"


.......
您需要在安装Pod之前安装权限:
运行命令:

npm i react-native-permissions


然后在最后:
cd ios单元安装

kt06eoxx

kt06eoxx6#


您可以使用最新路径的差异,他们将pod文件移动到各自的模块中,因此需要进行以下更改

643ylb08

643ylb087#

2022年修复:

更新了React Native API库,在最新版本中解决了这个问题。所以你需要做的就是运行命令
第一个月

yarn add react-native-permissions
或者试着逃跑
yarn add react-native-permissions@latest
在写这篇文章的时候,它升级了我的版本,

"react-native-permissions": "^3.3.1"

字符串
此问题发生在3.0.0上,但已在3.0.4中解决
您还可以确认文件是否在此文件夹中:
x1c 0d1x的数据
Happy hacking!

u4vypkhs

u4vypkhs8#

我已经安装了3.6.0,并看到了Permission-AppTrackingTransparency的这个相同的错误,所以按照这个答案从podfile中删除了.podspec,它工作了:
https://github.com/zoontek/react-native-permissions/issues/360#:text:text = 6%20Jan%202021-,%40hemantsati95%20when%20you%20use%20the%203.0.0%20release%20you%20have%20to%20remove%20the%20%22.podspec%22%20extensions%20in%20your%20Podfile.,-https%3A//github.com

kiz8lqtg

kiz8lqtg9#

以下是https://www.npmjs.com/package/react-native-permissions的建议实现
对于React-天然>= 0.72
替换此

require Pod::Executable.execute_command('node', ['-p',
  'require.resolve(
    "react-native/scripts/react_native_pods.rb",
    {paths: [process.argv[1]]},
  )', __dir__]).strip

字符串
下面的代码行

def node_require(script)
  # Resolve script with node to allow for hoisting
  require Pod::Executable.execute_command('node', ['-p',
    "require.resolve(
      '#{script}',
      {paths: [process.argv[1]]},
    )", __dir__]).strip
end

node_require('react-native/scripts/react_native_pods.rb')
node_require('react-native-permissions/scripts/setup.rb')


然后添加一个setup_permissions调用,并使用所需的权限:

# …

platform :ios, min_ios_version_supported
prepare_react_native_project!

# ⬇️ uncomment wanted permissions
setup_permissions([
  # 'AppTrackingTransparency',
  # 'Bluetooth',
  # 'Calendars',
  # 'CalendarsWriteOnly',
  # 'Camera',
  # 'Contacts',
  # 'FaceID',
  # 'LocationAccuracy',
  # 'LocationAlways',
  # 'LocationWhenInUse',
  # 'MediaLibrary',
  # 'Microphone',
  # 'Motion',
  # 'Notifications',
  # 'PhotoLibrary',
  # 'PhotoLibraryAddOnly',
  # 'Reminders',
  # 'Siri',
  # 'SpeechRecognition',
  # 'StoreKit',
])

# …

相关问题