如何在直接从应用程序中删除 mac electron 应用程序时清除用户数据?

Posted

技术标签:

【中文标题】如何在直接从应用程序中删除 mac electron 应用程序时清除用户数据?【英文标题】:how to clear user data while delete mac electron app from application directly? 【发布时间】:2019-12-27 08:49:57 【问题描述】:

如何在删除macos electron app的同时删除用户数据?看来我们需要写一个守护进程来监听文件夹的变化,但是怎么做呢?你有更清晰或更简单的方法来处理它吗?

包装使用电子生成器。

【问题讨论】:

你是如何打包你的应用的? 使用electron-builder打包 【参考方案1】:

我用electron-localstorage给app设置了一个flag,每次启动app时,它会检查flag是否可以从app中获取,如果不是,这是新安装并第一次打开,所以它会清除旧的用户数据。

const userDataPath = app.getPath('userData');
const storage = require('electron-localstorage');

if(platform.isMac && !isDevelopment) 
  storage.setStoragePath(path.join(__dirname,'../data.json'));
  let item = storage.getItem('opened');
  if(!item) 
    rimraf(`$userDataPath`, () => 
      console.log('clear user data path done!')
    )
  
  storage.setItem('opened', 'true');

【讨论】:

这很有用。不过,如果用户不想再次运行它,我希望有一种方法可以清除应用数据。

以上是关于如何在直接从应用程序中删除 mac electron 应用程序时清除用户数据?的主要内容,如果未能解决你的问题,请参考以下文章

mac下删除不需要的应用程序

mac中如何删除launchpad中多余的图标

如何从 xcode / mac 中删除结构插件

安装 Arc 并上传 APK 后,如何从 Mac 上的 Launchpad 中删除图标?

如何从 mac 中完全删除 NPM 包?

电脑mac怎么删除文件