我註冊了一個BroadcastReceiver來接收SystemService中的SMS,但是我們沒有「android.permission.RECEIVE_SMS」的許可。那麼如何在android框架中使用權限呢?在SystemService中,它的上下文是從ActivityManagerService.main()獲取的。如何使用android框架內的權限?
public void setWindowManager(WindowManagerService wm) {
mWindowManager = wm;
}
public static final Context main(int factoryTest) {
AThread thr = new AThread();
thr.start();
synchronized (thr) {
while (thr.mService == null) {
try {
thr.wait();
} catch (InterruptedException e) {
}
}
}
ActivityManagerService m = thr.mService;
mSelf = m;
ActivityThread at = ActivityThread.systemMain();
mSystemThread = at;
Context context = at.getSystemContext();
m.mContext = context;
m.mFactoryTest = factoryTest;
PowerManager pm =
(PowerManager)context.getSystemService(Context.POWER_SERVICE);
m.mGoingToSleep = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "ActivityManager-Sleep");
m.mLaunchingActivity = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "ActivityManager-Launch");
m.mLaunchingActivity.setReferenceCounted(false);
m.mBatteryStatsService.publish(context);
m.mUsageStatsService.publish(context);
synchronized (thr) {
thr.mReady = true;
thr.notifyAll();
}
m.startRunning(null, null, null, null);
return context;
}
SystemService在android框架中運行,其上下文是系統上下文。並沒有一個AndroidManifest.xml – Yong 2010-11-27 15:51:39