IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 移动开发 -> cocos creator 发布IOS版本(五)基础通用功能 -> 正文阅读

[移动开发]cocos creator 发布IOS版本(五)基础通用功能

1、iOS 设置APP的名称多语言化(安装不同语言手机上显示不同游戏名)

参考链接:

iOS 设置APP的名称(浅述APP版本国际化与本地化) - 简书

iOS支持多语言 - 简书?

第一步,在Xcode项目中添加你要支持的语言:

?假设app要支持简体中文和英文,那么你的配置应该是这样的,点击(+)添加你需要的?

第二步,创建string资源文件:(要修改app名,名字最好为:InfoPlist.strings,不然有可能无效)

第三步,选择资源文件,添加对应的国家

国际化string资源文件


由于我们前面已经配置好支持简体中文和英文,所以我们可以把string资源文件国际化为简体中文和英文两种版本:

?分别设置中英文名字
"CFBundleDisplayName" = "中文名字";
"CFBundleDisplayName" = "EnglishName";

5.编译工程
分别切换模拟器的设置中的语言至中英文模式,分别查看appiocn下面的名字的变化:

?还可以用这个方案去做游戏内的多语言,具体 操作可以看一开始的链接

?2、判断ios机型

+ (NSString *)getCurrentDeviceModel{
    struct utsname systemInfo;

    uname(&systemInfo);

    NSString *deviceModel = [NSString stringWithCString:systemInfo.machine encoding:NSASCIIStringEncoding];

    if ([deviceModel isEqualToString:@"iPhone3,1"])    return @"iPhone 4";

    if ([deviceModel isEqualToString:@"iPhone3,2"])    return @"iPhone 4";

    if ([deviceModel isEqualToString:@"iPhone3,3"])    return @"iPhone 4";

    if ([deviceModel isEqualToString:@"iPhone4,1"])    return @"iPhone 4S";

    if ([deviceModel isEqualToString:@"iPhone5,1"])    return @"iPhone 5";

    if ([deviceModel isEqualToString:@"iPhone5,2"])    return @"iPhone 5 (GSM+CDMA)";

    if ([deviceModel isEqualToString:@"iPhone5,3"])    return @"iPhone 5c (GSM)";

    if ([deviceModel isEqualToString:@"iPhone5,4"])    return @"iPhone 5c (GSM+CDMA)";

    if ([deviceModel isEqualToString:@"iPhone6,1"])    return @"iPhone 5s (GSM)";

    if ([deviceModel isEqualToString:@"iPhone6,2"])    return @"iPhone 5s (GSM+CDMA)";

    if ([deviceModel isEqualToString:@"iPhone7,1"])    return @"iPhone 6 Plus";

    if ([deviceModel isEqualToString:@"iPhone7,2"])    return @"iPhone 6";

    if ([deviceModel isEqualToString:@"iPhone8,1"])    return @"iPhone 6s";

    if ([deviceModel isEqualToString:@"iPhone8,2"])    return @"iPhone 6s Plus";

    if ([deviceModel isEqualToString:@"iPhone8,4"])    return @"iPhone SE";

    // 日行两款手机型号均为日本独占,可能使用索尼FeliCa支付方案而不是苹果支付

    if ([deviceModel isEqualToString:@"iPhone9,1"])    return @"iPhone 7";

    if ([deviceModel isEqualToString:@"iPhone9,2"])    return @"iPhone 7 Plus";

    if ([deviceModel isEqualToString:@"iPhone9,3"])    return @"iPhone 7";

    if ([deviceModel isEqualToString:@"iPhone9,4"])    return @"iPhone 7 Plus";

    if ([deviceModel isEqualToString:@"iPhone10,1"])   return @"iPhone_8";

    if ([deviceModel isEqualToString:@"iPhone10,4"])   return @"iPhone_8";

    if ([deviceModel isEqualToString:@"iPhone10,2"])   return @"iPhone_8_Plus";

    if ([deviceModel isEqualToString:@"iPhone10,5"])   return @"iPhone_8_Plus";

    if ([deviceModel isEqualToString:@"iPhone10,3"])   return @"iPhone X";

    if ([deviceModel isEqualToString:@"iPhone10,6"])   return @"iPhone X";

    if ([deviceModel isEqualToString:@"iPhone11,8"])   return @"iPhone XR";

    if ([deviceModel isEqualToString:@"iPhone11,2"])   return @"iPhone XS";

    if ([deviceModel isEqualToString:@"iPhone11,6"])   return @"iPhone XS Max";

    if ([deviceModel isEqualToString:@"iPhone11,4"])   return @"iPhone XS Max";

    if ([deviceModel isEqualToString:@"iPhone12,1"])   return @"iPhone 11";

    if ([deviceModel isEqualToString:@"iPhone12,3"])   return @"iPhone 11 Pro";

    if ([deviceModel isEqualToString:@"iPhone12,5"])   return @"iPhone 11 Pro Max";

    if ([deviceModel isEqualToString:@"iPhone12,8"])   return @"iPhone SE (2nd generation)";

    if ([deviceModel isEqualToString:@"iPod1,1"])      return @"iPod Touch 1G";

    if ([deviceModel isEqualToString:@"iPod2,1"])      return @"iPod Touch 2G";

    if ([deviceModel isEqualToString:@"iPod3,1"])      return @"iPod Touch 3G";

    if ([deviceModel isEqualToString:@"iPod4,1"])      return @"iPod Touch 4G";

    if ([deviceModel isEqualToString:@"iPod5,1"])      return @"iPod Touch (5 Gen)";

    if ([deviceModel isEqualToString:@"iPad1,1"])      return @"iPad";

    if ([deviceModel isEqualToString:@"iPad1,2"])      return @"iPad 3G";

    if ([deviceModel isEqualToString:@"iPad2,1"])      return @"iPad 2 (WiFi)";

    if ([deviceModel isEqualToString:@"iPad2,2"])      return @"iPad 2";

    if ([deviceModel isEqualToString:@"iPad2,3"])      return @"iPad 2 (CDMA)";

    if ([deviceModel isEqualToString:@"iPad2,4"])      return @"iPad 2";

    if ([deviceModel isEqualToString:@"iPad2,5"])      return @"iPad Mini (WiFi)";

    if ([deviceModel isEqualToString:@"iPad2,6"])      return @"iPad Mini";

    if ([deviceModel isEqualToString:@"iPad2,7"])      return @"iPad Mini (GSM+CDMA)";

    if ([deviceModel isEqualToString:@"iPad3,1"])      return @"iPad 3 (WiFi)";

    if ([deviceModel isEqualToString:@"iPad3,2"])      return @"iPad 3 (GSM+CDMA)";

    if ([deviceModel isEqualToString:@"iPad3,3"])      return @"iPad 3";

    if ([deviceModel isEqualToString:@"iPad3,4"])      return @"iPad 4 (WiFi)";

    if ([deviceModel isEqualToString:@"iPad3,5"])      return @"iPad 4";

    if ([deviceModel isEqualToString:@"iPad3,6"])      return @"iPad 4 (GSM+CDMA)";

    if ([deviceModel isEqualToString:@"iPad4,1"])      return @"iPad Air (WiFi)";

    if ([deviceModel isEqualToString:@"iPad4,2"])      return @"iPad Air (Cellular)";

    if ([deviceModel isEqualToString:@"iPad4,4"])      return @"iPad Mini 2 (WiFi)";

    if ([deviceModel isEqualToString:@"iPad4,5"])      return @"iPad Mini 2 (Cellular)";

    if ([deviceModel isEqualToString:@"iPad4,6"])      return @"iPad Mini 2";

    if ([deviceModel isEqualToString:@"iPad4,7"])      return @"iPad Mini 3";

    if ([deviceModel isEqualToString:@"iPad4,8"])      return @"iPad Mini 3";

    if ([deviceModel isEqualToString:@"iPad4,9"])      return @"iPad Mini 3";

    if ([deviceModel isEqualToString:@"iPad5,1"])      return @"iPad Mini 4 (WiFi)";

    if ([deviceModel isEqualToString:@"iPad5,2"])      return @"iPad Mini 4 (LTE)";

    if ([deviceModel isEqualToString:@"iPad5,3"])      return @"iPad Air 2";

    if ([deviceModel isEqualToString:@"iPad5,4"])      return @"iPad Air 2";

    if ([deviceModel isEqualToString:@"iPad6,3"])      return @"iPad Pro 9.7";

    if ([deviceModel isEqualToString:@"iPad6,4"])      return @"iPad Pro 9.7";

    if ([deviceModel isEqualToString:@"iPad6,7"])      return @"iPad Pro 12.9";

    if ([deviceModel isEqualToString:@"iPad6,8"])      return @"iPad Pro 12.9";

    

    if ([deviceModel isEqualToString:@"AppleTV2,1"])      return @"Apple TV 2";

    if ([deviceModel isEqualToString:@"AppleTV3,1"])      return @"Apple TV 3";

    if ([deviceModel isEqualToString:@"AppleTV3,2"])      return @"Apple TV 3";

    if ([deviceModel isEqualToString:@"AppleTV5,3"])      return @"Apple TV 4";

    

    if ([deviceModel isEqualToString:@"i386"])         return @"Simulator";

    if ([deviceModel isEqualToString:@"x86_64"])       return @"Simulator";

    return deviceModel;

}

