How to transfer data between apps using app designer

42 views (last 30 days)
Hello,
I am working on APP1 which has a parameter x, I open APP2 by a button in APP1 and change x (which I already transfer to APP2 from APP1) in APP2.
How can I update x in APP1 when I close APP2 and come back to APP1?
I tried to put in APP2CloseRequest: APP1.x = app.x but seems it doesnt work
Thanks
  3 Comments
Juan José Jiménez
Juan José Jiménez on 14 Dec 2020
Hello, I have the same question, ho did you pass X from app1 to app2? I'm looking for this answer!
Leonor Vieira Dias
Leonor Vieira Dias on 10 Feb 2021
Hello,
Could you explain how you got the data from the appA to go to the appB please?
Thanks

Sign in to comment.

Answers (2)

TADA
TADA on 16 Jun 2019
The simplest solution would be to couple the two apps. When you open app B send the object of app A to it. Then when app B updates x, it can update the property of app A.
A more robust solution would be to uncouple the two apps and add a mediator class. The mediator knows both app A and app B. It passes all the data between the two back and forth. Both apps don't need to know each other, only the mediator.
The reason I say this implementation is more robust is because tomorrow you may need app A to communicate with a third class instead of app B for some specific functionality. In that case you don't need to change app A, only the mediator class.
  4 Comments
Noah Griffiths
Noah Griffiths on 27 Jul 2021
Hi @TADA,
Wanted to thank you for this example and explanation as it promotes good coding practises. Global/properties sends shivers down my spine so when MATLAB's own documents recommends them I'm immedaitely searching for another solution. Thanks again!
TADA
TADA on 27 Jul 2021
cheers Noah,
I know what you mean, globals give me an allergic reaction

Sign in to comment.


sam0037
sam0037 on 23 Jun 2016
Hi,
You can use public properties as explained in the link below to share data between apps. And you can add a closeRequestFcn using the Callback button in the Editor tab of the APPDESIGNER window. Remember to add "delete(app)" in the closeRequestFcn or else the app wont close. I have attached a sample APP to illustrate the above. Run the SendData app which sends the data to RecvData app. Hope this helps.
  3 Comments
Wouter
Wouter on 5 Apr 2017
Ho Nhu Y Nguyen did you already achieved this? I stubmle upon your topic now namely and am also wondering how to implement this behavior. Can you maybe share your findings if you have any?
Ho Nhu Y Nguyen
Ho Nhu Y Nguyen on 25 Apr 2017
Hi Wouter, sorry I couldn't find the solution and currently not working on this.

Sign in to comment.

Categories

Find more on Develop Apps Using App Designer in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!