当前位置: 首页 > 知识库问答 >
问题:

Android应用程序更新广播

汪德寿
2023-03-14

所以,我在做一些需要我知道设备上的另一个应用程序何时更新的事情。所以我的问题很简单,让我们说YouTube或Spotify在应用程序更新时发送广播,如果是这样,我需要用我的广播接收器捕捉什么。

共有3个答案

长孙绍辉
2023-03-14

ACTION\u PACKAGE\u REPLACED是根据文档更新应用程序时触发的操作:

已安装应用程序包的新版本,取代先前安装的现有版本。数据包含包的名称。

intent.getPackage()返回此意图专门针对的包/应用程序,但它已发送给任何感兴趣的接收者,因此,没有这样的包。

使用intent.getData()将更新后的包作为Uri返回

在清单中注册广播接收器时,添加以下意图过滤器。xml

<intent-filter>
   <action android:name="android.intent.action.PACKAGE_REPLACED" />
   <data android:scheme="package" />
</intent-filter>
孔宇
2023-03-14

根据Android文档:广播操作:你的应用程序的新版本已经安装在现有版本之上。这只发送到被替换的应用程序。它不包含任何附加数据;要接收它,只需使用此操作的意图过滤器。

<intent-filter>
   <action android:name="android.intent.action.MY_PACKAGE_REPLACED" />
   <data android:scheme="package" />
</intent-filter>

来自BroadcastReceiver的onReceive方法应为:

@Override
public void onReceive(Context context, Intent intent) {
    // action to do

}
祁飞飙
2023-03-14

您的意图过滤器应该类似于:

<intent-filter>
   <action android:name="android.intent.action.PACKAGE_REPLACED" />
   <data android:scheme="package" />
</intent-filter>

来自BroadcastReceiver的onReceive方法应为:

@Override
public void onReceive(Context context, Intent intent) {
    Uri data = intent.getData();
    if (data.toString().equals("package:" + "com.target.package") {
        // action to do
    }
}
 类似资料:
  • 有多种方法可以更新Electron应用. 最简单并且获得官方支持的方法是利用内置的Squirrel框架和Electron的autoUpdater模块。 Updating Applications There are several ways to update an Electron application. The easiest and officially supported one is

  • 有多种方法可以更新Electron应用. 最简单并且获得官方支持的方法是利用内置的Squirrel框架和Electron的autoUpdater模块。 使用 update.electronjs.org Electron 团队维护 update.electronjs.org,一个免费开源的网络服务,可以让 Electron 应用使用自动更新。 这个服务是设计给那些满足以下标准的 Electron 应

  • 我们有一个应用程序,利用在应用程序计费。我们看到的问题如下: 当使用较高版本代码的构建被上传到Play Developer控制台时,In App Billing将停止在设备上的应用程序(使用较低版本代码)上工作,表示“应用程序未配置为计费”。 这很好,在测试的时候,但问题是--当应用程序在Google Play商店中时,会有什么行为?当您替换应用程序(以执行更新)时,处于野生状态(具有较低版本代码

  • 在使用谷歌的新功能应用内更新时,我注意到它似乎会返回旧的(以前的)更新信息,而不是正确的最新信息。 Android不久前推出了新的force更新特性:https://developer.Android.com/guide/app-bundle/in-app-updates称为in-app updates 在使用它时,我注意到当根据Google的教程获取应用程序更新信息时,返回的应用程序版本代码有时

  • 当然还有很多类似的问题,我真的通读了,但是没有一个完全回答了我的问题: 我想在Google Play上更新我当前的应用程序(已经是prod),但它说我需要更改版本代码- 你必须知道,我在第一次上传时没有添加任何versionCode或versionName,这会导致问题吗? 我必须现在删除应用程序并重新上传吗?我肯定使用了相同的密钥库和凭据 完成的步骤: 更新了Androidanifest.xml

  • 问题内容: 我正在尝试找到一种方法,利用json文件通过Powershell更新Azure广告注册的应用程序的清单。 Json文件包含所有应用程序角色,我想简单地将应用程序角色注入[]到应用程序角色括号中 有没有办法通过电源外壳或CLI来实现此目的? 问题答案: 是的,您可以通过PowerShell更新Azure AD应用程序的清单。 特别是为了添加应用程序角色,这是一个PowerShell脚本。