V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
iOS 开发实用技术导航
NSHipster 中文版
http://nshipster.cn/
cocos2d 开源 2D 游戏引擎
http://www.cocos2d-iphone.org/
CocoaPods
http://cocoapods.org/
Google Analytics for Mobile 统计解决方案
http://code.google.com/mobile/analytics/
WWDC
https://developer.apple.com/wwdc/
Design Guides and Resources
https://developer.apple.com/design/
Transcripts of WWDC sessions
http://asciiwwdc.com
Cocoa with Love
http://cocoawithlove.com/
Cocoa Dev Central
http://cocoadevcentral.com/
NSHipster
http://nshipster.com/
Style Guides
Google Objective-C Style Guide
NYTimes Objective-C Style Guide
Useful Tools and Services
Charles Web Debugging Proxy
Smore
pscl
V2EX  ›  iDev

Xcode 打包 app 内容和直接编译到手机的有区别?

  •  
  •   pscl · 2016-06-24 00:08:57 +08:00 via iPhone · 3121 次点击
    这是一个创建于 3075 天前的主题,其中的信息可能已经有所发展或是发生改变。
    发现一个问题,我在打包上传到商店的时候,顺手先 TestFlight 安装试了下,发现版本号对的,但是新加的功能却没有,我又直接连手机编译了看看,功能是有的,这是怎么回事啊?是我上传的编译姿势不对么?怎么会代码内容不一样啊,版本号都一样,按理应该什么都一样啊。有人遇到过么?谢谢。
    10 条回复    2016-06-25 11:27:35 +08:00
    sablib
        1
    sablib  
       2016-06-24 00:23:19 +08:00
    这种一般都是自己用预编译控制的吧。
    kitalphaj
        2
    kitalphaj  
       2016-06-24 08:09:27 +08:00
    直接连手机默认是 Debug 模式,打包上传必然是 Release 模式,如果你的代码有根据这个来决定功能,确实会不一样。另外如果你用了 Cocopods 的话还可能出现 Configuration 的不同。总的来说就是。。。。你的情况有可能出现::))))))
    pscl
        3
    pscl  
    OP
       2016-06-24 08:42:17 +08:00
    @kitalphaj
    @sablib 我貌似没做什么预编译控制, Cocopods 也没有控制,就是直接指明的包,然后我切换 Debug 和 Release ,代码内容都是一样的,就是当我用发布证书打包,不能直接安装,通过 pgy 或者 testflight 安装时,代码就不一样了,好奇怪啊。
    Ixizi
        4
    Ixizi  
       2016-06-24 09:22:50 +08:00
    编译到手机默认只会打包对应的架构( arm64,armv7...)。
    pscl
        5
    pscl  
    OP
       2016-06-24 09:25:14 +08:00
    @Ixizi 我那个架构选的是 No 啊,应该是那 3 个都编译,而且这个编译不会把代码弄来不一样吧,我明明做了的功能,却不在了。 o(╯□╰)o
    pscl
        6
    pscl  
    OP
       2016-06-24 11:01:07 +08:00
    问题倒是解决了,具体原因是被导航栏遮住了,但是还是有个疑问就是代码是一样的,直接编译到手机和编译上传包的代码表现不一样,不然问题也应该早就暴露了,这就奇怪了。
    hyzjshwo
        7
    hyzjshwo  
       2016-06-24 11:45:20 +08:00
    对比一下 编译 config 就知道问题了。还有 代码逻辑 混乱也会出现这样的问题,不同机子 性能不一样,一些异步处理在不同机子上可能出现快慢的问题,还有内存回收上。所以听你的意思 一定是代码逻辑或者结构混乱引起的。
    nicevar
        8
    nicevar  
       2016-06-24 20:22:01 +08:00
    检查是不是电脑时间修改过
    pscl
        9
    pscl  
    OP
       2016-06-25 10:45:07 +08:00
    @hyzjshwo 好的,谢谢,我的仔细检查下。
    @nicevar 时间也会引起这种变化啊?
    nicevar
        10
    nicevar  
       2016-06-25 11:27:35 +08:00
    @pscl 编译的时候会检查文件的时间戳的,虽然这种情况概率很少,但是也要注意一下,有时候不小心就遇到了
    上一次编译时候产生的 obj 文件比现在时间晚,编译器就直接去链接了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2760 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 33ms · UTC 11:18 · PVG 19:18 · LAX 03:18 · JFK 06:18
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.