所以我一直在尝试使用MSBuild命令行可执行文件在发布模式下创建一个APK。
以下是我创建的批处理文件的内容:
ECHO Building DsdMobile解决方案......> CON cd“C:\ Ross \ DEVELOPMENT \ HANDHELD \ Android \ Dsd Mobile MaterialDesign”
“C:\ Program Files(x86)\ MSBuild \ 14.0 \ Bin \ MSBuild.exe”DsdMobile.sln / P:Configuration = Release / v:quiet / t:Clean / nologo < / p>
“C:\ Program Files(x86)\ MSBuild \ 14.0 \ Bin \ MSBuild.exe”DsdMobile.sln / P:Configuration = Release / v:quiet / t:Rebuild,PackageForAndroid / nologo
第一行我将目录更改为我的解决方案位置。 接下来,我做一个干净的
最后,我做了一个Rebuild和PackageForAndroid(我期待在我的bin发布文件夹中有一个... apk文件。从来没有创建过apk,我收到错误。
构建成功,但我收到错误:
“C:Ross \ Development \ Handheld \ Android \ Dsd Mobile MaterialDesign \ DsdMobile.sln.metaproj:错误MSB4057:目标”PackageForAndroid“在项目中不存在。[C:\ Ross \ DEVELOPMENT \ HANDHELD \ Android \ Dsd Mobile MaterialDesign \ DsdMobile.sln]
我也尝试使用“SignAndroidPackage”:t /参数,但这也失败并出现同样的错误:
“C:Ross \ Development \ Handheld \ Android \ Dsd Mobile MaterialDesign \ DsdMobile.sln.metaproj:错误MSB4057:目标”SignAndroidPackage“在项目中不存在。[C:\ Ross \ DEVELOPMENT \ HANDHELD \ Android \ Dsd Mobile MaterialDesign \ DsdMobile.sln]
我一直使用的资源来自PowerShell脚本:
答案 0 :(得分:4)
尝试构建Android csproj文件而不是解决方案文件。
答案 1 :(得分:0)
您可以构建解决方案,您需要在目标中指定项目和任务,例如:
.WithTarget("DroidAppProj:SignAndroidPackage")
以下是更多文档: 如果有,则扰流板辅助。在您的项目名称中: https://docs.microsoft.com/en-us/visualstudio/msbuild/how-to-build-specific-targets-in-solutions-by-using-msbuild-exe?view=vs-2017
答案 2 :(得分:0)
在Visual Studio 2017和2019命令行提示符下,这对我来说很好用:
RUN
如前所述,构建csproj而不是解决方案。
答案 3 :(得分:0)
您可以使用
/p:AndroidBuildApplicationPackage=true
而不是/t:SignAndroidPackage