1. 程式人生 > >從0系統學Android-2.5更多隱式Intent用法

從0系統學Android-2.5更多隱式Intent用法

本系列文章,參考《第一行程式碼》,作為個人筆記

更多內容:更多精品文章分類

從0系統學Android-2.5更多隱式Intent用法

上一節中我們學習了通過隱式 Intent 來啟動 Activity。實際上隱式 Intent 還有更多的內容。

使用隱式 Intent 我們不僅可以啟動自己程式內符合要求的Activity 還可以啟動其他程式中符合要求的 Activity,這也使得 Android 中多個應用程式之間的功能共享成為可能。

比如:我們需要在我們的程式中展示一個網頁,則只需要呼叫系統瀏覽器來開啟這個網頁就可以了。

Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setData(Uri.parse("https://blog.csdn.net/sydMobile/article/details/78890731"));
startActivity(intent);

解釋一下:Intent.ACTION_VIEW 這是一個 Android 系統的內建的 action。通過 Uri.parse() 方法,將一個網址字串解析成一個 Uri 物件。給 setData 方法。Uri 物件主要用於指定當前 Intent 正在操作的資料。

上面的程式碼中,我們可能對 setData() 部分感到陌生。這個方法並不複雜,就是接收一個 Uri 物件。主要用於指定當前的 Intent 正在操作的資料,而這些資料通常是通過字串的形式傳入到 Uri.parse() 方法中產生。

與之對應,我們可以在 <intent-filter> 標籤中再配置一個 <data>

標籤。用於更精確地響應當前的 Activity 能夠響應什麼型別的資料。

<intent> 標籤中可以配置:

  • android:scheme 用於指定資料的協議部分。比如 http
  • android:host 指定主機部分 比如:www.baid.com
  • android:path 指定主機和埠之後的部分。如一段網址跟在域名後面的內容
  • android:mimeType 指定可以處理的資料型別,可以使用萬用字元來指定

只有 <data> 標籤中指定的內容和 Intent 中攜帶的資料完全一致,Activity 才可以響應。一般在 <data> 標籤中不需要指定這麼多的資訊。

除了 http 協議以外,還有很多其他的協議,比如:geo 表示顯示地理位置、tel 表示撥打電話。

展示一下呼叫系統撥號介面

Intent intent = new Intent(Intent.ACTION_DIAL);
intent.setData(Uri.parse("tel:10086"));
startActivity(intent);

相關推薦

0系統Android-2.5Intent用法

本系列文章,參考《第一行程式碼》,作為個人筆記 更多內容:更多精品文章分類 從0系統學Android-2.5更多隱式Intent用法 上一節中我們學習了通過隱式 Intent 來啟動 Activity。實際上隱式 Intent 還有更多的內容。 使用隱式 Intent 我們不僅可以啟動自己程式內符合要求的

0系統Android-2.3使用 Intent 在 Activity 之間穿梭

2.3 使用 Intent 在 Activity 之間穿梭 在上一節中我們已經學會了如何建立一個 Activity 了。對於一個應用程式來說,肯定不可能只有一個 Activity。下面就來學習多個 Activity 是專門跳轉的。 2.3.1 使用顯式 Intent 對於建立 Activity 的過程我們

第一行程式碼系列第二章——Intent用法(開啟網頁)

