在Android中利用PkgUsageStats获取app的运行时间时,ComponentName name=applicationInfo.intent.getComponent();这段代码是什么意思,为什么在Eclipse中老是说intent不是一个域
public long getTime(ApplicationInfo applicationInfo){
ComponentName name=applicationInfo.intent.getComponent();
long useTime;
try{
Class<?> ServiceManager=Class.forName("android.os.ServiceManager");
Method getService=ServiceManager.getMethod("getService",java.lang.String.class);
Object onRemoteService=getService.invoke(null, "usageStats");
Class<?> cStub=Class.forName("com.android.internal.app.IUsageStats$Stub");
Method asInteface=cStub.getMethod("anInteface",android.os.IBinder.class);
Object oIUsageStats=asInteface.invoke(null, onRemoteService);
Method getPkgUsageStats=oIUsageStats.getClass().getMethod("getPkgUsageStats",ComponentName.class);
Object state=getPkgUsageStats.invoke(oIUsageStats, name);
Class<?> PkgUsageStats=Class.forName("com.android.internal.os.PkgUsageStats");
//lounchCount=PkgUsageStats.getDeclaredField("lacnchCount").getInt(state);
useTime=PkgUsageStats.getDeclaredField("usageTime").getInt(state);
appInfo.setUseTime(useTime);
}
catch(Exception e){
e.printStackTrace();
}
return applicationInfo.getUseTime();
}
这是源码,大神帮我看看