?3、根据机型和ios版本使用震动

/**
 震动接口,
 value:等级
 */
+ (void)Vibrate:(NSNumber *)value{
    //NSLog(@"----调用 Vibrate----- %@", value);
    
    if (@available(iOS 10.0, *)&&[FunctionManager sharedSingleton].model==0) {
        UIImpactFeedbackGenerator *generator = [[UIImpactFeedbackGenerator alloc] initWithStyle: UIImpactFeedbackStyleLight];//选择震动幅度
        [generator prepare];
        [generator impactOccurred];
        NSLog(@"----调用 Vibrate----yishang- ");
    }else
    {
        //AudioServicesPlaySystemSound(kSystemSoundID_Vibrate);//4095
        // 普通短震,3D Touch 中 Peek 震动反馈
        //AudioServicesPlayAlertSound(1519);
        // 普通短震,3D Touch 中 Pop 震动反馈
        //AudioServicesPlaySystemSoundWithCompletion(1520, nil);
        // 连续三次短震
        //AudioServicesPlaySystemSoundWithCompletion(1521, nil);
        // 'Try Again' feedback (week boom then strong boom)
        //AudioServicesPlaySystemSoundWithCompletion(1102, nil);
        
        AudioServicesPlayAlertSound(kSystemSoundID_Vibrate);
        NSLog(@"----调用 Vibrate----yixia- ");
    }
}

