//根据类的全名拿到类的Class
val powerProfile = Class.forName("com.android.internal.os.PowerProfile")
//获取该类的构造函数
val constructor = powerProfile.getConstructor(Context::class.java)
//使用构造函数实例化一个该类的对象
val obj = constructor.newInstance(applicationContext)
//获取该类的某一个方法
val method = powerProfile.getMethod("getBatteryCapacity")
//获取该类的所有方法
val methods = powerProfile.methods
for (m in methods){
Log.d("ZHJ","${m.name}")
}
//使用对象调用方法
val d = method.invoke(obj)
【Android支持】android开发中使用反射(kotlin)
于 2023-08-21 17:24:58 首次发布