OSX Finder Extension does not delete with the application - macos

I am using Finder Extension in my app, it works perfectly. But once user uninstall the app he is still able to see the overlays on Finder.
I google and find same issue exists for Dropbox as well, user has to manually unlink the Finder Extension.
Is there any better way to achieve this?

Related

How to delete a mac app that keeps opening by itself

Spotify keeps opening by itself on mac. How do you delete it, when macOS does not allow you to delete open apps, and the app reopens faster than you can trash it?
Possible solution: Find the app in finder and select Show Package Contents. Delete the content of this folder. Close the app, and it should be unable to open. You can now delete the app and try reinstalling it.
Use Activity monitor to force quit the app, then use app such as AppCleaner or simply drag and drop your Spotify app from your Applications folder into trash.

Uninstall macOS app

I am testing my macOS app, and I need to uninstall it to check some special features. For iOS apps this is very simple, I simple remove the app from the simulator and then I reinstall it. How can I do the same thing for macOS?
I've already tried to delete the app from /Users/myuser/Library/Developer/Xcode/DerivedData/Build/Products/Debug/myapp.app
But that doesn't work. If I run my project again, all previous settings and saves are kept.
How can I completely remove an app made in Xcode for macOS development?
The topic: Delete app from OSX simulator in Xcode didn't help me.
This command will delete whatever's in the UserDefaults database for your app:
defaults delete com.mywebsite.myapp
Replace com.mywebsite.myapp with the bundle ID of your application.
If you have items other than just UserDefaults settings, they'll appear in the home/Library/Containers folder in a folder named after your app bundle (assuming your app is sandboxed; otherwise check home/Library/Application Support). You'll find the plist file for your UserDefaults in here as well, although deleting that using the Finder isn't reliable, since the system sometimes caches the plists in memory, so the defaults command is still the best way to clear that.
There are many apps that allow you to thoroughly uninstall apps, for example AppCleaner. However I'd try to use the clean build folder option within Xcode first.

Mac application update from dmg

Currently I am developing a MacOSX app. it can be launch at startup. So it has launchitem installed.
However, when I need to update app, I drag app to ./Applications from dmg dialog window to replace current app with updated one.
Click the updated one, then reboot my Mac. Mac still show the previous app. It seems like I don't really replace or overwrite the old app.
Does anyone know how to clean the previous launch item and files when users drag new app from dmg to ./Applications ?
Thanks
The root cause is there is one deprecated app archive folder in user/developer/xcode/archive/, which is first triggered by launchitem. So the update app in applications is not called.

How to delete an application in sandboxed App?

I am trying to delete an application in the /Applications folder on macOS High Sierra (I don't hink the exact OS really matters).
But I simply can not figure out, how to do so from a sandboxed app. In the Mac App Store there are a couple (in fact a lot) of apps that can do that.
When an app is selected, a prompt is shown where I can type in my password.
First I tried creating a helper utility and then calling SMJobBless. But after failing I noticed that this is not possible in a sandboxed app (kinda makes sense because you could completely bypass the sandbox?).
Then I tried to write an AppleScript. This really works fine, the prompt is shown and the file is either deleted or moved to the trash.
I had to add an entitlement:
com.apple.security.temporary-exception.apple-events
I have added co.apple.finder as a child node and like I said everything works fine. Unfortunately, this entitlement is not allowed in the Mac App Store (again, this makes sense).
Now my question is...how can I move a file to the trash (I do not need to delete it myself, it would be okay if the user had to empty the trash manually).
How do all those other apps do it?
Only way I can think of would be to open an NSOpenPanel, and get the user to select the application you want to delete. Not too many MAS-approved ways to poke through the sandbox beyond that.

Download and run dmg file from unidentified uploader

I have made a dmg file for my uploader desktop application. This dmg is ported on my website from where i download the same using the Safari Browser. However, when i try to execute it from the downloads folder, the system does not execute it and throws a message stating its from an unidentified developer. Hence, in Security & Privacy settings, i opted to allow download. I cannot expect all the users to do this setting. What modifications do i need to do inorder to make the dmg to run without any such errors/warnings. I am a novice at this, kindly requesting for some help.
Thanks.
You can install an unverified app on mac by right-clicking the DMG and selecting open, this will pop up a warning but as opposed to doubled clicking, there is an option to continue.
See this article for screenshots - http://osxdaily.com/2012/07/27/app-cant-be-opened-because-it-is-from-an-unidentified-developer/
The only other option is to pay Apple to become a verified developer, and then have your app reviewed and added to the Mac app store.

Resources