Context字面意思上下文,位於framework package的android.content.Context中,其實該類爲LONG型,類似Win32中的Handle句柄,很多方法需要通過Context才能識別調用者的實例,比如說Toast的第一個參數就是Context,一般在Activity中我們直接用this代替,代表調用者的實例爲Activity,而到了一個button的onClick(View view)等方法時,我們用this時就會報錯,所以我們可能使用ActivityName.this來解決,主要原因是因爲實現Context的類主要有Android特有的幾個模型,Activity、Service以及BroadcastReceiver。
常規需要Context實例的方法主要有各種Service實現的類,比如說SensorManager在實例化時需要getSystemService(String)方法就必須由Context的實例執行,還有一些私有的文件系統I/O比如說openFileInput以及常用的Toast的makeText方法。