升级到Xcode 6 beta 7(现在仍然使用Xcode 6 GM)后,我无法链接我的Swift应用程序.我收到的错误如下:
架构armv7的未定义符号:"_swift_stdlib_compareNSStringDeterministicUnicodeCollation",引自:
...
ld:找不到架构armv7 clang的符号:错误:链接器命令失败,退出代码为1(使用-v查看调用)
我已经看到其他SO帖子建议删除Derived Data文件夹和/或使用Clean Build Folder选项来解决此错误,但在我的情况下,该解决方案根本没有帮助.关于我的代码或我正在使用的CocoaPods没有任何改变,因为Xcode 6 beta 5是它最后一次工作.
有任何想法吗?
编辑:
错误日志的完整发布:
对于架构arm64未定义的符号: "_swift_stdlib_compareNSStringDeterministicUnicodeCollation",从引用: TFC12MyProject21BarcodeViewController13captureOutputfS0_FTGSQCSo15AVCaptureOutput_24didOutputMetadataObjectsGSQGSaPSs9AnyObject___14fromConnectionGSQCSo19AVCaptureConnection__T_在BarcodeViewController.o "__TFSs21_arrayConditionalCastU___FGSaQ__GSqGSaQ0_ ",从引用: TFC12MyProject27SessionsTableViewController17viewWillDisappearfS0_FSbT_在SessionsTableViewController.o "__TFSs15_arrayForceCastU___FGSaQ__GSaQ0 ",从引用:在SessionsTableViewController在RestApi.o __TFC12MyProject28AttendeesTableViewControllerg24fetchedResultsControllerCSo26NSFetchedResultsController __TFC12MyProject7RestApi12tokenMappingfS0_FT_CSo15RKEntityMapping在AttendeesTableViewController.o __TFC12MyProject27SessionsTableViewControllerg24fetchedResultsControllerCSo26NSFetchedResultsController BarcodeViewCont中的.o __TFC12MyProject21BarcodeViewController13startScanningfS0_FT_Sb roller.o "__TFSs26_forceBridgeFromObjectiveCU__FTPSs9AnyObject_MQ__Q_",从引用:在BarcodeViewController.o ... LD在RestApi.o __TFC12MyProject16BluetoothManager17_startAdvertisingfS0_FT_T_ __TFC12MyProject7RestApi12resetRestKitfS0_FT_T_在BluetoothManager.o __TFC12MyProject19LoginViewController32registerForKeyboardNotificationsfS0_FT_T_在LoginViewController.o __TFC12MyProject19LoginViewController35deregisterFromKeyboardNotificationsfS0_FT_T_在LoginViewController.o __TFC12MyProject19LoginViewController16callProcessLoginfS0_FT_T_在LoginViewController.o __TFC12MyProject21CheckinViewController16enableBeaconModefS0_FT_T_在CheckinViewController.o __TFC12MyProject21BarcodeViewController13startScanningfS0_FT_Sb:未找到架构arm64 clang的符号:错误:链接器命令失败,退出代码为1(使用-v查看调用)
Core Data模型中实体模型的类名必须在其前面加上应用程序名称.因此,对于名为User的实体,模型编辑器中的类名必须是MyAppName.User.这工作正常,直到我向我的项目添加第二个目标.
新项目期望实体类名称为SecondAppTargetName.User.我们如何使用相同的核心数据模型支持两个目标?我尝试使用$ {PRODUCT_NAME} .User,而不是期望它能够正常工作.它不起作用.
有关如何在目标之间共享一个核心数据模型以及满足Swift项目的需求以使PRODUCT_NAME在模型编辑器中加入类的任何想法?
编辑:从Apple文档中可以看出,在模型实体检查器中将模块名称作为类名添加前缀是首选行为.如果是这样,这似乎是一个巨大的漏洞,因为它排除了使用相同数据模型的多个目标.我还没有找到解决办法.SO上的一些帖子表明在托管对象的Swift类定义前面使用@objc(ClassName)可以解决这个问题,但我还没有能够验证.
我在尝试测试某个 CustomEvent 是否已在类中调度时收到误报。我正在用来jest.spyOn测试通过调用传递的特定 CustomEvent dispatchEvent。这是调度自定义事件的函数:
someFunction() {
this.dispatchEvent(
new CustomEvent('myEvent', {
bubbles: true,
composed: true,
detail: { someProperty: this.localProperty },
})
);
}
Run Code Online (Sandbox Code Playgroud)
测试尝试以这种方式验证预期事件:
let container;
beforeEach(() => {
container = new SomeClass();
});
it('dispatches correct CustomEvent when someFunction is called', () => {
const dispatchEventSpy = jest.spyOn(container, 'dispatchEvent');
container.localProperty = '123';
const customEvent = new CustomEvent('myEvent', {
bubbles: true,
composed: true,
detail: { someProperty: 'wrong value' },
});
container.someFunction();
// TODO: I expect the below to …Run Code Online (Sandbox Code Playgroud) 我正在使用react-native-firebase与我们的Firebase帐户一起使用身份验证,防火墙和存储.尝试将照片上传到存储失败,出现未知错误.这是尝试的代码:
_pickImage = async () => {
await this.getCameraRollPermission()
let result = await ImagePicker.launchImageLibraryAsync({
allowsEditing: true,
aspect: [4, 3],
});
console.log(result);
if (!result.cancelled) {
// this.setState({ photoURL: result.uri });
this._handlePhotoChoice(result)
}
};
_handlePhotoChoice = async pickerResult => {
let userId = this.state.userId
firebase
.storage()
.ref('photos/profile_' + userId + '.jpg')
.putFile(pickerResult.uri)
.then(uploadedFile => {
console.log("Firebase profile photo uploaded successfully")
})
.catch(error => {
console.log("Firebase profile upload failed: " + error)
})
}
Run Code Online (Sandbox Code Playgroud)
在iOS模拟器中测试并使用调试器来检测错误我刚刚收到此错误:
"Error: An unknown error has occurred. …Run Code Online (Sandbox Code Playgroud) ios firebase react-native firebase-storage react-native-firebase
我有一个传统的swing应用程序,我需要添加触摸手势,特别是捏缩放,触摸和拖动.
我尝试了JDK 8的SwingNode,我可以在那里运行swing应用程序,但是显示性能降低了50%以上,这是行不通的.MT4J中的SwingTextureRenderer具有相同的问题,甚至没有尝试将触摸事件重新发送为鼠标事件.
我想到了一个玻璃窗格方法,在顶部使用JavaFX层并捕获触摸事件并尝试将它们作为鼠标事件发送到下面的Swing应用程序.
有没有人有替代方法?目标平台是Windows 8.
一旦Stackoverflow打开它,Bounty即将到来.我很快就需要这个.
编辑:
这是我尝试使用SwingNode(鼠标redispatch不起作用).SwingNode的东西可能会分散对最佳解决方案的注意力,所以如果你有更好的想法来触摸它,请忽略它:
@Override
public void start(Stage stage) {
final SwingNode swingNode = new SwingNode();
createAndSetSwingContent(swingNode);
StackPane pane = new StackPane();
pane.getChildren().add(swingNode);
stage.setScene(new Scene(pane, 640, 480));
stage.show();
}
private void createAndSetSwingContent(final SwingNode swingNode) {
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
UILib.setPlatformLookAndFeel();
// create GraphViewTouch
String datafile = null;
String label = "label";
final JPanel frame = GraphView.demoFrameless(datafile, label);
swingNode.setContent(frame);
swingNode.setOnZoom(new EventHandler<ZoomEvent>() {
@Override public void handle(ZoomEvent event) {
MouseWheelEvent me = new …Run Code Online (Sandbox Code Playgroud) 我在PhoneGap应用程序中遇到了缩放问题.我的问题与这个问题非常相似.我想在我的应用程序中允许用户缩放,因为它应该是所有UIWebView都可以工作.我在我的本地html文件和PhoneGap在身份验证后打开的远程站点上放置了以下元视口标记:
<meta name="viewport" content="width=device-width; user-scalable=yes; initial-scale=1; maximum-scale=5; minimum-scale=1" />
Run Code Online (Sandbox Code Playgroud)
我还编辑了PhoneGap.plist并将EnableViewportScale设置为YES.这些设置都没有任何区别.在PhoneGap中运行时,我无法缩放页面.我们的用户希望在应用中进行扩展,因为他们已经习惯在浏览器中运行它.该应用程序显示图形文件,PDFS等,并需要允许缩放.
我在本地登录页面上使用jQuery-Mobile,但是一旦定向到托管应用程序就只有jquery和varios
关于为什么PhoneGap不允许我的应用程序使用标准的缩放和缩放手势进行缩放的任何想法?
编辑:好的,奇怪的行为更新.现在缩放工作,我没有改变任何东西,除了为应用程序的一部分添加ChildBrowser功能.现在应用程序可以扩展.我怀疑ChildBrowser与它有什么关系,因为我可以在不使用ChildBrowser插件的情况下进行扩展.到底是怎么回事?我仍然想要答案,以便我知道它为什么会起作用,因为如果我不知道是什么让这开始起作用的话,我很可能在未来的更新中再次失去扩展.
我已经成功地在一个新的基于Swift的应用程序(目前是XCode 6 beta 3)中设置了一个RestKit到CoreData的映射实现.我知道导入映射正在使用我的RestKit JSON调用,因为我可以检查sqlite数据库并查看我的数据.但是,我无法在NSFetchRequest中将数据从数据存储中取出.我究竟做错了什么?
我将保留所有RestKit设置和拆卸,因为它非常标准,似乎工作得很好.所以这是我的AppDelegate查询代码似乎不起作用:
var currentUser: User? {
if !_currentUser {
var error: NSError? = nil
let request = NSFetchRequest(entityName: "User")
let recordCount = self.managedObjectContext.countForFetchRequest(request, error:&error)
NSLog("user records found: \(recordCount)")
var result = self.managedObjectContext.executeFetchRequest(request, error:&error)
for resultItem : AnyObject in result {
_currentUser = resultItem as? User
if _currentUser {
NSLog("Fetched User for \(_currentUser!.firstname) \(_currentUser!.lastname)")
}
}
}
return _currentUser;
}
Run Code Online (Sandbox Code Playgroud)
self.managedObjectContext从我的AppDelegate引用它来从RestKit shareObject获取上下文:
var managedObjectContext: NSManagedObjectContext {
return RKObjectManager.sharedManager().managedObjectStore.mainQueueManagedObjectContext
}
Run Code Online (Sandbox Code Playgroud)
似乎提取请求成功,因为for/in循环中出现断点.但是,当我检查resultItem或_currentUser对象时,它们显示为空,并且"if _currentUser"NSLog永远不会触发.
有任何想法吗?我是否对在Swift中恢复数据做出了错误的假设?
编辑2:
问题源于我尝试将resultItem置于Optional中.如果声明_currentUser没有可选项并删除as?可选的强制转换查询返回一个合适的User对象:
for resultItem : …Run Code Online (Sandbox Code Playgroud)