我对Java和Android编程完全陌生。我安装了Android Studio并玩了一些例子。我需要实现一个简单的应用程序
1)点按http网址时,Android会提供Firefox或Chrome的替代功能
2)过滤并修改点按的网址(通过简单的dirname
和concat
操作)并在浏览器中打开结果。
在bash中,像firefox "$(filmod $1)"
之类的东西可以完成这项任务(对于filmod
的一些合适的实现),但在Java和Android Studio中会是什么样子?谢谢,nbpf
答案 0 :(得分:1)
对于第一个问题,请简要看一下这个链接http://developer.android.com/training/app-links/index.html,你需要设置一个意图过滤器/处理程序。
使用Android Studio,创建helloWorld项目并对该应用程序进行此更改。
1个问题(当您点击手机上的某个链接时,这会让你的应用程序出现在mozila,chrome ...列表中):
在你的表现中添加这一行INSIDE“activity”标签。
<intent-filter android:autoVerify="true">
<data android:scheme="http" />
<data android:scheme="https" />
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
</intent-filter>
2个问题:
在MainActivity,onCreate()回调函数中,输入以下代码:
Intent intent = getIntent();
String action = intent.getAction();
Uri data = intent.getData();
String link = intent.getScheme();
String linkData = intent.getDataString();
Log.d("TMS","action is: " + action);
Log.d("TMS","link is: " + link);
Log.d("TMS","linkData is: " + linkData);
String linkData是您的URL名称。你有链接的字符串格式,你可以将它传递给textView,或WebView等...我已经在Android 5.1上测试了这一点,但我不会{} 1}在API 19上工作,直到API 23. / p>
如果您愿意,我可以与您分享我测试过的项目。