• ios程序开发杂记


    ios程序开发杂记

    一、程序构建

    与一般的程序构建无太大区别,都是源文件编译链接这一套,通常是在mac上做交叉编译,也就是利用xcode里带的ios编译工具集去生成arm架构的ios程序(或是x86的模拟器程序):

    /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.1.sdk

    二、打包

    最后编好的执行文件和其它资源会一起放在一个叫$Project.app的目录下,具体位置视xcode设置而定,一般不特别去设的话,就是xcode自动随机为每个项目选择位置了,比如

    /Users/abc/Library/Developer/Xcode/DerivedData/proj-breihqygrfzsvugfcxivrtgulkzd/Build/Products/Debug-iphonesimulator/MainGame.app

     

    三、安装

    1.模拟器。通过xcode安装调试就不说了,说一下命令行上的操作:

    模拟器的文件根目录在在:~/Library/Application Support/iPhone Simulator/5.1/

    模拟器执行文件在:/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/Applications/iPhone Simulator.app/Contents/MacOS/iPhone Simulator

    但是通常不会直接调用该程序,一般用现成的命令行启动器(ios-sim,github上可直接拖代码构建,实际上这个启动器也是调用apple提供的模拟器操作api):

    reattach-to-user-namespace ios-sim launch  /Users/abc/Library/Developer/Xcode/DerivedData/proj-breihqygrfzsvugfcxivrtgulkzd/Build/Products/Debug-iphonesimulator/MainGame.app --retina 

    其中ios-sim就是启动器,reattach-to-user-namespace是一个加载包装工具(详情见:https://github.com/ChrisJohnsen/tmux-MacOSX-pasteboard),主要用来解决tmux下运行ios-sim时屏幕io的问题,不用tmux的就不用管了

     

    2.真机。正版的真机我还不知道怎么装,破解的就简单了,将app目录打成deb包,传到真机上直接安装到相应位置就行了。

     

    四、调试。

    c层面的调试,当然是通过xcode来做最简单易用。但是很多时候,仅仅是修改了脚本文件或是一两个资源文件,用xcode调试的话每次都要打包重装,相当费劲,况且一般写脚本也不会在xcode里,用vim写完,还要切换回xcode来开启调试,很不方便。因此,最好是能直接从命令行完成打包安装,启动模拟器。基本步骤如下:

    1、如果c文件有修改,那还是回xcode里构建一次吧,这时会在临时目录生成整个app目录,比如在:/Users/abc/Library/Developer/Xcode/DerivedData/proj-breihqygrfzsvugfcxivrtgulkzd/Build/Products/Debug-iphonesimulator/MainGame.app

    2、假设修改了一些脚本或资源,那么用rsync将其从开发目录同步到上述临时目录里,一般是直接放在MainGame.app下,这也是xcode里处于Resources下条目所复制去的位置

    3、运行上述ios-sim,指定这个临时目录为参数,就会打开模拟器并运行我们的程序了,而所有stdout及NSLog输出,都会直接打到当前控制台上。可以在程序里取消stdout的行缓存,以使log及时显出:

    setbuf(stdoutNULL)

     

  • 相关阅读:
    【CSS】带箭头的二级菜单页面
    golang写入Excel并设置样式
    golang之xorm简单使用
    golang全局变量的一个坑,main中无法获取init初始化的变量
    golang influxdb2读写封装
    将本地导入的jar包添加到maven中
    电脑天才郭盛华,如今怎样了?
    黑客在云环境中寻找攻击路径
    联想 UEFI 固件漏洞影响超100万台笔记本电脑
    IDEA的热部署
  • 原文地址:https://www.cnblogs.com/rosepotato/p/3693821.html
Copyright © 2020-2023  润新知