安卓卸载通知

2024-05-02

当用户卸载应用程序时有什么方法可以发送通知。如果用户卸载该应用程序,应用程序所有者应该收到以下用户已卸载该应用程序的通知。是否可以?


应用程序本身不可能(除非有来自同一作者的其他应用程序可以检查) 但我认为有一个可用但复杂的解决方法。 应用程序可以注册推送通知(通过 GCM 或 FCM)。为此目的,服务器端部分应存储应用程序令牌。 如果一段时间后,服务器端部分发送推送并得到 NotRegistered (请参阅https://developers.google.com/cloud-messaging/http#error_codes https://developers.google.com/cloud-messaging/http#error_codes)这意味着应用程序已被卸载。

编辑: 根据罗兰的回答,可以使用本机代码中的 hacky 方式是否可以检测Android应用程序卸载? https://stackoverflow.com/questions/6209730/is-it-possible-to-detect-android-app-uninstall

该方法基于以下事实:Android 在卸载您的应用程序时所做的第一件事是删除您的数据文件。因此,您可以使用文件观察器来检测删除。您还需要用本机代码编写它。如果您用 java 编写代码,您的应用程序将在执行任何代码之前被卸载。请看这个演示:https://github.com/sevenler/Uninstall_Statics https://github.com/sevenler/Uninstall_Statics

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

安卓卸载通知 的相关文章

随机推荐

  • MySQL 主键是否已经处于某种默认顺序

    我刚刚在一个我刚刚开始使用的系统中偶然发现了几行我并不真正理解的代码 该系统有一个大表 可以保存大量具有唯一 ID 的实体 并在不再需要时将其删除 但绝不会重用它们 所以桌子看起来像这样 id info1 info2 info3 1 foo
  • 带破折号的参考命令名称

    我最近发现 Powershell 函数只是命名的脚本块 例如 function HelloWorld Write Output Hello world hw function HelloWorld hw 将执行HelloWorld方法 但是
  • Hibernate DDL表动态创建

    我有一个 spring boot 项目 我正在使用 hibernate 将我的实体映射到数据库 但是现在我有一个新的要求 我需要能够在数据库中动态创建表 而无需任何映射 到目前为止 有谁知道一些框架来帮助我处理这个问题 我想执行 SQL 或
  • 如何将触发器添加到谷歌云构建中的队列?

    构建触发器应等到同一存储库的前一个触发器完成执行 如果我两次推送到存储库 触发器会同时执行两次 我不希望这种事发生 如何让云触发器等待上一个触发器作业 提前致谢 使用像 Jenkins 这样的构建服务器 它具有 cloudbuild 所缺少
  • 如何使用 wso2 BPEL 创建和部署带有人工任务的 BPEL 流程

    我还没有找到任何有关创建的文档BPEL使用人工任务进行流程WSO2 BPEL 只有一个例子叫做Claims Approval现有的已准备好部署流程 创建该示例流程的文档也不存在 请帮帮我 发现存在类似的问题 但不幸的是该问题没有答案 任何帮
  • 使用单个 shell 脚本运行 React 和 Flask

    我构建了一个使用 ReactJS 作为前端和 Flask 作为中间件的应用程序 我可以使用以下命令序列来执行它 npm start cd Equation Solver python m flask run 执行第一个命令后 我必须打开另一
  • Android 日历视图字体大小

    我正在使用 Xamarin 构建 Android 应用程序 这是我的第一个应用程序 我有一个CalendarView我需要更改当天的字体大小和样式 我尝试了下面的代码 字体颜色改变了 但尺寸太小了 最低 API 级别为 11 目标 API
  • 如何在使用图像创建视频时添加图像变化动画

    我有一组图像 我想通过按顺序播放这些图像来创建视频 我想在图像发生变化时添加不同类型的动画 建议我一些方法或任何解决方案来通过 Cocoa 框架在 Objective C 中实现此功能 这是制作图像视频的工作代码 但请建议我们在制作视频时如
  • Visual Studio 中的监视窗口

    有没有一种方法可以指定在监视窗口中查看对象的哪些成员 而无需扩展具有所有属性的树 例如 p new Point 10 10 将显示在 Watch 的 Value 列中 X 10 Y 10 对于我自己的课程 它总是显示 MyNamespace
  • 将文件从远程服务器复制到谷歌云存储桶

    如何将文件从远程服务器复制到 Google 存储桶 例如 gcloud compute scp username server path to file gs my bucket 这个方法会报错 All sources must be lo
  • 使用 Swift PDF417 解码并生成相同的条形码

    我有以下 PDF417 条形码示例 可以使用在线工具进行解码 例如zxing https zxing org w decode jspx 结果如下 5wwwwwxwww0app5p3pewi0edpeapifxe0ixiwwdfxxi0xf
  • 从 UIImageView 获取上下文

    我可以获取上下文吗 CGContextRef 来自存在UIImageView 详细信息 我有一个指向 xib 文件的控制器链接 在IB中我添加了一个UIImageView并参考它 IBOutlet UIImageView imageView
  • 带 if 语句的可向量化 FIND 函数 MATLAB

    我有一个矩阵u 我想遍历所有行和所有列并执行以下操作 如果元素非零 我返回行索引的值 如果元素为零 则查找该元素之后的下一个非零元素的行索引 我可以使用两个带有 find 函数的 for 循环轻松完成此操作 但我需要多次执行此操作 不是因为
  • 从 createProcess 外部获取的句柄读取

    我正在尝试创建一个进程 并通过我在外部提供的句柄与其进行通信createProcess功能 stdOutH lt openFile logDir gt stdout log ReadWriteMode hSetBuffering stdOu
  • DELETE 语句与 ASP.NET 动态数据中的 REFERENCE 约束冲突

    我有两个表 Application User 和 Application User Access Application User Access 表与 Application User 表具有外键约束 当我删除 Application Us
  • 如何更改图片框(winform)的边框颜色?

    我想根据不同的事件设置图片框周围的边框颜色 样式 是否有属性或功能可以帮助我实现该目标 我一直用的是这个 要更改边框颜色 请从PaintPicturebox 控件的事件处理程序 private void pictureBox1 Paint
  • 使用 global-method-security,访问被拒绝错误将作为 HTTP 500 错误返回

    我尝试使用 Spring Security Annotations 来确保安全 而不是在 XML 中定义规则 它似乎有效 但是当我遇到访问被拒绝错误时 我收到返回的 HTTP 状态代码 500 我在 tomcat 日志文件中没有看到任何异常
  • HttpURLConnection 发送图像、音频和视频文件,参数可以是(String 或 Json String)Android

    我正在分享solution发送一个image audio or a video带有参数的文件使用HttpURL连接 参数可以是 纯字符串或 JSON Android 客户端到 PHP 后端 设想 必须上传媒体文件 带参数的音频 视频和图像
  • 使用 keras.utils.Sequence 多处理和数据库 - 何时连接?

    我正在使用 Keras 和 Tensorflow 后端训练神经网络 数据集不适合 RAM 因此 我将其存储在 Mongo 数据库中并使用子类检索批次keras utils Sequence 一切正常 如果我跑的话model fit gene
  • 安卓卸载通知

    当用户卸载应用程序时有什么方法可以发送通知 如果用户卸载该应用程序 应用程序所有者应该收到以下用户已卸载该应用程序的通知 是否可以 应用程序本身不可能 除非有来自同一作者的其他应用程序可以检查 但我认为有一个可用但复杂的解决方法 应用程序可