原创 Android LinearLayout

LinearLayout又稱爲線性佈局,是一種非常常用的佈局,這個佈局會將它所包含的控件在線性方向上依次排列 <LinearLayout xmlns:android="http://schemas.android.com/apk/

原创 UI automator的使用

1.獲取UiDevice實例,模擬對Device的一系列的操作 mDevice = UiDevice.getInstance(InstrumentationRegistry.getInstrumentation()); //從ho

原创 Android Intent

1.顯式Intent Intent有多個構造函數的重載,其中一個是: Intent(Context packageContext,Class<?> cls). 這個構造函數接收兩個參數,第一個參數Context要求提供一

原创 adb shell

//調試 adb shell am start -D -n 包名/啓動時的類名 am start -D -n com.guyu.android.fliggyautomator/.MainActivity //點擊 AS中的Att

原创 Activity和View

Activity是Android應用中負責和用戶交互的組件,大致上可以認爲是Swing編程中的JFrame控件. 區別在於: JFarme本身可以設置佈局管理器,不斷的向JFarme中添加組件. Activi

原创 Android Toast

1.默認顯示 // 第一個參數:當前的上下文環境。可用getApplicationContext()或this // 第二個參數:要顯示的字符串。也可是R.string中字符串ID // 第三個參數:顯示的時間長短。Toast默

原创 AppOps原理

1.AppOps簡介 AppOps全稱是 Application Operations,類似我們平時常說的應用程序的操作(權限)管理。AppOps是Google原生Android包含的功能,但是Google在每次版本更新時都會隱藏

原创 Android 傳遞數據

1.Intent 向下一個活動傳遞數據 Intent啓動活動的時候傳遞數據其實很簡單,Intent提供了一系列putExtra()方法的重載,可以把我們想要傳遞的數據暫存在Intent中,啓動了另一個活動後,只需把這些數據從Int

原创 Android ListView

1.ListView的簡單使用 在佈局中加入ListView控件,先爲ListView指定一個id,然後將寬度和高度設爲match_parent,這樣ListView就佔滿了整個佈局空間. <LinearLayout xmlns:

原创 Android 數據共享

ContentProvider的概述 由官方的定義我們可以得知它是一個管理訪問結構化數據的機制。我們系統中有些數據很重要,不能讓人隨便訪問,但是因爲比較有價值,所以很多應用程序需要用到它,這是就可通過ContentProvid

原创 Android 常用控件

1.TextView <TextView android:id="@+id/text_view" android:layout_width="match_parent" android:Layout_hei

原创 Android RelativeLayout

RelativeLayout又稱爲相對佈局,也是一種常用的佈局,和LinearLayout的排列規則不同,RelativeLayout顯得更加隨意一些,它可以通過相對定位的方式讓控件出現在佈局的任何位置 <RelativeLayo

原创 ContentObserver 的原理

ContentObserver——內容觀察者,目的是觀察(捕捉)特定Uri引起的數據庫的變化,繼而做一些相應的處理,它類似於數據庫技術中的觸發器(Trigger),當ContentObserver所觀察的Uri發生變化時,便會觸發

原创 Android ContentProvider

在自己的應用程序中訪問其他應用程序的數據,只需要獲取到該應用程序的內容Uri,然後藉助ContentResolver進行CRUD操作就可以了.那些提供外部訪問接口的應用程序都是如何實現這種功能的,怎樣保證數據的安全性,使得隱私數據不會泄露

原创 Android 運行時權限

1.Android權限機制詳解 訪問系統的網絡狀態以及監聽開機廣播,在AndroidManifest.xml中添加權限聲明 <manifest xmlns:android="http://schemas.android.com/apk/