Xamarin 编写混合APP趟坑记录(二)
前言
公司要开发一个app,为了便于维护和更新,而不用每次去苹果审核,采用的是混合开发方式:用webvie+webapp的方式。
因为本人不会java和objectc,公司又不想花钱招这两个岗位的人,因此我来顶上,采用xamarin+c#。
时间紧张,第一版使用xamarin自带的 webview,构建了一个简单的app,开发上传什么的,开发涉及到的东西挺多,服务端、外壳、webapp(主要开发不是我)等一大堆要处理,备案、申请证书、上线(苹果、安卓同步)啥的,反正弄了一个月才弄好。
因为xamarin里面的webview是简单的封装,苹果的也不是使用最新的内核,暴露的接口不多(可能是我不太懂的原因不知道),里面能够发挥的空间不多,比如和网页交互什么的做不到,因此决定重新做一个壳,或者找一个开源的自己修改。
以上是废话,讲了很多,反正壳是弄好了,安装的是webview,苹果的是wkwebview。
测试打包,一切ok,准备提交到appstore, 以为万事大吉,结果报
error itms-90022: "missing required icon file. the bundle does not contain an app icon for iphone / ipod touch of exactly '120x120' pixels, in .png format for ios versions >= 7.0." error itms-90032:"missing required icon file. the bundle does not contain an app icon for ipad ...
等等一大堆错误信息!重新编译,重建appicons的内容等,都不生效,网上的办法也试了很多,连macos都升级了(升级过程中反macos都弄挂了,是虚拟机),都没有解决,提示缺少的文件我明明都有,为啥提示丢失呢?contents.json文件里有,别的地方没有哪里有记录,把我整死了。
后来看别人说把文件拷贝进去受到启发,我想是不是我那些图标文件没有被使用到呢?然后我在info.plist中增加
<string>assets.xcassets/appicons.appiconset</string> <key>nsexceptiondomains</key>
然重新编译,上传成功,整整折腾了下午三小时加第二天一上午,其中包含升级mac os x的时间。开发不易,且行且珍惜,写在此处给自己留个纪念,也给后面碰到类似问题的人一些启示吧。
上一篇: AspNet mvc的一个bug