Open rolfbjarne opened 2 years ago
So no plan on this ?
So no plan on this ?
We intend to implement this, but it's not a very high priority (because there's an easy workaround), so it might take a while.
Hi, I've been trying to follow all the various threads and search results around this but I can't find a conclusive answer.
When using dotnet publish
on an iOS MAUI app in Release
configuration, I don't seem to see any *.dSYM
files being produced with .NET 7. Nothing in the obj
folder, nothing near the resulting IPA.
What is the special trick, if any, to get these produced so they can be submitted to something like App Center?
It should be in this folder: bin/Release/net7.0-ios/ios-arm64/TestApp.app.dSYM
If that doesn't work, please create a binlog (dotnet publish /bl:msbuild.binlog
) and then upload the resulting msbuild.binlog file.
Ah, thank you Rolf ❤️
I just assumed it was going to be in obj
somewhere, didn't think to look in bin
! All good.
I'm using the latest version of .NET MAUI (w/ SR1) targeting .NET 8 and use GitHub actions to publish my app which works and uploads my app to TestFlight. Now I have a situation where the app works perfectly fine on a physical device but the AppStore is rejecting it due a crash on start up and I just can't reproduce the crash.
So I started looking for .dSYM
file but I can't find one. I downloaded the artifact.zip
file from GitHub Actions and looked everywhere but can't find a .dSYM
file anywhere. Is there something I need to specify in the YAML
file or in .csproj
for a .dSYM
file to be generated?
.dSYM is a folder, not a file 😁
@softlion It's just not there though in my case. Not sure if this is due to a missing setting in my project or an issue somewhere but I don''t have a .dSYM
folder either! Here's a question I posted on SO about this but I still don't have a resolution: https://stackoverflow.com/questions/77929689/how-to-generate-dsym-file-for-net-maui-app
Here it is:
# This workflow will build a .NET project
# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-net
name: Build & Publish MyApp iOS
on:
pull_request:
branches: [ "master" ]
jobs:
build-pack-n-ship:
runs-on: macos-14
steps:
- uses: maxim-lobanov/setup-xcode@v1
with:
xcode-version: latest
- uses: actions/checkout@v3
- name: Setup .NET
uses: actions/setup-dotnet@v3
with:
dotnet-version: 8.0.x
- name: Install MAUI workload
run: dotnet workload install maui
- name: Import Code-Signing Certificates
uses: Apple-Actions/import-codesign-certs@v1
with:
p12-filepath: 'MyAppleDistributionCert.p12'
p12-password: ${{ secrets.CERTIFICATES_P12_PASSWORD }}
- name: Download Apple Provisioning Profiles
uses: Apple-Actions/download-provisioning-profiles@v1
with:
bundle-id: 'com.mycompany.myapp'
issuer-id: ${{ secrets.APPSTORE_ISSUER_ID }}
api-key-id: ${{ secrets.APPSTORE_KEY_ID }}
api-private-key: ${{ secrets.APPSTORE_PRIVATE_KEY }}
- name: Restore dependencies
run: dotnet restore
- name: Build and Publish
run: dotnet publish -c Release -f:net8.0-ios /p:ArchiveOnBuild=true /p:EnableAssemblyILStripping=false
- name: List generated files
run: ls -l
- name: Upload Build Artifact
uses: actions/upload-artifact@v3.0.0
with:
path: '**/*.ipa'
- name: Archive dSYM files
run: zip -r dSYMs.zip . -i ./MyApp/bin/Release/net8.0-ios/ios-arm64/*.app.dSYM
- name: Upload dSYM Artifact
uses: actions/upload-artifact@v3.0.0
with:
name: dSYMs
path: '**/dSYMs.zip'
- name: 'Upload app to TestFlight'
uses: apple-actions/upload-testflight-build@v1
with:
app-path: './MyApp/bin/Release/net8.0-ios/ios-arm64/publish/MyApp.ipa'
issuer-id: ${{ secrets.APPSTORE_ISSUER_ID }}
api-key-id: ${{ secrets.APPSTORE_KEY_ID }}
api-private-key: ${{ secrets.APPSTORE_PRIVATE_KEY }}
User request: copy the .dSYM we create to the publish directory during publishing.
This should be fairly easy to implement.
Ref: https://github.com/xamarin/xamarin-macios/issues/15365#issuecomment-1171629706.