你可能没遇到过的app审核被拒

最近打包上线app被拒,信息如下:

We were unable to review your app as it crashed on launch. We have attached detailed crash logs to help troubleshoot this issue.
Next Steps
To resolve this issue, please revise your too and test it on a device to ensure it will launch without crashing.

由于本人之前也没遇到过这类的被拒经历,反复检查项目入口类的方法,测试了大概15个版本,挨个注释,再使用TestFilght 预先测试版本。最终发现问题,用testflight打开app的时候直接闪退,先让我们来分析一下入口类的方法。

  • (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions;
当应用程序启动时执行,应用程序启动入口。只在应用程序启动时执行一次。application参数用来获取应用程序的状态、变量等,值得注意的是字典参数:(NSDictionary *)launchOptions,该参数存储程序启动的原因。
  • 1.若用户直接启动,lauchOptions内无数据;

  • 2.若由其他应用程序通过openURL:启动,则UIApplicationLaunchOptionsURLKey对应的对象为启动URL(NSURL),UIApplicationLaunchOptionsSourceApplicationKey对应启动的源应用程序的bundle ID (NSString);

  • 3.若由本地通知启动,则UIApplicationLaunchOptionsLocalNotificationKey对应的是为启动应用程序的的本地通知对象(UILocalNotification);

  • 4.若由远程通知启动,则UIApplicationLaunchOptionsRemoteNotificationKey对应的是启动应用程序的的远程通知信息userInfo(NSDictionary);

  • 其他key还有UIApplicationLaunchOptionsAnnotationKey,UIApplicationLaunchOptionsLocationKey,UIApplicationLaunchOptionsNewsstandDownloadsKey。

如果要在启动时,做出一些区分,那就需要在下面的代码做处理。 比如:应用可以被某个其它应用调起(作为该应用的子应用),要实现单点登录,那就需要在启动代码的地方做出合理的验证,并跳过登录。
  • (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
    {
    NSURL *url = [options objectForKey:UIApplicationLaunchOptionsURLKey];
    if(url){
    }
    NSString *bundleId = [options objectForKey:UIApplicationLaunchOptionsSourceApplicationKey];
    if(bundleId){
    }
    UILocalNotification * localNotify = [options
    objectForKey:UIApplicationLaunchOptionsLocalNotificationKey];
    if(localNotify){
    }
    NSDictionary * userInfo = [options
    objectForKey:UIApplicationLaunchOptionsRemoteNotificationKey];
    if(userInfo){
    }
    }
最后大家应该明白为什么 会闪退了把。没错,就是因为当你用第三方打开app的时候,应用程序通过openURL:启动 didFinishLaunchingWithOptions方法。
B463C9FA-FAFD-4BBC-8CE5-292E8DCA4491.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容