您的位置:首页 > 移动开发 > Android开发

activity能被其他的AP启动的条件 or android permission denied : starting Intent

2010-05-18 17:59 197 查看
今天在从一个AP中跳到一个另外一个AP的时候遇到如下的异常:

E/AndroidRuntime(13403): java.lang.SecurityException: Permission Denial: startin
g Intent { flags=0x10000000 comp={com.android.setting/com.android.setting.alarm.
Alarm} } from ProcessRecord{43768a40 13403:com.android.modleactivity/10021} (pid
=13403, uid=10021) requires null
E/AndroidRuntime(13403):        at android.os.Parcel.readException(Parcel.java:1
234)
E/AndroidRuntime(13403):        at android.os.Parcel.readException(Parcel.java:1
222)
E/AndroidRuntime(13403):        at android.app.ActivityManagerProxy.startActivit
y(ActivityManagerNative.java:1046)
E/AndroidRuntime(13403):        at android.app.Instrumentation.execStartActivity
(Instrumentation.java:1449)
E/AndroidRuntime(13403):        at android.app.Activity.startActivityForResult(A
ctivity.java:2656)
E/AndroidRuntime(13403):        at com.android.modleactivity.ModleActivity$3.onC
lick(ModleActivity.java:271)
E/AndroidRuntime(13403):        at android.view.View.performClick(View.java:2179
)
E/AndroidRuntime(13403):        at android.view.View.onTouchEvent(View.java:3828
)
E/AndroidRuntime(13403):        at android.view.View.dispatchTouchEvent(View.jav
a:3368)
E/AndroidRuntime(13403):        at android.view.ViewGroup.dispatchTouchEvent(Vie
wGroup.java:863)
E/AndroidRuntime(13403):        at android.view.ViewGroup.dispatchTouchEvent(Vie
wGroup.java:863)
E/AndroidRuntime(13403):        at android.view.ViewGroup.dispatchTouchEvent(Vie
wGroup.java:863)
E/AndroidRuntime(13403):        at android.view.ViewGroup.dispatchTouchEvent(Vie
wGroup.java:863)
E/AndroidRuntime(13403):        at android.view.ViewGroup.dispatchTouchEvent(Vie
wGroup.java:863)
E/AndroidRuntime(13403):        at com.android.internal.policy.impl.PhoneWindow$
DecorView.superDispatchTouchEvent(PhoneWindow.java:1707)
E/AndroidRuntime(13403):        at com.android.internal.policy.impl.PhoneWindow.
superDispatchTouchEvent(PhoneWindow.java:1197)
E/AndroidRuntime(13403):        at android.app.Activity.dispatchTouchEvent(Activ
ity.java:1993)
E/AndroidRuntime(13403):        at com.android.internal.policy.impl.PhoneWindow$
DecorView.dispatchTouchEvent(PhoneWindow.java:1691)
E/AndroidRuntime(13403):        at android.view.ViewRoot.handleMessage(ViewRoot.
java:1525)
E/AndroidRuntime(13403):        at android.os.Handler.dispatchMessage(Handler.ja
va:99)
E/AndroidRuntime(13403):        at android.os.Looper.loop(Looper.java:123)
E/AndroidRuntime(13403):        at android.app.ActivityThread.main(ActivityThrea
d.java:3948)
E/AndroidRuntime(13403):        at java.lang.reflect.Method.invokeNative(Native
Method)
E/AndroidRuntime(13403):        at java.lang.reflect.Method.invoke(Method.java:5
21)
E/AndroidRuntime(13403):        at com.android.internal.os.ZygoteInit$MethodAndA
rgsCaller.run(ZygoteInit.java:782)
E/AndroidRuntime(13403):        at com.android.internal.os.ZygoteInit.main(Zygot
eInit.java:540)
E/AndroidRuntime(13403):        at dalvik.system.NativeStart.main(Native Method)




google一下才发现原因。因为我启动的另外 一个AP的activity不是默认启动的activity,所以导致这样的异常。要在需要启动的activity的

AndroidManifest.xml中添加如下代码:

<intent-filter> 
<action android:name="android.intent.action.MAIN"></action> 
</intent-filter>




在此做个记录。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: