A. iOS开发中常用命令工具(xcode-select、lipo、xcrun等)
当安装多个xcode的版本,使用该工具使用指定的版本。
-p 或者 --print-path 查看当前开发者目录,也即是xcode的版本目录。print the path of the active developer directory
-s <path> 或 --switch <path> 选择xcode的版本
--install 安装
--version 查看版本
--reset 恢复默认
sudo rm -rf /Library/Developer/CommandLineTools 强制删除安装目录下的文件
是管理Fat File的工具, 可以查看cpu架构, 提取特定架构,整合和拆分库文件。
Mac OS X下二进制可执行文件的动态链接库是dylib文件。所谓dylib,就是bsd风格的动态库。基本可以认为等价于windows的dll和linux的so。mac基于bsd,所以也使用的是dylib。
otool命令介绍
MobSF
Mach-O 文件格式解析
xcodebuild :通过工程文件,生成app文件。
xcrun :通过app文件,来生成ipa文件(包含了签名的过程)。
通过app文件生成ipa文件
libtool是一个通用库支持脚本(/usr/bin/libtool),将使用动态库的复杂性隐藏在统一、可移植的接口中。
可以在不同平台上创建并调用动态库,我们可以认为libtool是gcc的一个抽象,也就是说,它包装了gcc或者其他的任何编译器,用户无需知道细节, 只要告诉libtool说我需要要编译哪些库即可,并且,它只与libtool文件打交道,例如lo、la为后缀的文件。
libtool工具的使用
库是一单独的文件,里面包含了按照特定的结构组织起来的其它的一些文件(称做此库文件的member)。原始文件的内容、模式、时间戳、属主、组等属性都保留在库文件中。
详细命令参见, 菜鸟网络-ar命令
可以用来创建、修改库,也可以从库中提出单个模块。
lipo libAFNetworking.a -thin arm64 -output lib-arm64.a 生成Arm64包
ar -t lib-arm64.a 输出包含的.o文件 和 otool -L libAFNetworking.a 一样。
ar -x lib-arm64.a 解压出包里面的.o文件
在iOS开发中,常常用来分析二进制和静态库文件。
列出 .o .a .so 中的符号信息,包括诸如符号的值,符号类型及符号名称等。所谓符号,通常指定义出的函数,全局变量等等。
iOS开发中,可以用来查看.a静态库所有打包进去的.o文件和函数接口信息,帮助我们定位崩溃信息。
例如: nm -u libAFNetworking.a 列出某个.o文件的接口信息。
二进制查看命令,将文件显示为16进制字符串表示形式。
例如: xxd libYTKNetwork.a | grep "net" 查看YTKNetwork.a文件里面包含net字符串的,帮助我们分析一些二进制文件。
DWARF文件初探——提取轻量符号表
Mac系统下lipo, ar, nm等工具的使用简介
美团 iOS 工程 zsource 命令背后的那些事儿
Linux工具参考篇
iOS 静态库冲突 两个不同的.o 文件冲突 ,静态库分离
B. select中onchange的用法
用法:onchange 事件会在域的内容改变时发生。
onchange="SomeJavaScriptCode"
onChange事件只有在值改变时才可触发,所以必须在每一次选择时(尤其第一次)保证选择的值是改变的!
onmousedown 单击一次就查询一次,所以每选择一次就查询一次,增加了数据库的负担。每次选择至少要查询两次(一次是在数据库加载数据,一次是选择选项时又触发一次,)
咧:
<select name="expireDay" id="expireDay" class="form-control"
onchange="searchChange(this.options[this.options.selectedIndex].value);">
<!-- <option value="" >---请选择---</option> -->
<option
<c:if test="${'0' == expireRemind.searchType}">
selected
</c:if>
value="0">aa</option>
<option
<c:if test="${'1' == expireRemind.searchType}">
selected
</c:if>
value="1">bb</option>
</select>
可以显示和隐藏
function searchChange(obj){
if(obj=="0"){
$('#expireDate').hide();
$('#soonExpireDay').show();
}
if(obj=='1'){
$('#soonExpireDay').hide();
$('#expireDate').show();
}
}
(2)select下拉框转苹果ios样式扩展阅读
通常JavaScript脚本是通过嵌入在HTML中来实现自身的功能的。
是一种解释性脚本语言(代码不进行预编译)。
主要用来向HTML(标准通用标记语言下的一个应用)页面添加交互行为。
可以直接嵌入HTML页面,但写成单独的js文件有利于结构和行为的分离。
跨平台特性,在绝大多数浏览器的支持下,可以在多种平台下运行(如Windows、Linux、Mac、Android、iOS等)。
Javascript脚本语言同其他语言一样,有它自身的基本数据类型,表达式和算术运算符及程序的基本程序框架。Javascript提供了四种基本的数据类型和两种特殊数据类型用来处理数据和文字。而变量提供存放信息的地方,表达式则可以完成较复杂的信息处理。
C. 如何查看苹果ios版本是否关闭
首先,打开iPhone上的浏览器,Safari浏览器或者其他下载的浏览器
如何在iPhone上查看固件验证是否关闭
打开后,在地址栏输入【ipsw.me】
向下找到【select
a
device】
点击后面的倒三角,选择设备
选择好设备后,选择select
iOSversion,可以看到iOS9.1的背景是绿色的,说明当前只能刷iOS9.1版本的固件,其他背景为红色的都无法更新
这个网站不仅可以在iPhone上打开,在电脑上也可以打开