如何使用指定瀏覽器打開網頁 – Android移動開發技術文章_手機開發 Android移動開發教學課程

剛剛看到一道Android面試題:如果使用制定的瀏覽器打開網頁。
網上講解的都比較簡單,其實確實很簡單,主要就是設置一下intent就可以,不過這裡,我們講解一些附帶的知識。
就是查看一下本機上可用的瀏覽器,因為之前做過檢測語音識別程序時需要檢測Google 語音命令,這裡簡單的修改瞭一下就可以查看瞭。
具體代碼如下:

package com.google.code.cakedroid.demo; 
 
 
import java.util.List; 
 
 
import com.google.code.cakedroid.R; 
 
 
import android.app.Activity; 
import android.content.Intent; 
import android.content.pm.PackageManager; 
import android.content.pm.ResolveInfo; 
import android.net.Uri; 
import android.os.Bundle; 
 
 
public class BrowserDemo extends Activity { 
 
 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
        super.onCreate(savedInstanceState); 
        setContentView(R.layout.main); 
        // get the view web intent 
        Intent intent = this.getViewWebIntent(); 
        this.printInterestedActivitiesByIntent(intent); 
        // set the className to use the specific browser to open the webpage. 
        intent.setClassName("com.tencent.mtt", "com.tencent.mtt.MainActivity"); 
        startActivity(intent); 
    } 
 
 
    /*
     *get the desired view web intent 
     */ 
    private Intent getViewWebIntent() { 
        Intent viewWebIntent = new Intent(Intent.ACTION_VIEW); 
        Uri uri = Uri.parse(""); 

        viewWebIntent.setData(uri); 
        return viewWebIntent; 
    } 
     
    /*
     * print the activities that are interested about the intent
     */ 
    private void printInterestedActivitiesByIntent(Intent intent) { 
        PackageManager pm = this.getPackageManager(); 
        List<ResolveInfo> activities = pm.queryIntentActivities(intent, 0); 
        if (null != activities) { 
            for (int i = 0; i < activities.size(); i++) { 
                ResolveInfo info = activities.get(i); 
                System.out.println(info.activityInfo.name); 
            } 
        } else { 
            System.out.println("no interested activities"); 
        } 
    } 
 
 


輸出結果為:
12-17 05:02:30.096: I/System.out(217): com.android.browser.BrowserActivity
12-17 05:02:30.096: I/System.out(217): com.tencent.mtt.MainActivity
12-17 05:02:30.096: I/System.out(217): cn.dolphin.browser.BrowserActivity

摘自 BossDarcy的專欄執

發佈留言