Android 內容提供器—內容提供器基礎(從提供器中擷取資料)

這一節使用使用者字典提供器作為一個例子來描述了怎樣從提供器中擷取資料。為了清晰起見,本節中的程式碼片段在UI線程上調用ContentResolver()方法,但是,在實際代碼中,應該在一個獨立的線程中執行非同步查詢。執行非同步查詢的方法之一是使用CursorLoader類,這個類在裝載器(Loader)指南中進行過比較詳細的描述。而且這裡的代碼也只是程式碼片段,它們不是一個完整應用程式的展示。按照以下基本步驟從提供器中擷取資料:1.  給提供器申請讀存取權限;2.  定義發送給提供器的查詢代碼。

Android 內容提供器—建立內容提供器(實現合約類)

合約類是包含了針對URIs、列名、MIME類型、以及屬於提供器的其他中繼資料的常量定義的靜態類。這個類在提供器和其他應用程式之間建立一個契約,從而即使在實際的URI、列名等發生了改變,也能確保提供能夠正確的被訪問。合約類對開發人員也是有協助的,因為對於它的常量都有助記的名字,因此針對列名或URIs開發人員很少會使用錯誤的值。因為它是一個類,所以它能包含Javadoc的文檔,整合式開發環境(如Eclipse)能夠自動完成來自合約類的常量命名並給對應常量顯示Javadoc。開發人員不能訪問來自你的應

Android 內容提供器—建立內容提供器(實現內容提供器許可權)

在“安全和許可權”的專題中全面詳細的描述了有關Android系統的許可權和訪問。“資料存放區”的專題也描述了安全和許可權對各種儲存類型的影響。因此以下簡要介紹幾個重點內容:1.  預設情況下,儲存在裝置內部儲存空間上的資料檔案是你的應用程式和提供器私人的;2.  你建立的SQLiteDatabase資料庫對你的應用程式和提供器是私人的;3. 

Android 內容提供器—建立內容提供器(Intent對象和資料訪問)

應用程式能夠使用Intent對象間接的訪問一個內容提供器。應用程式不調用任何的ContentResolver或ContentProvicer方法,相反,它會給啟動它的Activity發送一個Intent對象,這個Intent對象通常是提供自己應用程式的一部分。目標Activity負責獲在它的UI中擷取和顯示資料。依賴Intent中的動作,目標Activity也可以提示使用者來修改提供器的資料。Intent對象也可以包含目標Activity在UI中顯示的附加資料,然後使用者在使用它來修改提供器中的

Android 內容提供器—建立內容提供器(元素)

像Activity和Service組件一樣,ContentProvider子類必須在它的應用程式的資訊清單檔中使用<provider>元素來定義。Android系統要從這個元素中擷取以下資訊:1.  授權(android:authorities)在系統中標識整個提供器的符號名。2.  提供器類名(android:name)這個類實現了ContentProvider抽象類別。3. 

Android 日曆提供器(一)

 日曆提供器是針對使用者日曆事件的一個資產庫。日曆提供器API允許你執行有關日曆、、事件、會議、提醒等內容的查詢、插入、更新、刪除操作。日曆提供器API能夠用於應用程式和同步適配器,規則的變化依賴於什麼類型的程式製造了這個調用。本文重點關注應用程式怎樣使用日曆提供API。對於與同步適配器的不同的討論,請看同步適配器。通常,要讀或寫行事曆資料,應用程式的資訊清單檔中必須包含“使用者權限”一節中描述的適當的許可權,為了讓執行普通的的操作更加容易,日曆提供器提供了一組在“日曆Intent對象”一節中介

Android 日曆提供器(二)

Calendars表CalendarContract.Calendars表包含了單個日曆的詳細資料。下表中Calendars表列對應用程式和同步適配器都是可寫的。對於這個表支援的完整的欄位列表,請看“CalendarContract.Calendars參考”http://developer.android.com/reference/android/provider/CalendarContract.Calendars.html常量描述NAME日曆的名字CALENDAR_DISPLAY_NAME

Android 綁定類型服務—簡介

綁定類型的服務是在客戶-服務介面中的服務端。綁定類型服務允許組件(如Activity)綁定服務、發送請求、接收響應、以及執行處理序間通訊(IPC)。一個典型的綁定類型的服務只跟它所服務的那個應用程式組件同時存在,並且不在後台無限期的運行。這份文檔向你展示了如何建立綁定類型的服務,包括怎樣跟其他應用程式組件綁定。但是,關於服務的基本資料你還是應該參照“Android

Android 綁定類型服務—繼承Binder類

如果你只在應用程式的局部使用服務,並且不需要跨進程工作,那麼你能夠實現自己的Binder類,用它直接給你的用戶端提供訪問服務中公用方法的能力。注意:通常,用戶端和服務端只是在同一個應用和進程中工作,例如,對於一個要良好工作的播放音樂的應用程式,就需要把在後台工作的播放音樂的服務與應用自己的一個Activity綁定。以下是建立綁定類型服務的步驟:1. 在服務中,使用以下方法之一建立Binder執行個體:   A. 包含用戶端能夠調用的公用方法;  

Android 內容提供器—內容提供器基礎(概述)

內容提供器管理著對資料的核心資產庫的訪問。並且提供器是Android應用程式的一部分,它經常為了跟資料協同工作而提供自己的UI。但是內容提供器的主要目的是提供其他應用程式使用,它們使用提供器的用戶端對象訪問提供器。提供器和提供器用戶端一起給處理處理序間通訊的資料和安全資料訪問提供了一個一致的、標準的介面。這個主題主要介紹以下基礎內容:1. 內容提供器是如何工作的;2. 使用API從內容提供器中擷取資料;3. 使用API來插入、更新、刪除內容提供器中的資料;4. 與提供器協同工作的其他API功能。

