App Submission Issues
查看原文: http://leancodingnow.com/app-submission-issues/
I bet many iOS developers are busy submitting apps to the App Store lately after fixing issues on iOS 9. This blog post just listed the issues I came across lately when submitting apps to App Store.
Unsupported architectures. The executable for xxxx/Realm.framework contains unsupported architectures [x86_64, i386]
Unsupported architectures. The executable for xxxx/RealmSwift.framework contains unsupported architectures [x86_64, i386]
The reason is that dynamic library has i386 or x86_64 code and we cannot embed them in the app, so we need to strip out any non-arm code from the app.
After some research I found the script from this blog, just go to the tab page "Build Phases" of the app target in Xcode, add a "New Run Script Phase", copy the script and paste there, archive your app then it should work. Here is the script:
APP_PATH="${TARGET_BUILD_DIR}/${WRAPPER_NAME}"
# This script loops through the frameworks embedded in the application and
# removes unused architectures.
find "$APP_PATH" -name '*.framework' -type d | while read -r FRAMEWORK
do
FRAMEWORK_EXECUTABLE_NAME=$(defaults read "$FRAMEWORK/Info.plist" CFBundleExecutable)
FRAMEWORK_EXECUTABLE_PATH="$FRAMEWORK/$FRAMEWORK_EXECUTABLE_NAME"
echo "Executable is $FRAMEWORK_EXECUTABLE_PATH"
EXTRACTED_ARCHS=()
for ARCH in $ARCHS
do
echo "Extracting $ARCH from $FRAMEWORK_EXECUTABLE_NAME"
lipo -extract "$ARCH" "$FRAMEWORK_EXECUTABLE_PATH" -o "$FRAMEWORK_EXECUTABLE_PATH-$ARCH"
EXTRACTED_ARCHS+=("$FRAMEWORK_EXECUTABLE_PATH-$ARCH")
done
echo "Merging extracted architectures: ${ARCHS}"
lipo -o "$FRAMEWORK_EXECUTABLE_PATH-merged" -create "${EXTRACTED_ARCHS[@]}"
rm "${EXTRACTED_ARCHS[@]}"
echo "Replacing original executable with thinned version"
rm "$FRAMEWORK_EXECUTABLE_PATH"
mv "$FRAMEWORK_EXECUTABLE_PATH-merged" "$FRAMEWORK_EXECUTABLE_PATH"
done
2.I was using Xcode 7 GM to submit one iPad app, which just supports landscape orientation, then encountered this error:
Invalid Bundle. iPad Multitasking support requires these orientations...
Invalid Bundle. iPad Multitasking support requires launch story board in bundle 'com.xxx....'
iPad Multitasking support requires all the orientations but the app does not, so we need to opt out it, just add the UIRequiresFullScreen key to your Xcode project’s Info.plist file and apply the Boolean value YES.
3.I was using Xcode 6.4 to submit one app, but got the following warning message after submitting the app to App Store.
Missing Push Notification Entitlement - Your app appears to include API used to register with the Apple Push Notification service, but the app signature's entitlements do not include the "aps-environment" entitlement. If your app uses the Apple Push Notification service, make sure your App ID is enabled for Push Notification in the Provisioning Portal, and resubmit after signing your app with a Distribution provisioning profile that includes the "aps-environment" entitlement.
Actually the app does not have any push notification code. Then I tried to resubmit the app using Xcode 7 and there is no warning anymore. It might be a bug that is also mentioned on StackOverflow.
其它博文:
- Swift learning resources
- Xcode 6 模拟器路径
- Scrum Planning Card
- 番茄钟App(Pomodoro Tracker)
- WatchKit Learning Resources
- WatchKit App Submission Issues
More blog posts on http://leancodingnow.com/
欢迎关注我的微信公众号

Hope this helps,
Michael
App Submission Issues的更多相关文章
- WatchKit App Submission Issues
查看原文: http://leancodingnow.com/watchkit-app-submission-issues/ I submitted a new version of my app P ...
- iOS app submission : missing 64-bit support
- 6、二、App Components(应用程序组件):1、Intents and Intent Filters(意图和意图过滤器)
1.Intents and Intent Filters(意图和意图过滤器) 1.0.Intents and Intent Filters(意图和意图过滤器) An Intent is a messa ...
- iOS 上传App Store提示WARNING ITMS-90703错误的说明
今天上传app到appstore的时候,上传到最后一步的时候,报了一个警告: 原文如下: WARNING ITMS-90703: "Deprecated Xcode Build. Due t ...
- Compile For Cydia Submission Author: BigBoss Updated September 23, 2011
Compile For Cydia Submission Author: BigBoss Updated September 23, 2011: In order to submit your app ...
- hadoop2.7之Mapper/reducer源码分析
一切从示例程序开始: 示例程序 Hadoop2.7 提供的示例程序WordCount.java package org.apache.hadoop.examples; import java.io.I ...
- Windows 8 Tips
Precisely this article is about Windows 8.1, the title uses Windows 8 due to the fact that Windows 8 ...
- Intent官方教程(5)在manifest中给组件添加<Intent-filter>
Receiving an Implicit Intent To advertise which implicit intents your app can receive, declare one o ...
- [工作积累] android 中添加libssl和libcurl
1. libssl https://github.com/guardianproject/openssl-android 然后执行ndk-build 2.libcurl 源代码组织结构, 下面的mak ...
随机推荐
- PHP遍历数组
foreach PHP代码: <?php $url = array( '新浪' =>'www.sina.com' , '雅虎' =>'www ...
- java多态中哪些成员具备多态特性
在多态的学习中,当子类继承父类时,子类中的变量哪些具备多态特性,哪些不具备多特特性. 代码: class Father{ public static int x=10; public int y=11 ...
- LR之错误处理
1.脚本的健壮性 2.VuGen的处理机制 3.lr_continue_on_error函数 4.示例代码
- Div高度百分比
有时候设置高度百分比,没有效果. 原因是父元素没有设置高度. 父元素可以设置高度为具体的px.或是100%等百分比. 这样子元素再能根据百分比来设置高度. <style type="t ...
- [ZZ] C++ pair
Pair类型概述 pair是一种模板类型,其中包含两个数据值,两个数据的类型可以不同,基本的定义如下: pair<int, string> a; 表示a中有两个类型,第一个元素是int型的 ...
- 使用ReflectionTestUtils解决依赖注入
概述 当使用junit来测试Spring的代码时,为了减少依赖,需要给对象的依赖,设置一个mock对象,但是由于Spring可以使用@Autoware类似的注解方式,对私有的成员进行赋值,此时无法 ...
- Sql group by 分组取时间最新的一条数据
with MiPriceTopOne as (select classid,max(dataTime) dataTime,max(id) as id from MiPrice group by cla ...
- MySQL 5.5 服务器变量详解一(转)
add by zhj:在MySQL5.6中对一些参数有增删改,详见http://dev.mysql.com/doc/refman/5.6/en/server-system-variables.html ...
- 触控发布《Cocos开发者平台白皮书》
Cocos 2014 开发者大会(秋季)组委会今天正式发布了<Cocos开发者平台白皮书>,GameRes游资网得到Cocos官方授权发布该白皮书电子版. 白皮书主要内容包括对行业的趋势解 ...
- cocos2d-x3.2下获取文件夹下所有文件名的方法
这里提供一个函数获取文件夹下所有文件名的方法,直接上代码了. 原文地址:http://blog.csdn.net/qqmcy/article/details/36184733 // // Visib ...