我一直试图从Android 3.1(Honeycomb)上的浏览器调用我的应用程序
这些是我尝试过的链接,但这些链接都不起作用:
<a href="com.nk.myapp://movIEID=95319">click me 1</a><a href="intent:#Intent;action=com.nk.myapp.detail;end">click me 2</a><a href=intent:#Intent;action=com.nk.myapp.detail;category=androID.intent.category.DEFAulT;category=androID.intent.category.broWSABLE;package=com.nk.myapp;end>click me 3</a>
对于第1和第2个网址,它会显示“网页不可用”.
对于第三个,它通过搜索显示Apps-market:pname:com.nk.myapp – > “没有找到结果”.
应用程序仍处于开发阶段,因此尚未进入市场.
这是我的清单文件的样子:
<activity androID:label="@string/app_name" androID:launchMode="singletop" androID:name=".MainActivity" androID:screenorIEntation="landscape" > <intent-filter > <action androID:name="androID.intent.action.MAIN" /> <category androID:name="androID.intent.category.LAUNCHER" /> </intent-filter> <intent-filter > <action androID:name="com.nk.myapp.action.DIALOG" /> <category androID:name="androID.intent.category.DEFAulT" /> </intent-filter> <intent-filter > <action androID:name="androID.intent.action.SEARCH" /> <category androID:name="androID.intent.category.DEFAulT" /> </intent-filter></activity><activity androID:name=".WebVIEwActivity" androID:screenorIEntation="landscape" > <intent-filter> <data androID:scheme="com.nk.myapp" /> <action androID:name="com.nk.myapp.detail" /> <category androID:name="androID.intent.category.broWSABLE" /> <category androID:name="androID.intent.category.DEFAulT" /> </intent-filter></activity>
如果你发现我做错了,请告诉我.
解决方法:
这是另一种方法:
为了找到uri,这是我在Test Apk中添加的内容:
Intent i = new Intent();i.setAction("com.appname.NK_CUSTOM_ACTION");i.putExtra("movIE_ID", "123456");Log.e("IntentTest", i.toUri(Intent.URI_INTENT_SCHEME));
哪个产生这个字符串:
intent:#Intent;action=com.appname.NK_CUSTOM_ACTION;S.movIE_ID=123456;end
HTML页面有这个链接:
<a href="intent:#Intent;action=com.appname.NK_CUSTOM_ACTION;S.movIE_ID=123456;end">click to load</a>
并且,将清单文件更改为
<activity androID:name=".TestActivity" androID:screenorIEntation="sensorLandscape" > <intent-filter> <action androID:name="com.appname.NK_CUSTOM_ACTION" /> <category androID:name="androID.intent.category.DEFAulT" /> <category androID:name="androID.intent.category.broWSABLE" /> </intent-filter></activity>
在TestActivity中,您可以在下面的代码中获得movIE_ID:
Intent intent = getIntent();String data = intent.getStringExtra("movIE_ID");
总结 以上是内存溢出为你收集整理的从浏览器调用android应用程序全部内容,希望文章能够帮你解决从浏览器调用android应用程序所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)