Android桌面小控制項appwidget的故事

2021-08-31 01:36:32 字數 2742 閱讀 9440

android版本:8.1

android:name=

android:resource=

"@xml/dialer_calllog_widget_xml"

>

<

/meta-data>

在resource裡,新增xml資源檔案,格式如下

""android:initiallayout=

"@layout/widget_dialer_calllog_layout"

//初始化時載入的布局

android:minheight=

"160dip"

//最小顯示高度

android:minwidth=

"100dip"

//最小顯示寬度

android:resizemode=

"horizontal|vertical"

//拖動拉伸時可以拖動的方向

android:widgetcategory=

"home_screen|keyguard"

android:previewimage=

"@drawable/empty_call_log"

//小控制項在launcher新增時的圖示

android:updateperiodmillis=

"86400000"

>

//預設更新頻率

70*n-

30 width =

180 height =

250--

>

<

經過這樣的設定,我們就可以在launcher桌面新增小控制項的時候看到我們自定義的小控制項了。

public

void

onreceive

(context context, intent intent)}}

}

@override

public

void

onupdate

int[

public

void

(int

[try

catch

(remoteexception e)}--

-private

呼叫的是遠端aidl, 追蹤可以發現,

public

(context context)

獲得的是系統服務,

public

class

extends

systemservice

這個服務是在systemserver裡啟動的,和其他系統服務一起啟動。

if

(mpackagemanager.

hassystemfeature

|| context.

getresources()

.getboolean

)

@override

public

void

(string callingpackage,

int[

remoteviews views)

false);

}---private

void

(string callingpackage,

int[

remoteviews views,

boolean partially)}}

}---private

void

(widget widget, remoteviews views,

boolean ispartialupdate)}--

-private

void

(widget widget, remoteviews updateviews)

在callbackhandler裡

break;--

-private

void

long requestid)

catch

(remoteexception re)}}

static

class

callbacks

extends

public

void

( handler handler = mweakhandler.

get();

if(handler == null)

message msg = handler.

obtainmessage

0, views)

; msg.

sendtotarget()

;}}--

- ↓

case handle_update:

↓void(if

(v != null)

}

public

void

(remoteviews remoteviews)

public

class

extends

framelayout

桌面懸浮小控制項

受益於 寫的很好 一 首先需要兩個許可權 1.這個是感知桌面的許可權 2.獲取桌面狀態 二 然後需要來乙個自定義控制項 做乙個最簡單的,乙個紅色的小球。public class myview extends linearlayout public void setparams android.vie...

Android 管理Android手機桌面

android 管理android手機桌面 沒有接觸手機程式設計之前,我就很好奇,那些主題背景和動態桌布是如何做出來的,如何把圖示放到手機桌面上,學習了關於管理android手機桌面之後,我大致了解了這些內容,算是掃了一下盲了。我相信只要用過一段android系統手機的使用者,對於手機桌面的操作是非...

Android控制項

edittext是輸入文字框,可以進行文字編輯 imageview是顯示的乙個控制項 android id 控制項的id android layout width 控制項的寬度 android layout height 控制項的高度 還有一下屬性 android text 文字內容 android...