SplitViewController应用程序中的附件支持

时间:2014-02-04 20:44:29

标签: ios objective-c view eaaccessory

我正在创建一个使用iOS串行电缆适配器的应用程序。该应用程序的基本设计是具有详细视图控制器的拆分视图控制器,我可以从中启动通过附件发送信息的会话(在单独的视图中)。我将应用程序“工作”,因为我设置了从会话视图控制器控制附件接口(在SDK中提供)的委托,并且它在第一次运行时工作。唯一的问题是,如果我尝试第二次运行会话(通过再次从详细视图控制器启动或在拆分视图中的项目之间切换),则由于预先存在的连接(即先前建立的连接)而失败。这是下面的控制台日志:

ERROR - opening session failed
ERROR - /SourceCache/ExternalAccessory/ExternalAccessory-242/EASession.m:-[EASession dealloc] - 139 unable to close session for _accessory=0x14d59250 and sessionID=65536
Cable Not Connected

如果它也有帮助,这里是会话视图控制器的.h和.m文件中的一些精简代码:

·H

@interface SessionViewController : UIViewController <RscMgrDelegate> {
RscMgr *rscMgr;
CableConnectState cableState;
}

@property (strong, nonatomic) IBOutlet UIBarButtonItem *cableStatus;
- (void) sendStringToSerial: (NSTimer *) timer;
@end

的.m

@implementation SessionViewController
@synthesize cableStatus;
- (void)viewDidLoad
{
    [super viewDidLoad];
// Do any additional setup after loading the view.

    // Serial Setup
    rscMgr = [[RscMgr alloc] init];
    [rscMgr setDelegate:self];

    //checks cableConnectState and adjusts the outlet cableStatus accordingly
}

- (void) sendStringToSerial: (NSTimer *) timer {
    [rscMgr writeString:someString];
    }
@end

所以问题:结构是否是我最好的方法,如果是,我该如何解决会话问题?如果没有,有什么建议从这里去?谢谢!

0 个答案:

没有答案