Ios 如何使用replaceregexp从ANT脚本更新Xcode project info.plist构建版本

Ios 如何使用replaceregexp从ANT脚本更新Xcode project info.plist构建版本,ios,xcode,ant,Ios,Xcode,Ant,我正在尝试使用ANT脚本构建和打包我的iOS应用程序。我能够使用ANT脚本从终端构建应用程序并创建ipa文件。现在,需要使用Xcode info.plist文件中用户提供的值更新版本号和版本。在我的项目中,我使用以下代码更新manifest.xml文件中的android应用程序版本号 <replaceregexp file="AndroidManifest.xml" match='android:versionCode="(\d+)"' replace='android:versionCo

我正在尝试使用ANT脚本构建和打包我的iOS应用程序。我能够使用ANT脚本从终端构建应用程序并创建ipa文件。现在,需要使用Xcode info.plist文件中用户提供的值更新版本号和版本。在我的项目中,我使用以下代码更新manifest.xml文件中的android应用程序版本号

<replaceregexp
file="AndroidManifest.xml"
match='android:versionCode="(\d+)"'
replace='android:versionCode="${versionCode}"' />

<replaceregexp
file="AndroidManifest.xml"
match='android:versionName="(\d+\.\d+)\.\d+"'
replace='android:versionName="${versionName}"' />


我也在尽我最大的努力在iOS xocde中实现同样的目标。但我不能这样做,因为我是新的蚂蚁。请就此向我提出建议。提前非常感谢….

您需要编辑Info.plist。幸运的是,苹果提供了PlistBuddy(可在中找到),其中包含一系列更新plist文件的有用方法

<exec executable="/usr/libexec/PlistBuddy">
    <arg value="-c"/>
    <arg value ="Set :CFBundleVersion ${myVersion}"/>
    <arg value="${pathToXcodeProject}/Info.plist"/>
</exec>

,这在一行中完成:

<plistbuddy property="CFBundleVersion" value="${myVersion}" plistFile="${pathToXcodeProject}/Info.plist" />

您需要编辑Info.plist。幸运的是,苹果提供了PlistBuddy(可在中找到),其中包含一系列更新plist文件的有用方法

<exec executable="/usr/libexec/PlistBuddy">
    <arg value="-c"/>
    <arg value ="Set :CFBundleVersion ${myVersion}"/>
    <arg value="${pathToXcodeProject}/Info.plist"/>
</exec>

,这在一行中完成:

<plistbuddy property="CFBundleVersion" value="${myVersion}" plistFile="${pathToXcodeProject}/Info.plist" />

您需要编辑Info.plist。幸运的是,苹果提供了PlistBuddy(可在中找到),其中包含一系列更新plist文件的有用方法

<exec executable="/usr/libexec/PlistBuddy">
    <arg value="-c"/>
    <arg value ="Set :CFBundleVersion ${myVersion}"/>
    <arg value="${pathToXcodeProject}/Info.plist"/>
</exec>

,这在一行中完成:

<plistbuddy property="CFBundleVersion" value="${myVersion}" plistFile="${pathToXcodeProject}/Info.plist" />

您需要编辑Info.plist。幸运的是,苹果提供了PlistBuddy(可在中找到),其中包含一系列更新plist文件的有用方法

<exec executable="/usr/libexec/PlistBuddy">
    <arg value="-c"/>
    <arg value ="Set :CFBundleVersion ${myVersion}"/>
    <arg value="${pathToXcodeProject}/Info.plist"/>
</exec>

,这在一行中完成:

<plistbuddy property="CFBundleVersion" value="${myVersion}" plistFile="${pathToXcodeProject}/Info.plist" />


非常感谢……这就是我想要的……我在ANT构建脚本中还有一个问题。我的是一个基于cordova的iOS项目,因此我们的项目文件夹中有javascript文件。现在,从ANT脚本,我想更新一个javascript文件。该文件包含所有配置内容。我需要更新一些变量的值。你对此也有什么解决方案吗?是的,我这样做的方式是在项目之外的某个地方有一个模板属性文件,格式如下:server.url=#server#u url#,server.user=#server#u user#,等等。。。然后我把它复制到需要复制的地方,并做一些替换。。。这里有一个例子:谢谢。。我没有完全弄明白。。也许我以后会试试这个。。我刚才又发了一个问题。请你检查一下并尝试回答…非常感谢…这就是我想要的…我在ANT构建脚本中还有一个问题。我的是一个基于cordova的iOS项目,因此我们的项目文件夹中有javascript文件。现在,从ANT脚本,我想更新一个javascript文件。该文件包含所有配置内容。我需要更新一些变量的值。你对此也有什么解决方案吗?是的,我这样做的方式是在项目之外的某个地方有一个模板属性文件,格式如下:server.url=#server#u url#,server.user=#server#u user#,等等。。。然后我把它复制到需要复制的地方,并做一些替换。。。这里有一个例子:谢谢。。我没有完全弄明白。。也许我以后会试试这个。。我刚才又发了一个问题。请你检查一下并尝试回答…非常感谢…这就是我想要的…我在ANT构建脚本中还有一个问题。我的是一个基于cordova的iOS项目,因此我们的项目文件夹中有javascript文件。现在,从ANT脚本,我想更新一个javascript文件。该文件包含所有配置内容。我需要更新一些变量的值。你对此也有什么解决方案吗?是的,我这样做的方式是在项目之外的某个地方有一个模板属性文件,格式如下:server.url=#server#u url#,server.user=#server#u user#,等等。。。然后我把它复制到需要复制的地方,并做一些替换。。。这里有一个例子:谢谢。。我没有完全弄明白。。也许我以后会试试这个。。我刚才又发了一个问题。请你检查一下并尝试回答…非常感谢…这就是我想要的…我在ANT构建脚本中还有一个问题。我的是一个基于cordova的iOS项目,因此我们的项目文件夹中有javascript文件。现在,从ANT脚本,我想更新一个javascript文件。该文件包含所有配置内容。我需要更新一些变量的值。你对此也有什么解决方案吗?是的,我这样做的方式是在项目之外的某个地方有一个模板属性文件,格式如下:server.url=#server#u url#,server.user=#server#u user#,等等。。。然后我把它复制到需要复制的地方,并做一些替换。。。这里有一个例子:谢谢。。我没有完全弄明白。。也许我以后会试试这个。。我刚才又发了一个问题。请你检查一下并试着回答好吗。。