效果圖 修改FirstActivity中按鈕事件 Button button1 = (Button) findViewById(R.id.button_1); button1.setOnClickListener(new OnClickListener() {

0系統Android--5.2 傳送廣播

### 從0系統學Android--52 傳送廣播 ![](https://user-gold-cdn.xitu.io/2019/11/13/16e63adec6819e45?w=1741&h=1541&f=png&s=301835) ![](https://user-gold-cdn.xitu.io/2

0系統Android--1.3建立你的第一個 Android 專案

1.3 建立你的第一個 Android 專案 環境搭建完成後,我們就可以寫下我們的第一個專案了。 1.3.1 建立 HelloWorld 專案 在 Android Studio 的歡迎頁面點選 Start a new Android Studio project 就會自動為我們建立一個專案。(首次開啟專案

0 開始支付系統搭建——解析「核算對賬核心」

清算對賬系統 支付公司提供的所有金融服務是建立在銀行資金體系之上的,支付公司賬務系統內賬戶的資金都與其在銀行的存款資金一一對應,為了保證真實的資金賬戶和虛擬賬戶的資金轉換正確,支付公司必須及時與銀行進行各類業務的資金核對,所有資金核對都依賴於銀行的系統。 資金流入與銀行的

易學筆記--0開始JAVA(個人純手工筆記共享 免費!免費!免費!)--第5章 初始化和清理

引數數量 引數型別 過載原則 原始碼: //: HelloDate.java import java.util.*; //import static net.mindview.until.Print.*; /*

Android開發之零開始RxJava 2.x(一)認識Rxjava

歡迎轉載,轉載請註明出處:https://mp.csdn.net/mdeditor/80772129 落地98k,沒有倍鏡怪誰,讓你扶我你卻丟個手雷。 哈哈,大家好,喜歡裝逼的我又出現了,今天給大家帶來的是RxJava的相關討論,RxJava已經出來很久

0開始FreeRTOS-(建立任務)-2

# 補充 開始今天的內容之前,先補充一下上篇文章[從微控制器到作業系統-1](https://jiejietop.gitee.io/freertos-1/)的一點點遺漏的知識點。 ```js BaseType_t xTaskCreate(       TaskFunction

零開始android&lt;Bitmap圖形組件.四十七.&gt;

alt getheight drawtext layout pla cin mas 簡單 制圖 android.graphics.Bitmap(位圖)是Android手機中專門提供的用於操作圖片資源的操作類,使用此類能夠直接從資源文件之中進行圖片資源的讀取。而且對這些圖

【社交分享SDK】ShareSDK for Android 2.5.9已經公布

地址 nload trac p s unity3 share 2.x con clas ShareSDK for Android 2.5.9已經公布 版本號:V2.5.9 2015-3-19 1、升級Dropbox對API接口的調用。包含授權、

0開始大數據-Java基礎-三元運算符/鍵盤錄入(4)

大數據;Java;我們從零開始學習大數據技術,從java基礎,到Linux技術涉獵,再深入到大數據技術的Hadoop、Spark、Storm技術,最後到大數據企業平臺的搭建,層層遞進,由點到面!希望技術大牛能過來指導學習。上一節了解Java運算符,其中三元運算符沒有做講解,本節我們開始學習Java基礎-三元運

如何在RedHat 7.0系統中安裝mysql 5.7.22

分享圖片 comm libs ant 進不去 cal 之前 str 一行 如何在RedHat 7.0系統中安裝mysql 5.7.22 今天給大家介紹一下如何安裝mysql5.7,在安裝之前,首先要查看的是,你的系統中有沒有已經安裝過的情況。鍵入rpm -qa|grep

0開始架構

01 | 架構到底是指什麼?   軟體架構指軟體系統的頂層結構 02 | 架構設計的歷史背景   20 世紀 60 年代第一次軟體危機引出了“結構化程式設計”,創造了“模組”概念;  20 世紀 80 年代第二次軟體危機引出了“面向物件程式設計”,創造了“物件”概念;  20 世紀

易學筆記--0開始JAVA(個人純手工筆記共享 免費!免費!免費!)--比直接看書快N倍的速度掌握知識點--總共19章(更新完畢)

易學筆記--從0開始學JAVA(個人純手工筆記共享 免費!免費!免費!)--比直接看書快N倍的速度掌握知識點--第1章 物件導論 易學筆記--從0開始學JAVA(個人純手工筆記共享 免費!免費!免費!)--比直接看書快N倍的速度掌握知識點--第2章 一切都是物件 易學筆記--從0開

0開始pyspark(十):使用pyspark.ml.clustering模組對商場顧客聚類

資料下載: 資料為kaggle上的關於商場客戶的資料,地址:https://www.kaggle.com/vjchoudhary7/customer-segmentation-tutorial-in-python 資料準備: 資料集很小,四個特徵值:性別,年齡,收入能力,消費

0開始微服務學習筆記

1到底什麼是微服務 單體應用 部署效率低 團隊協作開發成本高 系統高可用性差 線上釋出變慢 什麼是服務化 單體應用中通過jar包依賴產生的本地方法呼叫,改成通過RPC遠端方法呼叫

0開始架構(五)複雜度來源:低成本、安全、規模

低成本 一般中小公司基本都是靠引入新技術來達到低成本的目標;而大公司更有可能自己去創造新的技術來達到低成本的目標,因為大公司才有足夠的資源、技術和時間去創造新技術。 安全 安全本身是一個龐大而又複雜的技術領域,並且一旦出問題,對業務和企業形象影響非常大。 從技術的角

學習筆記:0開始學習大資料-5.hadoop hdfs檔案讀寫api操作

學習測試,網上下的程式碼,測試通過,助於理解讀寫程式流程 package com.linbin.testmaven; import java.net.URI; import java.text.SimpleDateFormat; import java.util.Date; import or

0開始爬蟲(1)—— 配置工作環境

時間:2018/12/7 內容:爬蟲環境配置 資源:https://pan.baidu.com/s/1ULd7H_9B-wiKH2manP9Inw     提取碼:k7nv 資源簡介: Python 程式包:https://www.python.or