I found a solution!!
Mendix Model SDK allows users to directly edit the MPR object tree. So we can use it to find the right navigation profile and delete it. This approach fixed my apps in both Mendix 10.24.0 and 11.6.3 and it worked perfectly. This approch should work with all supported versions of Studio Pro.
You need to setup a new Mendix SDK project. And use this script:
import { MendixPlatformClient } from "mendixplatformsdk";
const projectID = "<app-id>"
async function main() {
const client = new MendixPlatformClient();
const app = client.getApp(projectID);
const workingCopy = await app.createTemporaryWorkingCopy("main");
const model = await workingCopy.openModel();
const navigationProfiles = model.allNavigationDocuments()[0].profiles;
console.log(navigationProfiles.length);
for (let i = 0; i < navigationProfiles.length; i++) {
const element = navigationProfiles[i];
if(element.name == "HybridPhone"){
var loadedNav = await element.load()
loadedNav.delete()
}
}
console.log(navigationProfiles.length);
console.log(navigationProfiles[0].name);
await model.flushChanges();
await workingCopy.commitToRepository("main",{commitMessage: "MODEL-SDK: Removed dangling HybridPhone navigation profile."});
}
main().catch(console.error);
Just change the projectID const to the ID of your Mendix App.
This solution only works for applications that are versioned directly in the Mendix cloud. Alternatively, it should be possible to do something similar with C# Studio Pro extensions, but that's much harder. I hope the Mendix team fixes this soon.
Also with Studio Pro version 10.24.0
I wouldn't mind it, but it sometimes throws errors I have trouble to locate at first.
Very interested in a solution as well.
Have you tried removing all of the contents / settings of the duplicate profile (the one that used to be hybrid/phone) and then closing and reopening your app in studio pro? If that doesn't work, you may need to make the necessary navigation changes (to remove deprecated profile types) in 9 before migrating.
It's the deprecated hybrid phone profile with a wrong tab name. There is no way to remove it. In Studio Pro 10.24.13 there is a delete button, but it removes the primary Responsive Web Profile.
Mendix Team can you provide a solution?
When upgrading from 9.24 → 10.x, Mendix automatically converts:
If you already had a Responsive profile, the upgrade creates a duplicate.
These profiles are system navigation profiles, not manually created ones.
That is why Studio Pro does not allow deleting them.
This is expected upgrade behavior.
You cannot delete the default Responsive Web profile created by the upgrade.
Mendix always requires at least one web navigation profile.
System-generated profiles are protected.
Studio Pro will not allow deletion, but keeping it unused causes no issue.
If the duplicate was manually created and not system-generated:
But in most upgrade cases, deletion is blocked.
This does not affect runtime behavior.
It is only a navigation configuration artifact from the upgrade.
Keep a single active Responsive Web profile and ignore the duplicate.
Do not modify the system one unnecessarily.