Disallow running an App in an older version of ML?

Is there a way to disallow or inform the user that they cant run an installable App in an older version of ML?
I have made an App that is used across my company; and have coworkers who are trying to use the app in older versions of ML where it crashes with cryptic messages. I made the app in 19a; after installing in anything older than 18a it crashes when run. Apparently, I am using some features that were added in 18a and are not back compatible (this is fine; I am glad ML is adding new features!).
The app crashes before getting to the StartupFcn, so I cant do a version test in there.
I have no problem requiring my coworkers to use 18a or newer to use the app but I need a way to communicate that; ideally it should not install in older versions or give a meaningful error when run. I am distributing the app via an internal repository.

Answers (1)

if verLessThan('matlab','9.4') % 2018a = 9.4
disp('Version of Matlab is too old. Please open in MATLAB 2018a or later.')
else
% run your app
end

5 Comments

assert(~verLessThan('matlab','9.4'), 'Version of Matlab is too old. Please open in MATLAB 2018a or later.')
I tried this solution but the error occurs before the StartupFcn() function is called - is there an onLoadFcn function I can use?
Hi Chris,
Don't call your app directly, write a simple function around it:
function myApp()
assert
app
end
Sean,
I will give a wrapper a try, thanks.
I see you are MathWorks staff, can we expect that version requirements will get added into the App designer or the packageing process at some point?
-Chris
Hi Chris,
Version requirements are already enforced in that a user of an older version gets an error. It could just probably be a nicer error message provided like you're saying. I'm not in development so can't comment on their plans but I can say that you contacting them via tech support and complaining is the best way to motivate them to do things :)

Sign in to comment.

Categories

Find more on Get Started with MATLAB in Help Center and File Exchange

Asked:

on 9 Jan 2020

Commented:

on 9 Jan 2020

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!