Unity3D之iOS重写UnityAppController
  RlWeLU85QNwT 2023年11月02日 106 0

一, 目标文件: UnityAppController.mm

Unity3D之iOS重写UnityAppController_Unity

  1, 这个文件就是APP启动文件,里面有周期函数

二, UnityAppController.mm的重写 (必须以AppController为后缀)

  1, 原因: UnityAppController.mm是Unity打包每次都会生成的,如果我们直接改写UnityAppController.mm文件,下次打包依然会被覆盖。那就永远在悲剧了。。。。。。

  2,在Plugins/iOS下 建MyUnityAppController文件(h和m), 如下

Unity3D之iOS重写UnityAppController_启动项_02

2.1 准备MyUnityAppController.h 和 MyUnityAppController.m文件

//
// MyUnityAppController.h
// Unity-iPhone
//
// Created by mac on 2022/4/17.
//

#ifndef MyUnityAppController_h
#define MyUnityAppController_h

#import "UnityAppController.h"

@interface MyUnityAppController : UnityAppController

@end

#endif /* MyUnityAppController_h */
//
// MyUnityAppController.m
// Unity-iPhone
//
// Created by mac on 2022/4/17.
//

#import <Foundation/Foundation.h>
#import <UIKit/UIKit.h>
#import "MyUnityAppController.h"

@implementation MyUnityAppController



@end
IMPL_APP_CONTROLLER_SUBCLASS(MyUnityAppController);//*以MyUnityAppController为启动项

   注意使用  IMPL_APP_CONTROLLER_SUBCLASS

    三, 重写MyUnityAppController.m实现UnityAppController.mm的相关方法

          1, didFinishLaunchingWithOptions , 游戏运行起来后就调用

               适用场景: 接SDK需要注册的时候


//
// MyUnityAppController.m
// Unity-iPhone
//
// Created by mac on 2022/4/17.
//

#import <Foundation/Foundation.h>
#import "MyUnityAppController.h"

@implementation MyUnityAppController

- (BOOL)application:(UIApplication*)application didFinishLaunchingWithOptions:(NSDictionary*)launchOptions
{
[super application:application didFinishLaunchingWithOptions:launchOptions];
NSLog(@"hello by Aonaufly!");
return YES;
}
@end

IMPL_APP_CONTROLLER_SUBCLASS(MyUnityAppController);//*以MyUnityAppController为启动项





【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论