An important advantage that developers have when choosing elementary OS as their platform is the ability to seamlessly integrate their application with the desktop. There are several ways in which you can make your app a native experience on elementary OS:
Creating an App Launcher. The primary method of discovering and using your app will be through an app launcher found in the Applications Menu or in the dock. This section details how to create these launchers.
MIME handling. If your application can open and save files, place entries for those file types in the application database and the document type (MIME) database. This lets the file manager and other applications automatically launch your application when they encounter files your application can handle.
Contractor. elementary OS provides Contractor as an easy way for applications to share files with each other. This will make your application more useful and extend its functionality without adding hundreds of lines of code.