l625430264 2021-06-06 16:23 采纳率: 0%
浏览 155

隐式intent使用android studio不报错,但是在手机上测试闪退

package com.example.activitytest;

import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;

import android.content.Intent;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;

public class FirstActivity extends AppCompatActivity {

    /*
        显示菜单
     */
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.main,menu);     //得到对象创建对象 创建菜单
        return true;                //表示允许创建的菜单显示出来
    }

    @Override
    public boolean onOptionsItemSelected(@NonNull MenuItem item) {  //监听器
        switch (item.getItemId()){
            case R.id.add_item:
                Toast.makeText(this,"You clicked Add",Toast.LENGTH_SHORT).show();
                break;
            case R.id.remove_item:
                Toast.makeText(this,"You clicked Remove",Toast.LENGTH_SHORT).show();
                break;
            default:
        }
        return true;
    }

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.first_layout);
        Button button1 = (Button) findViewById(R.id.button_1);
        button1.setOnClickListener(new View.OnClickListener() {     //监听器点击事件
            @Override
            public void onClick(View v) {
                //隐式INTENT
                Intent intent = new Intent("com.example.avtivitytest.ACTION_START");
                intent.addCategory("ndroid.intent.cetegory.DEFAULT");
                /*显式INTENT
                    构建Intent 传入上下文,传入目标活动     即在FirstActivity这个活动的基础上打开SecondActivity
                    点击Button(活动)页面跳转
                */
                //Intent intent = new Intent(FirstActivity.this,SecondActivity.class);
                startActivity(intent);  //执行intent

                //finish();   //  点击按钮销毁活动
                /*
                    提醒             活动上下文        提醒的内容               时间
                 */
                //Toast.makeText(FirstActivity.this,"you clicked Button 1",Toast.LENGTH_SHORT).show();
            }
        });
    }
}

已经配置了活动

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.activitytest">

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/Theme.ActivityTest">
            <!--只有action和category中的内容同时能够匹配上Intent中指定的action和category时这个活动才能响应Intent-->
        <activity android:name=".SecondActivity">
            <intent-filter>
                <action android:name="com.example.activitytest.ACTION_START"/>
                <category android:name="android.intent.cetegory.DEFAULT"/>
            </intent-filter>
        </activity>
        <activity android:name=".FirstActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>

E/AndroidRuntime: FATAL EXCEPTION: main<br />     Process: com.example.activitytest, PID: 17003<br />     android.content.ActivityNotFoundException: No Activity found to handle Intent { act=com.example.avtivitytest.ACTION_START cat=[ndroid.intent.cetegory.DEFAULT] }<br />         at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:2067)<br />         at android.app.Instrumentation.execStartActivity(Instrumentation.java:1727)<br />         at android.app.Activity.startActivityForResult(Activity.java:5320)<br />         at androidx.fragment.app.FragmentActivity.startActivityForResult(FragmentActivity.java:676)<br />         at android.app.Activity.startActivityForResult(Activity.java:5278)<br />         at androidx.fragment.app.FragmentActivity.startActivityForResult(FragmentActivity.java:663)<br />         at android.app.Activity.startActivity(Activity.java:5664)<br />         at android.app.Activity.startActivity(Activity.java:5617)<br />         at com.example.activitytest.FirstActivity$1.onClick(FirstActivity.java:55)<br />         at android.view.View.performClick(View.java:7448)<br />         at com.google.android.material.button.MaterialButton.performClick(MaterialButton.java:967)<br />         at android.view.View.performClickInternal(View.java:7425)<br />         at android.view.View.access$3600(View.java:810)<br />         at android.view.View$PerformClick.run(View.java:28305)<br />         at android.os.Handler.handleCallback(Handler.java:938)<br />         at android.os.Handler.dispatchMessage(Handler.java:99)<br />         at android.os.Looper.loop(Looper.java:223)<br />         at android.app.ActivityThread.main(ActivityThread.java:7656)<br />         at java.lang.reflect.Method.invoke(Native Method)<br />         at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592)<br />         at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947)
 

  • 写回答

1条回答 默认 最新

  • 简单吗 2021-06-07 14:38
    关注

    代码里 android  单词  少个 ‘a’?

    评论

报告相同问题?

悬赏问题

  • ¥50 导入文件到网吧的电脑并且在重启之后不会被恢复
  • ¥15 (希望可以解决问题)ma和mb文件无法正常打开,打开后是空白,但是有正常内存占用,但可以在打开Maya应用程序后打开场景ma和mb格式。
  • ¥15 绘制多分类任务的roc曲线时只画出了一类的roc,其它的auc显示为nan
  • ¥20 ML307A在使用AT命令连接EMQX平台的MQTT时被拒绝
  • ¥20 腾讯企业邮箱邮件可以恢复么
  • ¥15 有人知道怎么将自己的迁移策略布到edgecloudsim上使用吗?
  • ¥15 错误 LNK2001 无法解析的外部符号
  • ¥50 安装pyaudiokits失败
  • ¥15 计组这些题应该咋做呀
  • ¥60 更换迈创SOL6M4AE卡的时候,驱动要重新装才能使用,怎么解决?