使用Android Studio开发widget安卓桌面插件
公司做一個(gè)項(xiàng)目需要用到的功能就是安卓桌面插件,由于是第一次做安卓桌面插件,去找相關(guān)的資料,有去google官網(wǎng)看相關(guān)的API文檔。官方文檔的連接 http://www.android-doc.com/guide/topics/appwidgets/index.html
我們?cè)谑褂胊ndroid Studio 后面簡(jiǎn)稱AS,做插件功能的時(shí)候,它其實(shí)有自動(dòng)生成的,不需要我們?cè)偃プ约号渲貌寮膶捀叱叽缌说?#xff0c;
用AS新建一個(gè)測(cè)試項(xiàng)目,項(xiàng)目創(chuàng)建好后再按照如下圖片去創(chuàng)建插件
點(diǎn)擊App Widget 后就出現(xiàn)如下對(duì)話框
這里我們是可以選擇它顯示的單元格的,如果是1x1的插件的話 就按照上面圖片所選擇的,點(diǎn)擊finish按鈕
如果不是這個(gè)尺寸的單元格,就在紅色框里面做相應(yīng)的選擇即可,選著完成之后就點(diǎn)擊finish按鈕。
之后就來(lái)到這個(gè)界面
生成是可能會(huì)報(bào)錯(cuò),不用管它,點(diǎn)擊紅色框中的運(yùn)行按鈕或者編譯按鈕,報(bào)錯(cuò)就會(huì)消失
我這里沒有點(diǎn)擊編譯按鈕,直接點(diǎn)擊運(yùn)行按鈕之后錯(cuò)誤就消失了,
它制動(dòng)生成的插件這個(gè)類里面是沒有onReciver這個(gè)方法的,所以我們這里要自己加上onReciver這個(gè)方法,因?yàn)楹竺嫘枰玫竭@個(gè)onReciver這個(gè)方法,加上之后的效果圖
上圖紅色框中的就是那個(gè)onReciver這個(gè)方法
如果在桌面創(chuàng)建插件時(shí),先要跳轉(zhuǎn)到一個(gè)activity界面,還需要做如下的的處理,首先我們要在創(chuàng)建一個(gè)類以及在layout文件夾下創(chuàng)建對(duì)應(yīng)的布局,創(chuàng)建之后的效果圖如下
之后要在資源文件中的xml文件夾下 打開new_app_widget_info.xml文件做如下圖的配置
配置好后如上圖中紅色框,這只是在資源文件夾下做相應(yīng)的配置。接下來(lái),還要在 androidManifest.xml中做配置,要不然是不會(huì)顯示activity界面的 配置之后的效果圖如下
配置的代碼如下:
<activity android:name=".WidgetActivity"android:configChanges="locale|layoutDirection"android:screenOrientation="portrait"android:windowSoftInputMode="adjustResize|stateHidden"><intent-filter><action android:name="android.appwidget.action.APPWIDGET_CONFIGURE" /></intent-filter></activity>運(yùn)行之后的效果就是該activity界面顯示空白,因?yàn)槲覀儧]有在布局做相應(yīng)的處理。點(diǎn)擊手機(jī)或者模擬器上的返回按鈕,最后插件是沒有顯示在桌面上的。
如果想看官網(wǎng)的相關(guān)demo 點(diǎn)擊上面此鏈接
http://www.android-doc.com/guide/topics/appwidgets/index.html#UpdatingFromTheConfiguration
點(diǎn)擊下圖中紅色框中的內(nèi)容即可跳轉(zhuǎn)到demo
按照此demo 就可以完成上面創(chuàng)建插件的時(shí)候跳轉(zhuǎn)到界面,再返回就可以生成插件了。
最后插件它和應(yīng)用里面的activity不同,它使用控件是用一些限制的。它支持的控件如下圖所示
我也是一個(gè)菜鳥來(lái)的,喜歡大神們看到此博客不要笑話我這樣的菜鳥,你們大神每給一次鼓勵(lì),就是我們這些菜鳥技術(shù)提升的動(dòng)力。
后續(xù)有時(shí)間我再寫widget插件實(shí)現(xiàn)換頁(yè)的功能。我看了很多資料,插件實(shí)現(xiàn)換頁(yè)功能的demo 還是比較少的。
總結(jié)
以上是生活随笔為你收集整理的使用Android Studio开发widget安卓桌面插件的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: ASEMI-PL3369C电源管理芯片I
- 下一篇: Android5.1开机LOGO与开机动