EObjectiveC with message 'ObjectiveC class Captuvo could not be found' Delphi Seattle iOS Simulator
EObjectiveC with message 'ObjectiveC class Captuvo could not be found' Delphi Seattle iOS Simulator
我正在尝试实现与 Captuvo SDK (https://www.honeywellaidc.com/HoneywelliOS/developer-resources.html) 的集成,但是出现以下错误:
项目 dyld_sim 引发异常 class EObjectiveC 消息 'ObjectiveC class Captuvo could not be found'.
这是代码:
unit untCaptuvoSdk;
interface
uses
SysUtils, Types, Classes, Math,
System.TypInfo, // PTypeInfo
MacApi.ObjectiveC, // TOCGenericImport
iOSApi.CocoaTypes, // NSObject, NSObjectClass
iOSApi.Foundation, // NSString
iOSApi.CoreGraphics, // CGRect
iOSApi.UIKit, // UIView
iOSApi.QuartzCore, // {$linkframework QuartzCore}
iOSApi.CoreMedia, // {$linkframework CoreMedia}
iOSApi.CoreVideo, // {$linkframework CoreVideo}
iOSApi.AVFoundation, // {$linkframework AVFoundation}
MacApi.ObjCRuntime;
type
Captuvo = interface(NSObject)
['{5323D4CD-59A0-4515-B581-CCFB8CF0B1C1}']
end;
CaptuvoClass = interface(NSObjectClass)
['{18864224-BFAF-4553-A44E-964C6639EEC2}']
function sharedCaptuvoDevice: Captuvo;
end;
TCaptuvoClass = class(TOCGenericImport<CaptuvoClass, Captuvo>)
end;
{$O-}
procedure libCaptuvoSDK; cdecl;
external 'libCaptuvoSDK.a' name 'OBJC_CLASS_$_Captuvo';
{$O+}
implementation
end.
错误发生在这里:
procedure TfrmPrincipal.btnTesteClick(Sender: TObject);
var
obj: Captuvo;
begin
obj := TCaptuvoClass.Create;
end;
我 运行 在 iOS 模拟器上 Delphi 西雅图,libCaptuvoSDK.a 文件在 untCaptuvoSdk.pas[=16= 的同一目录中]
有人可以帮助我吗?
解决方法在这里:http://blog.naver.com/simonsayz/120190032530,iOS模拟器无法使用静态库。
您应该使用 libCaptuvoSDK_Emulator.a 进入 iOS 模拟器构建来尝试。
但是我其实用libCaptuvoSDK.a可以在iOS模拟器中搭建成功。
我正在尝试实现与 Captuvo SDK (https://www.honeywellaidc.com/HoneywelliOS/developer-resources.html) 的集成,但是出现以下错误:
项目 dyld_sim 引发异常 class EObjectiveC 消息 'ObjectiveC class Captuvo could not be found'.
这是代码:
unit untCaptuvoSdk;
interface
uses
SysUtils, Types, Classes, Math,
System.TypInfo, // PTypeInfo
MacApi.ObjectiveC, // TOCGenericImport
iOSApi.CocoaTypes, // NSObject, NSObjectClass
iOSApi.Foundation, // NSString
iOSApi.CoreGraphics, // CGRect
iOSApi.UIKit, // UIView
iOSApi.QuartzCore, // {$linkframework QuartzCore}
iOSApi.CoreMedia, // {$linkframework CoreMedia}
iOSApi.CoreVideo, // {$linkframework CoreVideo}
iOSApi.AVFoundation, // {$linkframework AVFoundation}
MacApi.ObjCRuntime;
type
Captuvo = interface(NSObject)
['{5323D4CD-59A0-4515-B581-CCFB8CF0B1C1}']
end;
CaptuvoClass = interface(NSObjectClass)
['{18864224-BFAF-4553-A44E-964C6639EEC2}']
function sharedCaptuvoDevice: Captuvo;
end;
TCaptuvoClass = class(TOCGenericImport<CaptuvoClass, Captuvo>)
end;
{$O-}
procedure libCaptuvoSDK; cdecl;
external 'libCaptuvoSDK.a' name 'OBJC_CLASS_$_Captuvo';
{$O+}
implementation
end.
错误发生在这里:
procedure TfrmPrincipal.btnTesteClick(Sender: TObject);
var
obj: Captuvo;
begin
obj := TCaptuvoClass.Create;
end;
我 运行 在 iOS 模拟器上 Delphi 西雅图,libCaptuvoSDK.a 文件在 untCaptuvoSdk.pas[=16= 的同一目录中]
有人可以帮助我吗?
解决方法在这里:http://blog.naver.com/simonsayz/120190032530,iOS模拟器无法使用静态库。
您应该使用 libCaptuvoSDK_Emulator.a 进入 iOS 模拟器构建来尝试。
但是我其实用libCaptuvoSDK.a可以在iOS模拟器中搭建成功。