我已经尝试过搜索类似的问题,但没有一个人对这个话题非常清楚。
所以,我有一个应用程序,我想使用QR码阅读器来启动它。例如,如果我拍摄QR码的照片,QR阅读器会将其翻译成网址并以该地址作为参数启动我的应用程序。我该怎么做呢?我无法访问QR阅读器,因为它可以是商店中的任何应用程序。如何让我的应用程序出现在可用程序列表中以处理参数?
答案 0 :(得分:1)
如何从QR阅读器启动我的Android应用程序?
你没有,确切地说。您可以根据特定的Intent
结构启动Android应用,其中一个或多个结构可能会被QR码阅读器使用。
例如,如果我拍摄QR码的照片,QR阅读器会将其翻译成网址并以该地址作为参数启动我的应用程序。我该怎么做呢?
<intent-filter>
上<activity>
表示它处理该网址,例如:
<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>
<intent-filter>
符合网址http://www.this-so-does-not-exist.com/something
。更改<data>
元素将更改您匹配的网址。
答案 1 :(得分:0)
或者您可以像这样设置自己的方案。
<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="something"
android:scheme="myapp"/>
</intent-filter>
如果您输入“myapp://someting/string to send to app
”,您的应用就会启动,您将使用以下代码获取最后一部分
getIntent().getData().getLastPathSegment()