乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      Android 使用預(yù)定義的action值啟動(dòng)系統(tǒng)應(yīng)用

       路人甲Java 2022-01-13

       

      1、啟動(dòng)瀏覽器

      1 Intent intent = new Intent();
      2         intent.setAction(Intent.ACTION_WEB_SEARCH);
      3         //可以傳一個(gè)搜索關(guān)鍵字,會(huì)直接顯示搜索結(jié)果頁(yè)面。key是預(yù)定義的常量
      4         // intent.putExtra(SearchManager.QUERY,"要搜索的內(nèi)容");
      5         startActivity(intent);
      Intent.ACTION_WEB_SEARCH 匹配的動(dòng)作是網(wǎng)頁(yè)/瀏覽器



      如果是這樣的Intent:
      1     Intent intent = new Intent();
      2    
      3     intent.setAction(Intent.ACTION_WEB_SEARCH);   

      也可以寫成這樣:

      1
      2     Intent intent = new Intent(Intent.ACTION_WEB_SEARCH);

       

       

      2、啟動(dòng)瀏覽器,轉(zhuǎn)到指定頁(yè)面

      1     //網(wǎng)址必須寫全,不能省略協(xié)議http
      2     Uri uri =Uri.parse("http://www.baidu.com"); 
      3     //必須要傳一個(gè)URI,才可以啟動(dòng)瀏覽器
      4     Intent intent = new Intent(Intent.ACTION_VIEW,uri);
      5     startActivity(intent);
      Intent.ACTION_VIEW匹配的動(dòng)作很多,是一個(gè)大類,包含了各種功能,必須要傳參數(shù),系統(tǒng)根據(jù)這些具體的參數(shù)才能判斷要啟動(dòng)的程序(類型)。

       

       

      3、啟動(dòng)撥號(hào)程序

      1  Intent intent = new Intent();
      2         intent.setAction(Intent.ACTION_DIAL);
      3         startActivity(intent);
      ACTION_DIAL 匹配撥號(hào)程序??梢宰詣?dòng)填寫要撥的號(hào)碼:

      1     //手機(jī)號(hào)
      2     Uri uri =Uri.parse("tel:137.....");
      3     Intent intent = new Intent(Intent.ACTION_DIAL,uri);
      4     startActivity(intent);

       

       

       

      Uri參數(shù)可以寫在Intent的構(gòu)造函數(shù)里,也可以setData()單獨(dú)寫:

      1  Intent intent = new Intent(Intent.ACTION_DIAL);
      2         //傳一個(gè)Uri類型的參數(shù)
      3         intent.setData(Uri.parse("tel:137....."));   //參數(shù)為Uri類型
      4         startActivity(intent);

       

      如果是putExtra,只能單獨(dú)寫:

      1     intent.putExtra(String key,String value);

       

       

       

      4、發(fā)短信

      方式一:

      1 Intent intent = new Intent(Intent.ACTION_VIEW);
      2         //可以設(shè)置短信的默認(rèn)內(nèi)容。可選
      3         intent.putExtra("sms_body", "短信內(nèi)容");
      4         //具體細(xì)分VIEW的action為發(fā)短信
      5         intent.setType("vnd.android-dir/mms-sms");
      6         startActivity(intent);

      此方式不能設(shè)置默認(rèn)收件人

       

      方式二:

      1  //默認(rèn)收件人
      2         Uri uri =Uri.parse("smsto:137782323");
      3         Intent it = new Intent(Intent.ACTION_SENDTO, uri);
      4         it.putExtra("sms_body", "默認(rèn)的短信內(nèi)容");
      5         startActivity(it);

       

       

       

      5、發(fā)郵件

      1  //默認(rèn)收件人
      2         Uri uri =Uri.parse("mailto:xxx@abc.com");
      3         Intent intent = new Intent(Intent.ACTION_SENDTO, uri);
      4         startActivity(intent);

       注意:如果手機(jī)上沒有對(duì)應(yīng)的該類應(yīng)用,又沒有寫對(duì)應(yīng)的處理代碼,會(huì)閃退。比如發(fā)送郵件,但沒有安裝郵箱,會(huì)閃退。

      應(yīng)該先檢查手機(jī)上是否已安裝該類應(yīng)用,如果沒有,給出提示,或者打開瀏覽器,轉(zhuǎn)到該類常用應(yīng)用的下載頁(yè)面。

       

       

      6、播放多媒體

      1 Intent intent = new Intent(Intent.ACTION_VIEW);
      2     Uri uri =Uri.parse("mnt/sdcard/1.mp3"); 
      3   //不能缺省這句代碼
      4   intent.setDataAndType(uri,"audio/mp3");
      5   startActivity(intent);

       

       

       

      7、安裝apk

      1   Intent intent = new Intent(Intent.ACTION_VIEW);
      2   //apk路徑
      3  Uri uri=Uri.parse("mnt/sdcard/qqmail.apk");
      4  //參數(shù):Uri類型的apk路徑,String類型的數(shù)據(jù)類型(固定寫法)
      5  intent.setDataAndType(uri,"application/vnd.android.package-archive");
      6  startActivity(intent);

       

      8、卸載apk

      更新軟件時(shí),有時(shí)需要先卸載原來的版本,再下載安裝新版本。

       

       

       

      9、從相冊(cè)選取圖片

      1  Intent intent = new Intent();
      2         //所有圖片格式
      3         intent.setType("image/*");
      4         intent.setAction(Intent.ACTION_GET_CONTENT);
      5         //要設(shè)置請(qǐng)求碼
      6         startActivityForResult(intent, 1);

       

       

      10、選擇某類應(yīng)用

      1 Intent intent = new Intent(Intent.ACTION_SEND);
      2         intent.setType("text/plain");
      3         intent.putExtra(Intent.EXTRA_TITLE, "標(biāo)題信息");
      4         intent.putExtra(Intent.EXTRA_SUBJECT, "主題信息");
      5         intent.putExtra(Intent.EXTRA_TEXT, "內(nèi)容信息");
      6         startActivity(intent);

      會(huì)彈出對(duì)話框列出所有滿足該action的的應(yīng)用,點(diǎn)擊某項(xiàng)會(huì)打開該應(yīng)用。預(yù)定義的action值分類很亂,所以往往會(huì)列出很多項(xiàng),其中一些我們并不想要。

       

      有時(shí)候我們并不想全部列出,只想列出其中部分,可以這樣:

       1 Intent it = new Intent(Intent.ACTION_SEND);
       2         it.setType("text/plain");
       3         /*
       4         首先我們通過getPackageManager()獲取包管理器PackageManager對(duì)象。PackageManger的主要職責(zé)是管理應(yīng)用程序包。
       5         通過PackageManager,我們就可以獲取應(yīng)用程序信息,PackageManager獲取的信息即來自AndroidManifest.XML。
       6         PageManager對(duì)象有個(gè)queryIntentActivities()方法,用來根據(jù)Intent查詢可用的activity信息,該方法返回ResolveInfo集合。
       7          */
       8         List<ResolveInfo> resInfo = getPackageManager().queryIntentActivities(it, 0);
       9         if (!resInfo.isEmpty()){
      10             List<Intent> targetedShareIntents = new ArrayList<Intent>();
      11             /*
      12             針對(duì)每個(gè)ResolveInfo對(duì)象,通過activityInfo屬性獲取ActivityInfo對(duì)象,
      13             根據(jù)ActivityInfo的packageName獲取所屬的包名稱,并判斷名稱是否包含email、bluetooth、mms、weibo,如果包含,則添加到備選集合中。
      14              */
      15             for (ResolveInfo info : resInfo) {
      16                 ActivityInfo activityInfo = info.activityInfo;
      17                 if (activityInfo.packageName.contains("email") || activityInfo.packageName.contains("bluetooth")
      18                         || activityInfo.packageName.contains("mms") || activityInfo.packageName.contains("weibo")) {
      19                     Intent targeted = new Intent(Intent.ACTION_SEND);
      20                     targeted.setType("text/plain");
      21                     targeted.putExtra(Intent.EXTRA_TITLE, "title");
      22                     targeted.putExtra(Intent.EXTRA_SUBJECT, "subject");
      23                     targeted.putExtra(Intent.EXTRA_TEXT, "content");
      24                     targeted.setPackage(activityInfo.packageName);
      25                     targetedShareIntents.add(targeted);
      26                 }
      27             }
      28             //然后調(diào)用ceateChooser創(chuàng)建一個(gè)ACTION_CHOOSER Intent,用第一個(gè)備選Intent作為target Intent(第一個(gè)參數(shù))
      29             Intent chooserIntent = Intent.createChooser(targetedShareIntents.remove(0), "選擇分享到:");
      30             //通過putExtra設(shè)置Intent.EXTRA_INITIAL_INTENTS為其他備選Intent
      31             chooserIntent.putExtra(Intent.EXTRA_INITIAL_INTENTS, targetedShareIntents.toArray(new Parcelable[] {}));
      32             startActivity(chooserIntent);
      33         }

      只會(huì)列出我們想要列出的項(xiàng)。通常用這種方式。

       

      下一篇隨筆寫 分享功能的實(shí)現(xiàn)。

       

       

       

       

      12、打開照相機(jī)

      1 Intent intent = new Intent("android.media.action.STILL_IMAGE_CAMERA"); 
      2         startActivity(intent);

       

      13、打開錄音機(jī)

      1 Intent mi = new Intent(MediaStore.Audio.Media.RECORD_SOUND_ACTION);
      2         startActivity(mi);

       

        本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
        轉(zhuǎn)藏 分享 獻(xiàn)花(0

        0條評(píng)論

        發(fā)表

        請(qǐng)遵守用戶 評(píng)論公約

        類似文章 更多