为了建立一个持续集成系统,Hudson,我写了一个bash脚本来自动构建Xcode项目.此外,在调试配置,有人问我,要插入项目的SVN版本号在PROJECT-Info.plist文件的CFBundleRevision领域为$ {} BUNDLE_VERSION .R $ {} SVN_REVISION.
您可以在下面找到PROJECT-Info.plist文件的源代码:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
[...]
<key>CFBundleVersion</key>
<string>1.0</string>
[...]
</dict>
</plist>
Run Code Online (Sandbox Code Playgroud)
我在下面尝试了这个bash脚本:
sed 'N;s_^.*<key>CFBundleVersion</key>.*<string>[0-9][0-9]*\.[0-9][0-9]*</string>$_<key>CFBundleVersion</key>\
<string>'"$BUNDLE_VERSION"'\.r'"$SVN_REVISION"'</string>_' $PROJECT-Info.plist
Run Code Online (Sandbox Code Playgroud)
此脚本应使用$ {BUNDLE_VERSION} .r $ {SVN_REVISION}替换"1.0"字符串(当前仅在标准输出中).但是,替换工作没有'N'选项,包括sed进程中的下一行和一次一行.但<string>[...]</string>
PROJECT-Info.plist文件中有很多带" "字符串的行...
我认为这是我处理两行之间未知字符的方式(对于任何字符,'N'选项和".*")是错误的.
任何的想法 ?
提前致谢,抱歉我的英语水平不好.
是否可以在应用程序运行时为我的应用程序添加/删除自定义URL方案?现在,CFBundleURLSchemes属性在Info.plist中设置.
最近Xcode开始在我的Cocoa应用程序的Info.plist中添加密钥:
这些键用于什么以及它们为什么突然出现?他们需要吗?
我正在使用Xcode 3.2.6
我正在构建一个插件来使用iOS设备中的星形打印机,使用它们的SDK,一切正常,但config-file
修改info.plist文件的命令无法正常工作.在我的plugin.xml里面,我有:
<config-file target="*-Info.plist" parent="Supported external accessory protocols">
<array>
<key>item 0</key>
<string>jp.star-m.starpro</string>
</array>
</config-file>
Run Code Online (Sandbox Code Playgroud)
有了这个我应该得到一个Supported external accessory protocols
数组,其中包含一个名为item 0
,类型String
和值的项目,jp.star-m.starpro
但我得到一个包含两个项目的数组,就好像我会做的那样:
<array>
<key>item 0</key>
<string>item 0</string>
<key>item 1</key>
<string>jp.star-m.starpro</string>
</array>
Run Code Online (Sandbox Code Playgroud)
相关问题:
我config-file
通过阅读这些问题来实现.
我在iOS反应本机应用程序中处理oauth请求.我想添加一个自定义回调网址,以便我可以返回到应用程序.据说我通过修改info.plist文件来做到这一点,除非它无处可寻.我的项目文件夹在任何地方都不包含此文件,我不完全确定npm是否在运行时生成它.
这个档案到底在哪里?
对于上下文,我不使用Xcode.我只是使用sublime来编辑运行终端的文件info.plist
.
编辑:我也在使用Expo在手机上查看此类应用程序.
我的应用程序中有一个扩展程序,允许用户选择其“照片/图片”应用程序中的图片或视频,以发布在我的应用程序中。
通过执行以下操作,我将图片数量限制为20个,将视频数量限制为1个:
但是,我希望我的用户选择多张图片或一个视频,而这种配置是不可能的。
我已经阅读了这篇文章:NSExtension分享扩展限制照片计数
他们解释说我可以执行自定义验证规则,但是我不知道如何编写它。还有其他激活参数吗?有人可以帮助编写规则吗?
提前致谢!
我已成功将我的应用上传到应用商店。
App Store给我发送了这样的电子邮件:
App Store连接
亲爱的开发人员,
我们发现您的应用“ Kupona Online” 1.0.2(1.2)最近交付时出现一个或多个问题。请更正以下问题,然后重新上传。
ITMS-90683:Info.plist中缺少目的字符串-您的应用程序代码引用了一个或多个访问敏感用户数据的API。应用程序的Info.plist文件应包含一个NSCameraUsageDescription密钥,该密钥具有面向用户的目的字符串,可以清晰,完整地说明您的应用程序为何需要数据。从2019年春季开始,所有提交给App Store的访问用户数据的应用都必须包含用途字符串。如果您使用的是外部库或SDK,则它们可能会引用需要用途字符串的API。尽管您的应用可能未使用这些API,但仍然需要一个目的字符串。您可以与库或SDK的开发人员联系,并要求他们发布不包含API的代码版本。了解更多信息(https://developer.apple。)。
最好的祝福,
App Store团队
要解决此错误,我将Xcode 10.2.1中的Info.plist放入这样:
但什么也没发生。应用商店始终向我发送此错误。
如何解决此错误?
我刚刚完成我的申请。它在我测试过的所有设备上运行良好。也成功存档了。然而,当我尝试在 Xcode 管理器中验证它时,我遇到了以下错误:
- 无法验证您的应用程序:该包不包含 info.plist
我检查了我的项目文件,确实看到了一个 info.plist 文件。
在10.10/Xcode 6上始终没有问题的现有项目中,我现在收到10.11/Xcode 7的错误:
无法在Info.plist CFBundleSupportedPlatforms或Mach-O LC_VERSION_MIN中找到myBinary的平台系列
我的项目中有3个预先编译的二进制文件.它们有自己的权利文件,并且它们已经过编码,但它们没有自己的Info.plist.我尝试将CFBundleSupportedPlatforms添加到主Info.plist中,其值为MacOSX,但它没有解决问题.有任何想法吗?
我正在开发一个自己的AppStore网站,该网站为公司托管各种企业应用程序.到目前为止,一切都有效,除了在Apple设备上下载应用程序的建议方式.
问题是,我没有归档与从官方Apple AppStore安装的应用程序相同的效果.在安装应用程序之前,我没有在主屏幕上看到应用程序的图标,并且在应用程序下载时我看不到任何进度,只有在应用程序安装完成后才会看到.下载和安装应用程序本身的工作原理.
当选择将应用程序下载到他/她的iPhone时,会重定向到itms链接,如下所示:
itms-services://?action=download-manifest&url=https://example.org/appdistribution/iOS/myApp/meta.plist
Run Code Online (Sandbox Code Playgroud)
我的meta.plist文件如下所示:
<plist version="1.0">
<dict>
<key>items</key>
<array>
<dict>
<key>assets</key>
<array>
<dict>
<key>kind</key>
<string>software-package</string>
<key>url</key>
<string>https://example.org/appdistribution/iOS/myApp/app.ipa</string>
</dict>
<dict>
<key>kind</key>
<string>display-image</string>
<key>needs-shine</key>
<true/>
<key>url</key>
<string>https://example.org/appdistribution/iOS/myApp/icon.png</string>
</dict>
</array>
<key>metadata</key>
<dict>
<key>bundle-identifier</key>
<string>com.sample-company.myApp</string>
<key>bundle-version</key>
<string>3.0.0</string>
<key>kind</key>
<string>software</string>
<key>title</key>
<string>MyApp</string>
</dict>
</dict>
</array>
</dict>
</plist>
Run Code Online (Sandbox Code Playgroud)
这是应用程序下载时的外观:
这是应用程序安装时的样子:
安装完成后,会出现图标.
我尝试了几种图像分辨率,如57x57,72x72,100x100和256x256.我在iPhone和iPad上测试过它.我怀疑下载过程中缺少的进度是由于图像无法加载而导致的后续错误.
真正奇怪的是,我可以发誓以前曾经工作过.这看起来很琐碎,但我不确定这是由什么引起的.有没有好的例子可行?
info.plist ×10
ios ×6
xcode ×4
bash ×1
callbackurl ×1
cocoa ×1
cordova ×1
edit ×1
expo ×1
ipa ×1
macos ×1
objective-c ×1
osx-yosemite ×1
plist ×1
react-native ×1
sdk ×1
swift ×1
xcode6 ×1
xml ×1