小编nwa*_*les的帖子

使用静态框架,如 Realm,通过 Cocoapods 安装 React-Native

我有一个有两个要求的本机项目。它需要与 Airbnb 的本地导航库配合使用,并且需要一个Realm数据库。我有时间让这两个图书馆一起工作。因为 Native-navigation 使用 Swift 文件,所以需要 react-native,其他原生库通过 cocoapods 安装。

Realm 不是一个对 cocoapod 友好的库,所以我一直在遵循这个基本设置,我从 airbnb 的样板文件开始ReactNativeStarter。此时项目构建并运行,但是当我引入 Realm时,我在构建项目时遇到错误,它找不到 React 头文件

这是我的步骤:

1)通过安装realmnpm install --save realm

2)挖掘/node_modules/realm/react-native/ios/并拖入文件中RealmReact.xcodeproj的样板生成ReactNativeStarter项目ReactNativeStarter.xcworkspace

在此处输入图片说明

3)然后我将以下内容添加到 Realm React 的标头搜索路径中$(SRCROOT)/../../../../ios/Pods/Headers/Public

在此处输入图片说明

我认为值得注意的是 /Pods/Headers 文件夹不包含任何内容。这可能是 cocoapods 没有正确生成React头文件的问题吗?

4)libRealmReact.a在“链接框架和库”下添加静态库

在此处输入图片说明

5)最后,我添加$(SRCROOT)/../node_modules/realm/src到 ReactNativeStarter 项目的标题搜索路径。在此处输入图片说明

问题- 此时构建项目仍会导致以下 xcode 构建错误:

/Users/some.guy/ReactNative/SaveAs/node_modules/react-native/React/Base/RCTBridge.h:12:9: 'React/RCTBridgeModule.h' 文件未找到

xcode realm cocoapods react-native react-native-navigation

5
推荐指数
0
解决办法
1221
查看次数

如何避免在Swift2中嵌套do/catch语句

我一直想这样做:

do {
    let result = try getAThing()
} catch {
   //error
}

do {
    let anotherResult = try getAnotherThing(result) //Error - result out of scope
} catch {
    //error
}
Run Code Online (Sandbox Code Playgroud)

但似乎只能做到这一点:

do {
     let result = try getAThing()
     do {
          let anotherResult = try getAnotherThing(result) 
     } catch {
          //error
     }
} catch {
     //error
}
Run Code Online (Sandbox Code Playgroud)

有没有办法result在不必嵌套do/catch块的情况下保持不可变的范围?有没有办法防止错误类似于我们如何使用guard语句作为if/else块的反转?

swift2 do-catch

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

当CLLocationManager开始监视区域时,如何确定用户是否已在区域内

我有一个应用程序,在后台有各种信标.当我初始化我的CLLocationManager实例时,我开始使用该startMonitoringForRegion方法.我处理locationManager:didEnterRegion,locationManager:didExitRegion以及locationManager:didDetermineState:ForRegion委托方法.在这些方法中,我正在开启/关闭.

这一切似乎都很有效,除非当CLLocationManager用户已经在该区域内时进行初始化.在那种情况下,直到我退出然后重新进入该区域之前都locationManager:didEnterRegion不会locationManager:DidDetermineState:ForRegion被调用.我总是觉得这至少会触发,locationManager:DidDetermineState:ForRegion但事实并非如此.

有没有办法在我第一次开火时确定用户是否最初在该区域内startMonitoringForRegion

cllocationmanager ios ibeacon

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

如何用颜色实现自适应阈值滤波

我正在寻找一种类似自适应阈值的算法,但它保持颜色.我正在尝试拍这样的图像:

原始图像

并使它看起来像这样:

处理过的图像

如果重要的话,我在ios工作.

image-processing core-image gpuimage imagefilter adaptive-threshold

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

为什么我使用框架获得不可用的声明

我正在制作一个快速的.framework,但我遇到了我认为是构建问题.所以我简化了一切以消除我的麻烦.我附上了newframework.framework项目的截图(上图)以及我对框架的示例用法(下图).我遇到的问题Whatever是当我包含newframework.framework时类不可用.我可以确认Whatever.swift确实包含在目标>> buildphases >>编译源代码中

什么可能导致这不起作用?

在此输入图像描述

编辑 - 添加App Build阶段截图

在此输入图像描述

xcode ios swift

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

如何重新发送电子邮件验证parse.com

我试图触发重新发送用户验证电子邮件.我读了一些帖子,建议只需将电子邮件地址设置为相同的值并保存用户对象 - 所以我尝试了这样:

PFUser.currentUser().email = String(PFUser.currentUser().email)
PFUser.currentUser().saveInBackgroundWithBlock {}
Run Code Online (Sandbox Code Playgroud)

这不起作用.它永远不会解雇验证邮件.有没有更好的办法?可能会发生什么.我可以在保存块中确认非零用户和成功.

ios parse-platform swift

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

swift .framework更新导致'使用未声明的类型错误'

如果我创建一个新的xcode 7项目,然后将我的whatever.framework添加到项目并导入框架,然后声明其中一个类的实例,它工作正常.

如果我删除框架并尝试重新安装,我会在我试图实例化的任何类上遇到"使用未声明的类型错误".

我已经尝试了所有基本的清理,删除派生数据并重新启动我能想到的.

xcode ios swift

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

FileManager.removeItem之前的FileManager.fileExistsAtPath?

在iOS中,确保文件在删除之前是否存在是一种很好的做法,或者只是继续尝试删除可能存在或不存在的文件并让错误在catch块中无声地失败?

我正在迭代一大堆本地文件来删除,其中大约10%可能不存在.

nsfilemanager ios

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