gpt4 book ai didi

android - 测试 Android 广播时如何包含额外的包?

转载 作者:太空宇宙 更新时间:2023-11-03 10:42:44 26 4
gpt4 key购买 nike

我目前正在尝试测试 Google 的 App Invites,但我很难在不将应用程序发布到 Play 商店的情况下测试 INSTALL_REFERRER 广播功能

App Invite 广播 Intent 需要一个名为 "com.google.android.gms.appinvite.REFERRAL_BUNDLE" 的额外包,它在 AppInviteReferral 中被选中,如下所示:

public static boolean hasReferral(Intent referralIntent) {
return referralIntent != null && referralIntent.getBundleExtra("com.google.android.gms.appinvite.REFERRAL_BUNDLE") != null;
}

当使用 adb shell am broadcast ... 测试广播时,我们能做的最好的事情就是添加 extras,但是没有添加 bundle extra 的选项。 ( documentation here )

有人知道如何将 bundle 作为广播的一部分吗?

最佳答案

在此post说不可能通过 adb 将 bundle extra 放入。您可以编写简单的测试应用程序并发送您想要的应用程序邀请 Intent :

Intent intent = new Intent("com.android.vending.INSTALL_REFERRER");
intent.setPackage("your_package");
Bundle bundle = new Bundle();
bundle.putString("com.android.vending.INSTALL_REFERRER", "your_invite_id");
bundle.putString("com.google.android.gms.appinvite.DEEP_LINK", "your_deep_link");
intent.putExtra("com.google.android.gms.appinvite.REFERRAL_BUNDLE", bundle);
sendBroadcast(intent);

我已经以这种方式测试了 google app invite,但之前也尝试过通过 adb 发送 intent。

关于android - 测试 Android 广播时如何包含额外的包?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30655231/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com