当前位置:首页 » 安卓系统 » android反射

android反射

发布时间: 2022-01-14 04:33:47

A. android怎样利用反射跳转某个fragment

package

com.zhy.zhy_fragments;

import

android.app.Fragment;
import

android.os.Bundle;
import

android.view.LayoutInflater;
import

android.view.View;
import

android.view.View.OnClickListener;
import

android.view.ViewGroup;
import

android.widget.Button;

public

class
FragmentOne extends

Fragment implements

OnClickListener
{
private

Button mBtn;

/**
*
设置按钮点击的回调
*
@author zhy
*
*/
public

interface
FOneBtnClickListener
{
void

onFOneBtnClick();
}

@Override
public

View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle
savedInstanceState)
{
View
view = inflater.inflate(R.layout.fragment_one, container, false);
mBtn
= (Button) view.findViewById(R.id.id_fragment_one_btn);
mBtn.setOnClickListener(this);
return

view;
}

/**
*

B. android.telephony.telephonymanager怎么反射调用

TelephonyManager tm = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
/**
* 返回电话状态
*
* CALL_STATE_IDLE 无任何状态时
* CALL_STATE_OFFHOOK 接起电话时
* CALL_STATE_RINGING 电话进来时
*/
tm.getCallState();
//返回当前移动终端的位置
CellLocation location=tm.getCellLocation();
//请求位置更新,如果更新将产生广播,接收对象为注册LISTEN_CELL_LOCATION的对象,需要的permission名称为ACCESS_COARSE_LOCATION。
location.requestLocationUpdate();

C. android 怎么用反射机制加载资源

一、反射的概念及在java中的类反射
反射主要是指程序可以访问、检测和修改它本身状态或行为的一种能力。在计算机科学领域,反射是一类应用,它们能够自描述和自控制。这类应用通过某种机制来实现对自己行为的描述和检测,并能根据自身行为的状态和结果,调整或修改应用所描述行为的状态和相关的语义。
在Java中的反射机制,被称为Reflection(大家看到这个单词,第一个想法应该就是去开发文档中搜一下了)。它允许运行中的Java程序对自身进行检查,并能直接操作程序的内部属性或方法。Reflection机制允许程序在正在执行的过程中,利用Reflection APIs取得任何已知名称的类的内部信息,包括:package、 type parameters、 superclass、 implemented interfaces、 inner classes、 outer classes、 fields、 constructors、 methods、 modifiers等,并可以在执行的过程中,动态生成Instances、变更fields内容或唤起methods。
好,了解这些,那我们就知道了,我们可以利用反射机制在Java程序中,动态的去调用一些protected甚至是private的方法或类,这样可以很大程度上满足我们的一些比较特殊需求。你当然会问,反射机制在Android平台下有何用处呢?
我们在进行Android程序的开发时,为了方便调试程序,并快速定位程序的错误点,会从网上下载到对应版本的Android SDK的源码(这里给大家提供一个2.3.3版本的下载链接)。你会发现很多类或方法中经常加上了“@hide”注释标记,它的作用是使这个方法或类在生成SDK时不可见,那么我们的程序可能无法编译通过,而且在最终发布的时候,就可能存在一些问题。
那么,对于这个问题,第一种方法就是自己去掉Android源码中的"@hide"标记,然后重新编译生成一个SDK。另一种方法就是使用Java反射机制了,可以利用这种反射机制访问存在访问权限的方法或修改其域。
废话半天,该入正题了,在进入正题之前,先给上一个反射测试类的代码,该代码中定义了我们需要进行反射的类,该类并没有实际的用途,仅供做为测试类。提示:本文提供的代码,并不是Android平台下的代码,而是一个普通的Java程序,仅仅是对Java反射机制的Demo程序,所以大家不要放在Android下编译啊,否则出现问题,别追究我的责任啦!
ReflectionTest.java
package crazypebble.reflectiontest;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.Serializable;

public class ReflectionTest extends Object implements ActionListener,Serializable{
// 成员变量
private int bInt;
public Integer bInteger = new Integer(4);
public String strB = "crazypebble";
private String strA;

// 构造函数
public ReflectionTest() {

}

protected ReflectionTest(int id, String name) {

}

// 成员方法
public int abc(int id, String name) {
System.out.println("crazypebble ---> " + id + "-" + name);
return 0;
}

protected static void edf() {

}

@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub

}

}

D. 您好!我想问下android中隐藏的接口 用反射怎么来实现谢谢啦 帮个忙

你这有问题啊,反射只能拿到方法,是需要你自己去实现onCapture
invoke(int[] byte)方法调用的,你都不知道哪里调了他这个方法,怎么可能拿到具体数据值

E. android 可以反射到另一个应用里面的类么

一个app不可以直接访问另一个app的类。如果非要实现进程间通信,可以通过aidl做。可以考虑采用jar包的方式,将app B 打成jar文件 导入到 app A 中 就可以实现了。在应用中可以反射到类似framework里面的 diaolog activity这些类,是因为import了这些类,所以在这些包以jar的形式编译到应用。相反,是因为以jar的形式编译到了应用,才有了import。如果没有jar,就import不了。

