您的位置:首页 > 移动开发 > Android开发

【Android】在浏览器中打开url链接,打开Service,复习IntDef

2015-12-14 22:19 507 查看
需要在浏览器中打开链接:

/**
* @hide
*/
/*定义部分*/

@IntDef({OPEN_BROWSER, START_SERVICE})
@Retention(RetentionPolicy.SOURCE)
public @interface AdsHandler {
}

public static final int OPEN_BROWSER = 0;
public static final int START_SERVICE = 1;

private void startAdsDelegate(@AdsHandler int handler) {

String url = ConstantData.ADS_DOWNLOAD_URL;

// fast failure
if (url == null && url.isEmpty()) return;

// open url in browser
// 在浏览器中打开链接
if (handler == OPEN_BROWSER) {
// key code, 关键代码
Intent i = new Intent(Intent.ACTION_VIEW);
i.setData(Uri.parse(url));
startActivity(i);
} else if (handler == START_SERVICE) {
Intent intent = new Intent(LoginActivity.this, AdsDelegate.class);
Bundle bundle = new Bundle();

bundle.putString("url", url);
intent.putExtras(bundle);
startService(intent);
}

}


其它的几种打开url的简单代码归纳:(无非就是one line code,意义不大)

Intent i = new Intent(Intent.ACTION_VIEW,
Uri.parse("http://xxxxx"));
startActivity(i);


startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("http://xxxxx")));


当然,url需要加上http或是https前缀才可以,所以,你也可以这样写:

if (!url.startsWith("https://") && !url.startsWith("http://")){
url = "http://" + url;
//  要是https链接的话就有问题了~~
}

Intent intent= new Intent(Intent.ACTION_VIEW, Uri.parse(url));
startActivity(intent);


IntDef,看之前写的一篇

转载署源-By-KyleCe:http://blog.csdn.net/KyleCeshen/article/details/50301683
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android