2024年3月14日发(作者:)

Android Launcher开发教程

本文来自:

Launcher这个类乍一看,好多函数好多变量好像很复杂,不急,这需要慢慢的梳理。

从最上面的onCreate函数开始看起:

在这里为了调用framework那层中自己添加的一个类,所以使用了反射技术。

代码

Method method = null;

Class myclass = null;

myclass = e("idgetHost"); //查找指

定类名的类

Class[] paramtersList = {, }; //构造函数参数列表

uctor constructor = structor(paramter

sList);

//根据参数列表获得构造函数

Object[] arg= new Object[] { this, f(APPWIDGET_HOST_ID)};

//为构造函数写好参数

mObject = tance(arg); //调用构造函数获得类实例

mAppWidgetHost = (AppWidgetHost) mObject; //基类转换

if (myclass != null) {

DBLog.d(TAG, "idgetHost found");

method = laredMethod("startListening", null); //根据函数名获

得函数实例

(mObject, null); //调用函数

上述技术主要是为了监听Widget状态变化,用于更新Widget状态。

技术点 如何设置屏幕虚拟尺寸?

1、通过getSystemService获得wallpaperManager的实例;

2、调用suggestDesiredDimensions,设定横竖轴虚拟宽度;Launcher中,设横为