Localizing

Localization 往往意味着2件事:

  • 为不同的region和语言产生不同的resource(image, sound, Nib文件) 版本, 这些resource被放在不同的文件目录下,目录以语言命名, 比如: en_US, en是英文,US是region 美国的代码。en和US是标准化的。
  • 创建不同语言的字符串表

步骤:

  1. 如下图所示,添加新的语言: 一般英文会被选中为base。
    这里写图片描述
    选中想要多语言化的资源文件。
    这里写图片描述
    做好后,xcode会在工程目录下产生对应的lproj目录:
    这里写图片描述
  2. 如果选择了图片,比如想要不同的国家显示不同的旗帜。会产生不同国家对应的图片:
    这里写图片描述
  3. 如果没有在第一步把要翻译的文件选择进去,可以手动添加。选择想要多语言化的文件,选择localization
    这里写图片描述
    以上就做好了资源文件的本地化,下面来看怎么做代码中的字符串。
  4. 打开termimal, cd到project 目录, 执行:
    这里写图片描述

  5. 如果有多个文件,加 -a 的参数

  6. 这样会在当前目录生成一个Localizable.strings的文件,所有用NSLocalizedString函数标示的字符串,都会放进去。(如果不生成这个文件,export cliff 文件的时候,也是会放入用NSLocalizedString函数标示的字符串的。只是感觉不是很直观,还是生成一下)

  7. 然后,重复第3步,添加localization
    到这里所有文件都已经本地化了,下一步,就是要送出去翻译

  8. 选择export,会export一个xliff文件
    这里写图片描述

  9. 可以用这个网站打开,看一下http://xliff.brightec.co.uk
  10. 翻译回来以后,可以import进去。

但是,工具生成的xliff文件并不是照修改顺序的。遇到特别复杂的多次翻译,还是要人来看。希望以后xcode可以改进一下。

附:
当一个bundle在找寻对应的resource文件的时候,首先找bundle的根目录,找寻bundle的名字的文件。如果没有找到,就去找设备的locale和语言对应的lproj目录。在lproj目录里面找bundle的名字的文件。

检测定位无线欺骗攻击是无线网络安全领域的重要研究方向。对于“Methods and techniques for detecting and localizing wireless spoofing attacks”(检测定位无线欺骗攻击的方法技术),常见的方法技术如下: #### 基于信号特征的检测技术 - **信号强度分析**:不同位置的无线信号强度会有一定的分布规律。欺骗攻击发出的信号可能在强度上与正常信号有差异。例如,正常设备在某个区域的信号强度处于一个合理范围,如果突然检测到异常强或弱的信号,可能是欺骗攻击。可以通过构建信号强度指纹库,将实时检测到的信号强度与指纹库进行比对,判断是否存在异常 [^1]。 ```python # 简单示例,判断信号强度是否异常 normal_signal_range = (50, 80) # 假设正常信号强度范围 detected_signal = 30 if detected_signal < normal_signal_range[0] or detected_signal > normal_signal_range[1]: print("可能存在欺骗攻击") ``` - **信号特征分析**:包括信号的频率、相位、调制方式等。欺骗攻击可能无法完全模拟正常信号的这些特征。例如,正常信号采用某种特定的调制方式,而检测到的异常信号调制方式不同,就可以怀疑是欺骗攻击 [^1]。 #### 基于位置信息的定位技术 - **三角定位法**:通过多个接收点接收到的信号信息,利用三角几何原理来确定信号源的位置。如果定位到的信号源位置与已知的合法设备位置不匹配,可能是欺骗攻击。例如,在一个无线网络中,有三个接收点 A、B、C,分别测量到信号源的距离,通过计算可以确定信号源的位置 [^1]。 - **指纹定位法**:在特定区域内采集不同位置的信号特征(如信号强度、频率等),构建指纹数据库。当检测到信号时,将其特征与指纹数据库进行比对,确定信号源的位置。如果位置异常,可能是欺骗攻击 [^1]。 #### 基于机器学习的检测技术 - **分类算法**:使用机器学习中的分类算法,如支持向量机(SVM)、决策树等,对正常信号欺骗信号进行分类。通过大量的正常异常信号样本进行训练,让模型学习到两者的特征差异,从而对新的信号进行判断 [^1]。 ```python from sklearn import svm import numpy as np # 假设训练数据 X_train = np.array([[1, 2], [2, 3], [4, 5], [5, 6]]) # 特征向量 y_train = np.array([0, 0, 1, 1]) # 标签,0 表示正常,1 表示欺骗 clf = svm.SVC() clf.fit(X_train, y_train) # 假设测试数据 X_test = np.array([[3, 4]]) prediction = clf.predict(X_test) if prediction[0] == 1: print("可能存在欺骗攻击") ``` #### 基于多传感器融合的技术 将多种传感器(如摄像头、雷达等)的数据进行融合,综合判断是否存在欺骗攻击。例如,摄像头可以观察到某个区域内是否有可疑的设备,雷达可以检测到信号的反射情况等。通过融合这些信息,可以提高检测定位的准确性 [^1]。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值