iMessageExt 应用启动应用时出错
iMessageExt app Error starting application
我创建了我的 iMessage 扩展程序,当我尝试打开它时,出现了第一个屏幕,但它完全冻结了,并且没有任何反应。
I've put logs in the viewDidLoad of that first view and nothing appears there, after a few seconds I can already see those logs.
要使应用程序冻结状态消失,用户必须再次向左或向右滑动屏幕。
我曾尝试在网上寻找恰好相同的人,但我找不到任何东西。
想不出更多截图或部分代码添加,如果您认为我应该提供一些额外信息,请告诉我
如有任何帮助,我们将不胜感激。
谢谢。
更新:
这是我的项目结构。
这是我的 viewDidLoad
代码。
- (void)viewDidLoad
{
[super viewDidLoad];
NSLog(@"here viewDidLoad iMessage ext~~~!");
[self applyCornerRadiusToBtn];
[self registerPresentationAction];
NSDictionary *user = [self getUserInfoFromHostApp];
if (user) {
NSLog(@"Here != null user info");
//It is assumed that when you enter this point and run this log, the app should navigate to the next screen, but it does not.
[self performSegueWithIdentifier:@"goToYoutubeListIm" sender:nil];
} else {
NSLog(@"Here userInfo null");
}
}
- (NSDictionary *)getUserInfoFromHostApp
{
NSUserDefaults *myDefaults = [[NSUserDefaults alloc] initWithSuiteName:@"group.com.xxxxx"];
NSDictionary *userNameSaved = [myDefaults objectForKey:@"userInfoExt"];;
NSLog(@"userNameSaved in xxxx Ext ==> %@",userNameSaved);
NSURL *groupURL = [[NSFileManager defaultManager] containerURLForSecurityApplicationGroupIdentifier:@"group.com.xxxx"];
NSLog(@"groupURL ==> %@",groupURL);
return userNameSaved;
}
对于所有相关人员,我发现问题是准确的。
1) 我正在创建我的控制器类型 MSMessagesAppViewController
。显然应该只有一个这种类型的控制器。
2) 我在 MSMessagesAppViewController
中的 viewDidAppear
中有逻辑。出于某种奇怪的原因,这也导致了问题,我不得不在那里获取逻辑并强制用户与按钮交互以执行 didAppear
中的逻辑
我创建了我的 iMessage 扩展程序,当我尝试打开它时,出现了第一个屏幕,但它完全冻结了,并且没有任何反应。
I've put logs in the viewDidLoad of that first view and nothing appears there, after a few seconds I can already see those logs.
要使应用程序冻结状态消失,用户必须再次向左或向右滑动屏幕。
我曾尝试在网上寻找恰好相同的人,但我找不到任何东西。
想不出更多截图或部分代码添加,如果您认为我应该提供一些额外信息,请告诉我
如有任何帮助,我们将不胜感激。
谢谢。
更新:
这是我的项目结构。
这是我的 viewDidLoad
代码。
- (void)viewDidLoad
{
[super viewDidLoad];
NSLog(@"here viewDidLoad iMessage ext~~~!");
[self applyCornerRadiusToBtn];
[self registerPresentationAction];
NSDictionary *user = [self getUserInfoFromHostApp];
if (user) {
NSLog(@"Here != null user info");
//It is assumed that when you enter this point and run this log, the app should navigate to the next screen, but it does not.
[self performSegueWithIdentifier:@"goToYoutubeListIm" sender:nil];
} else {
NSLog(@"Here userInfo null");
}
}
- (NSDictionary *)getUserInfoFromHostApp
{
NSUserDefaults *myDefaults = [[NSUserDefaults alloc] initWithSuiteName:@"group.com.xxxxx"];
NSDictionary *userNameSaved = [myDefaults objectForKey:@"userInfoExt"];;
NSLog(@"userNameSaved in xxxx Ext ==> %@",userNameSaved);
NSURL *groupURL = [[NSFileManager defaultManager] containerURLForSecurityApplicationGroupIdentifier:@"group.com.xxxx"];
NSLog(@"groupURL ==> %@",groupURL);
return userNameSaved;
}
对于所有相关人员,我发现问题是准确的。
1) 我正在创建我的控制器类型 MSMessagesAppViewController
。显然应该只有一个这种类型的控制器。
2) 我在 MSMessagesAppViewController
中的 viewDidAppear
中有逻辑。出于某种奇怪的原因,这也导致了问题,我不得不在那里获取逻辑并强制用户与按钮交互以执行 didAppear