gpt4 book ai didi

ios - 在 IOS 设备中构建应用程序时 Twilio 崩溃

转载 作者:行者123 更新时间:2023-11-29 10:27:27 27 4
gpt4 key购买 nike

我已经通过 cocoa pods 添加了 Twilio SDK 和 libJingleConnection。

像 libssl.a、libcryto.a 这样的 Twilio 库与像 libwebrtc.a 这样的 Libjingle_Connection 库发生冲突,所以 twilio 崩溃了。没有集成 libjingle_connection。

Twilio 集成运行良好。!

类似下面的问题

When using Twilio iOS sdk and building Cordova app openssl crashes

但我需要在我的项目中同时保留 libjingle_connection 和 twilio。

当我在设备中构建应用程序时。我的应用程序崩溃如下..

Twilio_Crash

我的其他链接器标志是 -ObjC 和 $(inherited)

我找不到崩溃的原因..

请提出解决错误的任何解决方案..

提前致谢...!

最佳答案

嗨,

请按照步骤将 twilio 集成到应用中。

第 1 步:导入所需的框架

enter image description here

第 2 步:将 header 和库文件夹复制到您的项目中。

第 3 步:添加其他链接器标志(不仅是 -ObjC,还有 -lTwilioClient、-lcrypto、-lssl)

enter image description here

第 4 步:添加标题和库搜索路径

您复制的 header 文件夹路径:$(SRCROOT)/Headers

您复制的库文件夹的路径:$(SRCROOT)/Libraries

第五步:添加前缀头文件

#import <Availability.h>
#ifndef __IPHONE_4_0
#warning "This project uses features only available in iOS SDK 4.0 and later."
#endif
#ifdef __OBJC__
#import <UIKit/UIKit.h>
#import <Foundation/Foundation.h>
#import <CoreData/CoreData.h>
#endif

在build设置中将 Precompile Prefix header 和 .pch 文件的路径设置为 yes。

完成此步骤后,您的项目应该编译和构建,您可以运行它,但是,要使用 twilio,您需要生成功能 token 。

第 6 步:从 Twilio 的 BasicPhone 示例复制 basicPhone.h 和 basicPhone.m 文件到您的项目中。

然后在 Appdelegate 中创建一个我们可以通过 out in project 访问的全局对象。

在appdelegate.h中

@class BasicPhone;
@interface AppDelegate : UIResponder <UIApplicationDelegate>{


BasicPhone *_phone;
}
@property (strong, nonatomic)BasicPhone *phone;

在appDelegate.m文件中综合

@synthesize phone = _phone;
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
if ([UIApplication instancesRespondToSelector:@selector(registerUserNotificationSettings:)]){
/* iOS 8.0 later */
[application registerUserNotificationSettings:[UIUserNotificationSettings settingsForTypes:UIUserNotificationTypeAlert|
UIUserNotificationTypeBadge|
UIUserNotificationTypeSound
categories:nil]];
}
self.phone = [[BasicPhone alloc] init];
}

第 7 步:功能 token :

检查这个Link了解如何生成功能 token 。

第 8 步:创建一个 makeCall.php 文件,并在您的 twiML 应用程序 (Twilio acc) 中设置它用于调用电话的链接。

第 9 步:从 xcode 向客户端注册。

在你的 basicPhone.h 文件中

#define BPDefaultClientName @"abc"
#define BPCapabilityTokenKeyIncomingClient @"abc"

并且在你的 basicPhone.m 方法中你必须有函数

getCapabilityTokenWithParameters

用您的 capabilitiesToken url 更改那里的 urlString。

如果你想要传入和传出,那么你的功能 token url 应该是这样的:

https://abc.herokuapp.com/token?allowOutgoing=true&client=abc

第 10 步:在您的 viewcontroller.h 中登录到 twilio

创建basicPhone对象

@class BasicPhone;
@interface ViewController : UIViewController{

BasicPhone* _phone;
}
@property (nonatomic,retain) BasicPhone* phone;

在 ViewController.m 中

@synthesize phone=_phone;
- (void)viewDidLoad {
[super viewDidLoad];
AppDelegate* delegate = (AppDelegate*)[UIApplication sharedApplication].delegate;
BasicPhone* basicPhone = delegate.phone;

[basicPhone login];
}

调用电话:

NSDictionary* dictParams = [NSDictionary dictionaryWithObjectsAndKeys:@"xyz", @"To", nil];
NSLog(@"%@",dictParams);
AppDelegate* delegate = (AppDelegate*)[UIApplication sharedApplication].delegate;
BasicPhone* basicPhone = delegate.phone;
[basicPhone connectWithParams:dictParams];

这就是我的做法,它的工作没有任何问题。

如果有帮助,我会感觉很好。

关于ios - 在 IOS 设备中构建应用程序时 Twilio 崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31402829/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com