6

我创建了我的 iMessage 扩展程序,当我尝试打开它时,出现第一个屏幕,但它完全冻结,并且没有任何反应。

我已将日志放在第一个视图的 viewDidLoad 中,但那里什么也没有出现,几秒钟后我已经可以看到这些日志了。

为了使应用程序冻结失去该状态,用户必须向左或向右滑动屏幕并再次向后滑动。

我尝试在网上寻找恰好是同一个人的人,但我找不到任何东西。

没有想到更多的屏幕截图或部分代码添加,如果您认为我应该提供一些额外的信息,请告诉我

任何帮助,将不胜感激。

谢谢你。

更新:

这是我的项目结构。

在此处输入图像描述

这是我的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;
}
4

1 回答 1

0

对于所有相关人员,我发现问题或问题是准确的。

1)我正在创建我的控制器类型MSMessagesAppViewController。显然,这种类型的控制器应该只有一个。

2) 我viewDidAppearMSMessagesAppViewController. 由于某些奇怪的原因,这也导致了问题,我不得不将逻辑拿出来并强制用户与按钮交互以执行 didAppear 中的逻辑

于 2017-02-21T12:42:00.130 回答