当前位置:   article > 正文

[安卓开发基础] Intent ComponentName 启动Activity 报错: android.content.ActivityNotFoundException_import android.content.intent;报错

import android.content.intent;报错

1.使用 Intent  启动 不同包名 的Activity 报错:

12-19 16:22:15.341 21558-21558/com.zengjx.androidbaseproject E/AndroidRuntime: FATAL EXCEPTION: main
                                                                               Process: com.zengjx.androidbaseproject, PID: 21558
                                                                               android.content.ActivityNotFoundException: Unable to find explicit activity class {com.test/com.test.TestActivity}; have you declared this activity in your AndroidManifest.xml?
                                                                                   at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1804)
                                                                                   at android.app.Instrumentation.execStartActivity(Instrumentation.java:1528)
                                                                                   at android.app.Activity.startActivityForResult(Activity.java:3788)
                                                                                   at android.support.v4.app.BaseFragmentActivityApi16.startActivityForResult(BaseFragmentActivityApi16.java:54)
                                                                                   at android.support.v4.app.FragmentActivity.startActivityForResult(FragmentActivity.java:67)
                                                                                   at android.app.Activity.startActivityForResult(Activity.java:3749)
                                                                                   at android.support.v4.app.FragmentActivity.startActivityForResult(FragmentActivity.java:720)
                                                                                   at android.app.Activity.startActivity(Activity.java:4059)
                                                                                   at android.app.Activity.startActivity(Activity.java:4027)
                                                                                   at com.zengjx.androidbaseproject.IntentActivity$1.onClick(IntentActivity.java:29)
                                                                                   at android.view.View.performClick(View.java:4781)
                                                                                   at android.view.View$PerformClick.run(View.java:19874)
                                                                                   at android.os.Handler.handleCallback(Handler.java:739)
                                                                                   at android.os.Handler.dispatchMessage(Handler.java:95)
                                                                                   at android.os.Looper.loop(Looper.java:135)
                                                                                   at android.app.ActivityThread.main(ActivityThread.java:5271)
                                                                                   at java.lang.reflect.Method.invoke(Native Method)
                                                                                   at java.lang.reflect.Method.invoke(Method.java:372)
                                                                                   at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:902)
                                                                                   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:697)

2.被启动的Activty 在  com.test 包名下

.

主Activity:

  1. package com.zengjx.androidbaseproject;
  2. import android.content.ComponentName;
  3. import android.content.Intent;
  4. import android.support.v7.app.AppCompatActivity;
  5. import android.os.Bundle;
  6. import android.view.View;
  7. import android.widget.Button;
  8. public class IntentActivity extends AppCompatActivity {
  9. Button btn_start;
  10. @Override
  11. protected void onCreate(Bundle savedInstanceState) {
  12. super.onCreate(savedInstanceState);
  13. setContentView(R.layout.activity_intent);
  14. btn_start=(Button)findViewById(R.id.btn_start);
  15. btn_start.setOnClickListener(new View.OnClickListener() {
  16. @Override
  17. public void onClick(View view) {
  18. 同一个包名下可以启动
  19. // ComponentName componentName=new ComponentName("com.zengjx.androidbaseproject","com.zengjx.androidbaseproject.TimerActivity");
  20. // ComponentName componentName=new ActivityNotFoundException 不同启动失败ComponentName("com.zengjx.fragment","com.zengjx.fragment.DemoFragmentActivity");
  21.  
  22. ComponentName componentName=new ComponentName("com.test","com.test.TestActivity");
  23. Intent intent =new Intent();
  24. intent.setComponent(componentName);
  25. startActivity(intent);
  26. }
  27. });
  28. }
  29. }

3.AndroidMenifest.xml  :

<activity android:name="com.test.TestActivity"
    android:exported="true"

    />

 

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/2023面试高手/article/detail/288883
推荐阅读
相关标签
  

闽ICP备14008679号