是否可以将自定义参数传递给android market,以便我的应用程序在首次发布时收到它?

是否可以将自定义参数传递给android market,以便我的应用程序在首次发布时收到它?,android,google-play,android-browser,Android,Google Play,Android Browser,是否有办法将自定义参数传递给android market(或任何其他方式),以便我的应用程序在安装(并首次运行)后收到该参数 让我解释一下 使用argument1=“Hello world1”(自定义参数)启动意图 每一个 时间) 从android market安装该应用程序 第一次打开应用程序 应用程序显示消息“Hello world1” 任何情况都可以,不仅仅是针对android市场。 大多数情况下,应用程序将通过带有绑定http模式的条形码扫描仪安装。因此,浏览器解决方案也是可能的,HTM

是否有办法将自定义参数传递给android market(或任何其他方式),以便我的应用程序在安装(并首次运行)后收到该参数

让我解释一下

  • 使用argument1=“Hello world1”(自定义参数)启动意图 每一个 时间)
  • 从android market安装该应用程序
  • 第一次打开应用程序
  • 应用程序显示消息“Hello world1”
  • 任何情况都可以,不仅仅是针对android市场。

    大多数情况下,应用程序将通过带有绑定http模式的条形码扫描仪安装。因此,浏览器解决方案也是可能的,HTML5客户端存储(将参数存储到浏览器并在我的应用程序第一次运行时从那里获取)

    更新


    一个解决方案是在浏览器中创建一个cookie或其他东西,然后从我安装的应用程序中访问它。可能吗?如果是,你能提供一些信息吗?浏览器可以与应用程序共享数据吗?

    如果你问的是不可能的。市场仅向设备提供APK文件。然而,根据你到底想做什么,可能有许多不同的解决办法

    以下是一些想法:

    如果你想让市场为每个用户提供一个独特的自定义参数,那么为什么不让你的应用程序在初始运行时连接到服务器并下载该参数呢?即使市场可以提供论据,它也必须从您那里获得,您可能需要设置一个服务器来向市场提供论据

    如果你只是想让应用程序知道它是不是第一次运行,你可以使用SharedReference。查询是否存在类似
    hasAppRunBefore
    的首选项,如果不存在,则表示您知道该应用程序自安装以来首次运行。然后将
    hasAppRunBefore
    变量设置为某个值,表示它以前运行过。此实现将允许用户卸载并重新安装应用程序,每次重新安装后,应用程序将首次再次运行

    另一种选择是前两者的结合。您可以让应用程序连接到您的服务器,并向服务器提供设备的UUID,然后服务器可以检查之前是否看到该UUID。如果没有,则提供参数,否则不提供


    如果您确实需要每个设备的每个APK都不同,您可以设置一个服务器,当收到下载请求时,它会编译一个新的APK并提供下载该APK的链接。这将允许您为每次下载生成一个新的、唯一的APK。但是,这需要您自己分发APK,因为Android Market目前不提供此功能。

    我会继续,让重定向到Market的网站也将文件推送到客户端。该文件可以命名为类似“yourapp.info”的名称,并包含所需的数据。一旦你的应用程序启动,它可以搜索SD卡(它应该位于几个众所周知的目录中,aka/sdcard/Downloads)并读取该文件。SD卡上没有访问限制


    关于浏览器中的Cookie:我不确定您是否可以从任何其他应用程序访问Cookie-(请查看:blog.watchfire.com/files/advision-android-browser.pdf-无法访问Cookie),因此我认为该路径将被关闭

    您可以发布这样的链接

    用户单击此链接并安装应用程序后,您的广播接收器将收到一个带有“your\u referer\u参数”值的广播com.android.vending.INSTALL\u referer

    更多信息:



    因此,为了澄清,您希望每个用户在第一次打开应用程序时收到不同的参数,并显示不同的消息。该应用程序将仅从android market下载。是的,第一种解决方法是建立独特的设备-服务器关系。但是,当用户获得应用程序时,您需要某种推送通知。是否可以将一些数据写入默认浏览器,然后从应用程序查看浏览器数据?浏览器能否与应用程序共享数据?为什么需要推送通知?为什么应用程序不能在应用程序的初始加载时打电话回家,并从服务器请求信息?+1,如果想法是唯一地识别客户端,那么ping到家庭服务器是最好的方式。我从一个链接安装应用程序,该链接重定向到android market。我对该链接说“下载应用程序时,请先打开第三张图像。我还可以从android market安装该应用程序,无需任何争论。我怎么知道我打算用这个应用程序做什么而不首先控制手机(手机上还没有安装我的应用程序)我想这里的问题是OP想要显示一些信息,特别是在安装应用程序之前点击了哪个链接。这样,您就必须依赖IP地址来识别devicenice方法。如果是一种将其保存到默认位置的方法,那么这就是解决方案,但我认为它不能。类似的解决方法是创建某种“公共cookie”,我的应用程序可以从浏览器中获取。我已经更新了关于为什么我认为普通cookie不起作用的答案哇!推荐标签可能会以非常巧妙的方式完成工作!我明天试试,我会接受你的答案。但既然这是一个含糊不清的答案,你能再详细解释一下答案吗?(对于未来的观众)@Fedor:如果用户使用另一个referer参数单击另一个安装链接,在他的设备上已经安装了应用程序,会发生什么?1.该应用程序将重新安装还是将启动以前安装的应用程序?2.如果出现第二种情况,推荐人是否可以使用已发布的应用程序?[编辑:我只是