新建target
复制原来的target
会生成一个和原来的Info.plist文件,移到同一目录下
可以改名,还要到新的target的Build Settings下修改对应的Info文件地址
跑的时候直接在上面切换target
进入Edit Scheme查看
多APP配置
可以在对应的info文件里修改新target的bundle id, version, display name等信息
设置AppIcon:
注意要将targrt都勾上
然后在General -> App Icons and Launch Screen栏填入对应的Appicon名称,还可以根据scheme配置
多语言配置display name
新建一个Strings File
如果要给多个target不同的名字,可以建多个文件然后指定对应的target
如果修改的配置比较多可以 New Group with Folder,就可以不用改文件的名字,也好看一点
启动了Localization之后选择需要的语言
Localization在project->Info加
Podfile写法
通常多target都是用一样pod
abstract_target 'abstract_pod' do #这里的abstract_pod在实际targets中不存在,是虚拟
//如果都是共用的pod也要加:
// target 'demo'
// target 'demo-dev'
// 共用的pods
...
target 'demo' do
// demo这个target特别需要的pod
...
//
end
target 'demo-dev' do
// demo-dev这个target特别需要的pod
...
end
target 'demoTests' do
inherit! :complete
# Pods for testing
end
use_flipper!({ 'Flipper-Folly' => '2.5.3', 'Flipper' => '0.87.0', 'Flipper-RSocket' => '1.3.1' })
post_install do |installer|
flipper_post_install(installer)
installer.pods_project.targets.each do |target|
target.build_configurations.each do |config|
config.build_settings['APPLICATION_EXTENSION_API_ONLY'] = 'No' // fix 'sharedApplication' is unavailable: not available on iOS (App Extension) - Use view controller based solutions where appropriate instead.
...
end
end
end
end
end
如果项目中加了ImageNotification这类服务扩展target要用父target包住,不然会报错 ‘[!] Unable to find host target(s) for xxx. Please add the host targets for the embedded targets t…’
target 'demo' do
target 'ImageNotification' do
# 确保VERSION_NUMBER使用当前安装的版本更改版本号(检查您的Podfile.lock)
pod 'Firebase/Messaging', '~> 7.7.0' # eg 6.31.0
end
end
target 'demo-dev' do
target 'devImageNotification' do
pod 'Firebase/Messaging', '~> 7.7.0' # eg 6.31.0
end
end