F. android 中是否合适使用反射机制,如果可以,应该用在哪些地方使用,要注意什么问题,如果不合适,为什么呢

当然适合。
父类中的私有变量和方法想在子类中访问用反射就能实现。
比如默认dialog的确定和取消按键都会让dialog消失,如果不想让dialog消失,那么用反射就能实现。
当然如果能通过重写父类方法的地方就不用反射。

G. android 什么是反射

-什么是反射机制?

反射机制是在运行状态中,对于任意一个类(Class),都能够知道这个类的所有属性和方法(Method);对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。

-反射机制能做什么?

主要功能:调用隐藏API,即标注了 @hide 的方法。

其他:

在运行时判断任意一个对象所属的类;

在运行时构造任意一个类的对象;

在运行时判断任意一个类所具有的成员变量和方法;

在运行时调用任意一个对象的方法;

生成动态代理。

-注意事项?

Google之所以要将一些API隐藏(指加上@hide标记的public类、方法或常量)是有原因的。其中很大的原因就是Android系统本身还在不断的进化发展中。从1.0、1.1到现在即将问世的Android2.3.4。这些隐藏的API本身可能是不稳定的,所以,使用隐藏API,意味着程序更差的兼容性。

如果要我给出建议的话,最好还是不要使用隐藏的API。不过有时为了实现Android应用某些特殊的功能或者效果,隐藏的API往往能发挥意想不到的作用。这些API具体能做些什么事,我就不在这里举例了。正好,如果你不知道隐藏API能做什么的话,那么还是尽早放弃使用它们吧……

引用内容自:

ke.xsoftlab.net/view/209.html

blog.sina.com.cn/s/blog_5da93c8f0101e1yj.html

H. 在Android中使用反射到底有多慢

第一个案例是纽约时报安卓客户端。在NimbleDroid的帮助下,纽约时报的开发者发现Gson中的typeadapter使用了反射,增加了APP700毫秒的启动时间,他们通过自行实现自定义的typeadapter解决了这一问题。第二个案例是大型图片分享平台Photobucket

I. 身为android猿,反射何时用

蓝手指模拟器怎么用?可能大家对这个蓝手指模拟器比较陌生,其实就是BlueStacks模拟器,下面绿茶小编教大家使用蓝手指给力助手安装蓝手指模拟器方法,希望大家喜欢。 蓝手指模拟器下载安装使用图文教程: 第一步、下载给力助手 第二步、给力助手的安装: 1、下载完成,先进行解压缩(使用WinZip、WinRAR等工具,没有的话在360软件管家 里找个免费版的,一键下载安装即可)。解压完成后先阅读一下文件夹中的说明书,然后鼠标左键双击“给力助手安装程序.exe”如下图图标: 蓝手指模拟器怎么用 蓝手指安卓模拟器下载安装使用教程图1 2、这时候给力助手会对您的系统做一次简单检测,如果发现系统中缺少安装蓝手指模拟器必须的插件,如Windows Installer 4.5;. .NET Framework 2.0 SP2 等,就会提示您安装,按提示确认操作就行了,它会替您自动下载安装。如果系统环境都已经达到安装要求,我们可以在窗口点击下一步继续,如下图: 蓝手指模拟器怎么用 蓝手指安卓模拟器下载安装使用教程图2 3、确认安装路径,最好不要按照默认的去装,假如你的电脑还有D、E等其他分区的话,就把路径开头的C改成D或E等,而不要直接去选某个盘,因为那样很容易把软件直接装到某盘的根目录下,看起来很凌乱,以后不好维护。此外,C盘是系统盘,要预留足够多的运行空间,所以可以不装其中的软件尽量不往里装,除非那些必须在C盘下才能运行的软件,比如BlueStacks模拟器。继续看图: 蓝手指模拟器怎么用 蓝手指安卓模拟器下载安装使用教程图3 4、决定好路径后还是鼠标左键单击下一步,然后再单击安装按钮开始安装

J. android 怎么用反射获取对象

通过类名获取类。 Class serviceManager = Class.forName("Android.os.ServiceManager"); 获取方法 Method method = serviceManager.getMethod("getService

热点内容
php判断字符开头 发布:2024-11-15 00:35:33 浏览:507
网易苹果游戏怎么转移到安卓 发布:2024-11-15 00:07:52 浏览:270
win7php环境搭建 发布:2024-11-15 00:06:55 浏览:17
erpjava 发布:2024-11-14 23:52:23 浏览:253
电脑版地平线四怎么连上服务器 发布:2024-11-14 23:46:42 浏览:472
ios怎么变安卓 发布:2024-11-14 23:46:36 浏览:333
win7共享xp打印机拒绝访问 发布:2024-11-14 23:45:29 浏览:750
引起资源配置失效的原因有哪些 发布:2024-11-14 23:35:22 浏览:15
c语言打字 发布:2024-11-14 23:11:06 浏览:893
存储程序和程序控制的原理 发布:2024-11-14 22:53:23 浏览:323