gpt4 book ai didi

Android:如何在浏览器中保存所有应用程序都可以访问的内容?

转载 作者:行者123 更新时间:2023-11-29 22:21:05 25 4
gpt4 key购买 nike

所需的基本功能

当 Android 手机上的用户访问 URL http://www.example.com?key=asdf 我想将值 asdf 保存在手机上的任何应用程序都可以在以后访问它的一种方式。

最终目标

目标是通过将 friend 定向到 URL 来邀请他们加入应用程序的简单方法。该 URL 有一个从市场下载我的应用程序的链接,因此接受邀请所需的唯一事情就是访问该 URL 并单击一个链接。一旦您安装了该应用程序,它就可以获取值 asdf 并将您与邀请您的人联系起来。

我尝试过的事情

我最初的想法是使用类似 localStorage 或 cookie 的东西,但由于安全问题,似乎不太可能存在涉及其中任何一个的解决方案。

到目前为止,我想出的最佳解决方案是使用 com.android.browser.permission.READ_HISTORY_BOOKMARKS 权限来读取用户的历史记录以从我的域中搜索 URL。这是一个很好的解决方案,但它不适用于其他浏览器,如移动版 Firefox。此外,它需要一个可疑的许可,我希望尽可能避免。

最佳答案

要实现您的实际目标,您可以使用与 Google Analytics(分析)相同的方法。基本思想是您使用指向应用商店的 URL,该 URL 具有传递给应用的特定格式的引荐来源网址值。尽管此字符串的格式应该可以是任何格式,但如果您不遵循实际的 Google Analytics 格式,就会有问题的报告。

例子:

http://market.android.com/details?id=com.example.myapp&referrer=utm_source%3Dfriend%26utm_medium%3Dinvite%26utm_content%3Dasdf%26utm_campaign%3Dinvite

更多特定于分析的文档可以在 Android Google Analytics 找到

然后您需要为 com.android.vending.INSTALL_REFERRER 类型实现一个广播接收器

在您的 list 中它看起来像:

<!-- Used for install referrer tracking -->
<receiver android:name=".MyReceiverClass" android:exported="true">
<intent-filter>
<action android:name="com.android.vending.INSTALL_REFERRER" />
</intent-filter>
</receiver>

有关实现 BroadcastReceiver 的详细信息,请参阅 Android 文档.

此方法要求 friend 使用设备上的 Google Marketplace(通过点击生成的 URL)下载应用,因为正是 MarketPlace 应用获取引荐来源数据并将其传递给应用。

注意:虽然该方法应该有效,但当前的 MarketPlace 应用程序可能存在问题,导致无法正常工作。查看错误:http://code.google.com/p/android/issues/detail?id=19247

关于Android:如何在浏览器中保存所有应用程序都可以访问的内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7169032/

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