Android 綁定類型服務—建立綁定類型的服務

建立具有綁定能力的服務時,必須提供一個IBinder對象,它用於給用戶端提供與服務端進行互動的編程介面。有三種方法能夠定義這個介面:1. 繼承Binder類如果你的服務是你的應用程式的私人服務,並且跟用戶端運行在同一個進程中,那麼就應該通過繼承Binder類來建立你的介面,並且佛從onBind()方法中返回這個介面的一個執行個體。用戶端接收這個Binder對象,並且能夠使用這個對象直接存取Binder類中實現的或Service中的公用方法。當你的服務只是在後台給你自己的應用程式工作時,這是首選技

Android 內容提供器—內容提供器基礎(訪問提供器)

應用程式使用ContentResolver用戶端對象訪問來自用戶端的資料。這個對象有一些與提供器中相同的命名的方法,提供器是ContentProvider的一個具體的子類的執行個體。ContentResolver對象的方法提供了基本的“CRUD”(建立、擷取、更新和刪除)持久化儲存的功能。在用戶端應用程式的進程中的ContentResolver對象和提供器自己應用中的ContentProvider對象自動的處理處理序間通訊。ContentProvider對象也以表的形式在資料資產庫和資料的外部表

Android 內容提供器—內容提供器基礎(內容提供器許可權)

一個提供器能夠指定一些許可權,其他應用程式要訪問這個提供器的資料時必須申請它的許可權。這些許可權確保使用者瞭解應用程式將試圖訪問什麼樣的資料。基於提供器的要求,其他應用程式為了訪問這個提供器要申請它們所需要的許可權。最後安裝應用程式時,使用者能夠看到申請的全校性。如果提供器應用程式沒有指定任何許可權,那麼其他應用程式不能訪問這個提供器的資料。但是,提供器的應用程式中的組件始終有完全的讀寫存取權限,而不管是否指定了許可權。跟前面的解釋一樣,為了從使用者字典中擷取資料,這個提供器要求申請androi

Android 內容提供器—內容提供器基礎(MIME類型參考)

內容提供器能夠返回標準的MIME媒體類型,或定製的MIME類型字串,或者都能。MIME類型格式如下:type/subtype例如,已知的MIME類型text/html,它有text類型和html子類型,如果提供器返回這種類型的資源標識(URI),就意味著使用這個URI查詢,將返回

Android 內容提供器—內容提供器基礎(插入、更新和刪除資料)

用跟從提供器中擷取資料同樣的方式,你也可以使用提供器用戶端和提供器的ContentProvider對象之間的相互作用來修改資料。你調用一個帶有參數的ContentResolver對象的方法,這個參數會傳遞給相應的ContentProvider對象的方法。提供器和提供器用戶端自動處理安全和處理序間通訊。插入資料要把資料插入到提供器中,就要調用ContentResolver.insert()方法。這個方法把一個新行插入到提供器中,並且返回這行的內容的URI。以下程式碼片段顯示了怎樣把一行新的資料插入

Android 內容提供器—內容提供器基礎(內容的統一資源標識(URIs))

內容URI是在提供器中標識資料統一資源標識。內容的統一資源標識包括完整的提供器的符號名和所指向的一個表名。當你調用一個用戶端方法來訪問提供器中的一個表時,這個表的內容的統一資源標識就應該是參數之一。在前面的程式碼中,常量CONTENT_URI包含了使用者字典的“words”表的統一資源標識。ContentResolver對象分析出URI的授權,並且使用這個授權跟已知的系統資料表的授權進行比較來找到內容的提供者,然後ContentResolver對象就能夠把查詢參數分發給正確的提供者。Conten

Android 內容提供器—建立內容提供器(概要)

內容提供器管理著對資料核心資產庫的訪問。你可以連同資訊清單檔一起,把提供器做為一個Android應用程式中一個或多個類來實現。你要實現的類之一就ContentProvider子類,這個類是提供器跟其他應用程式之間的介面。儘管內容提供器意味著讓資料對其他的應用程式有效,但是在你的應用程式中也可以有允許使用者查詢、修改由提供器管理的資料的Activity。建立內容提供器之前的準備工作在開始建立提供器之前,先做以下工作:1. 

Android 內容提供器—內容提供器基礎(提供器資料類型)

內容提供器能夠提供很多不同的資料類型。使用者字典提供器僅提供了文本類型,但是提供器還能夠提供以下類型:1.  Integer2.  Long integer(long)3.  floating point4.  long floating

Android Intents和Intent過濾器(二)

Intent對象解析Intent能夠被分成兩組:1.   用組件的名稱把Intent對象明確的指向目標組件(在Intent對象的組件名欄位指定目標組件名)。因為一般情況下其他應用的開發人員不會瞭解目標組件的名字,所以通常針對應用程式的內部訊息使用明確命名的Intent對象,如一個Activity啟動一個下屬服務或啟動一個姊妹Activity。2.   沒有命名目標(Intent對象的組件名欄位是空的)的隱式的Intent對象。隱式的Intent對象經常被用於啟用其他應用程式中的組件。Androi

總頁數: 2771 1 .... 833 834 835 836 837 .... 2771 Go to: 前往

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.