zoukankan      html  css  js  c++  java
  • DELPHI XE 加载IOS framework

    1.加载static library *.a文件

    {$O-}

    function XE4_testframe: testframe; cdecl;
    external 'libtestframe.a' name 'OBJC_CLASS_$_testframe';

    2.加载动态库

    procedure XE4_AVFoundation; cdecl;
    external '/System/Library/Frameworks/AVFoundation.framework/AVFoundation';


    procedure XE4_libz; cdecl; external '/usr/lib/libz.dylib';

    {$O+}

    3.需要在deployment中输出相应的.a文件

    4.需要在tool-option 中引入需要的framework 并update

    5.普通接口定义

    testframe = interface(NSObject)
    ['{B02FE219-DEBD-4581-A33E-5F167552BF28}']
    function testfuc(value: integer): integer; cdecl;
    function uv_InitVoiceApp: integer; cdecl;
    function uv_StartVoiceListen: boolean; cdecl;
    function delegate: pointer; cdecl;
    procedure setDelegate(delegate: pointer); cdecl;
    function busy:boolean;cdecl;
    procedure setBusy(v:boolean);cdecl;
    function uv_Speak(text:NSString):boolean;cdecl;
    function IsSpeaking:boolean;cdecl;


    end;

    testframeClass = interface(NSObjectClass)
    ['{1ADAFF51-4474-47A1-8D39-723AC6680D51}']
    end;
    TTestFrame = class( TOCGenericImport<testframeClass, testframe> )
    end;

    6.delegate定义

    IOS_VoiceDelegate = interface(IObjectiveC)
    ['{3A72F24D-9B7B-4E9D-A572-F282147526D2}']
    procedure IOS_OnResult(resulttext: NSString); cdecl;
    procedure IOS_OnVolumnChanged(volumn: integer); cdecl;
    end;

    TIOS_VoiceDelegate = class(TOCLocal, IOS_VoiceDelegate)
    private
    ftestframe: Tdpftestframe;
    public
    constructor Create(frame: Tdpftestframe);
    procedure IOS_OnResult(resulttext: NSString); cdecl;
    procedure IOS_OnVolumnChanged(volumn: integer); cdecl;
    end;

  • 相关阅读:
    2-1 Restful中HTTP协议介绍
    11.修改WSDL文档
    10.TCPIP监听器
    05.使用jdk发布webservice服务
    09.ws复杂数据类型数据传输
    2019温馨的元旦祝福语 2019元旦祝福语大全!收藏备用!
    一文详解CSS常见的五大布局
    一文详解CSS常见的五大布局
    一文详解CSS常见的五大布局
    Asp.Net Core + Docker 搭建
  • 原文地址:https://www.cnblogs.com/HuiLove/p/4428676.html
Copyright © 2011-2022 走看看