通过链接或电子邮件启动Android应用程序

Din*_*ash 10 email android launch

我一直试图通过电子邮件链接或某些社交网站上的帖子启动应用程序.问题是在android上的某些设备或某些gmail应用程序中没有显示我指定的锚标签或链接.

intent-filter下面,我设置为我的行为是:

 <action android:name="android.intent.action.VIEW" />
 <category android:name="android.intent.category.DEFAULT" />
 <category android:name="android.intent.category.BROWSABLE" />
 <data android:scheme="myappname" />
Run Code Online (Sandbox Code Playgroud)

我正在发送带有此锚标记的电子邮件

myappname://processtobedone/?id=1
Run Code Online (Sandbox Code Playgroud)

它适用于我在华为设备上的电子邮件应用程序,但在设备的默认gmail应用程序中,它没有显示它有链接,并且在某些设备中默认情况下它附加https:作为标签的后缀并启动浏览器.

Com*_*are 16

您可以使用<intent-filter>标识您控制的URL,而不是使用自定义方案:

<intent-filter>
    <action android:name="android.intent.action.VIEW"/>

    <category android:name="android.intent.category.DEFAULT"/>
    <category android:name="android.intent.category.BROWSABLE"/>

    <data
        android:host="www.this-so-does-not-exist.com"
        android:path="/something"
        android:scheme="http"/>
</intent-filter>
Run Code Online (Sandbox Code Playgroud)

然后,链接http://www.this-so-does-not-exist.com/something将在具有您的应用程序的设备上显示您的应用程序(在选择器中,以及Web浏览),并将在没有您的应用程序的设备上显示您的网页.


CQM*_*CQM 2

创建一个真正的链接 (http:),该链接指向您控制的网站,例如 amazon s3 上的静态网站,使用该网站上的 javascript 检测 Android 用户代理,然后重定向到带有锚标记的链接。