/*
 https://blog.csdn.net/a18339063397/article/details/91549934
 判断手机型号小于ipone7
 */
+ (int)IsCurrentDeviceModel{

    struct utsname systemInfo;
    uname(&systemInfo);

    NSString *deviceModel = [NSString stringWithCString:systemInfo.machine encoding:NSASCIIStringEncoding];

    if ([deviceModel isEqualToString:@"iPhone3,1"])    return 1;

    if ([deviceModel isEqualToString:@"iPhone3,2"])    return 2;

    if ([deviceModel isEqualToString:@"iPhone3,3"])    return 3;

    if ([deviceModel isEqualToString:@"iPhone4,1"])    return 4;

    if ([deviceModel isEqualToString:@"iPhone5,1"])    return 5;

    if ([deviceModel isEqualToString:@"iPhone5,2"])    return 6;

    if ([deviceModel isEqualToString:@"iPhone5,3"])    return 7;

    if ([deviceModel isEqualToString:@"iPhone5,4"])    return 8;

    if ([deviceModel isEqualToString:@"iPhone6,1"])    return 9;

    if ([deviceModel isEqualToString:@"iPhone6,2"])    return 10;

    if ([deviceModel isEqualToString:@"iPhone7,1"])    return 11;

    if ([deviceModel isEqualToString:@"iPhone7,2"])    return 12;

    if ([deviceModel isEqualToString:@"iPhone8,1"])    return 13;

    if ([deviceModel isEqualToString:@"iPhone8,2"])    return 14;

    if ([deviceModel isEqualToString:@"iPhone8,4"])    return 15;

    return 0;

}

  移动开发 最新文章
Vue3装载axios和element-ui
android adb cmd
【xcode】Xcode常用快捷键与技巧
Android开发中的线程池使用
Java 和 Android 的 Base64
Android 测试文字编码格式
微信小程序支付
安卓权限记录
知乎之自动养号
【Android Jetpack】DataStore
上一篇文章      下一篇文章      查看所有文章
加:2021-09-11 18:56:29  更:2021-09-11 18:56:37 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 17:10:00-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码