Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/43.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android getIntent返回null_Android_Android Intent - Fatal编程技术网

Android getIntent返回null

Android getIntent返回null,android,android-intent,Android,Android Intent,我遇到了很多类似的问题,但我无法解决它,即使我用正确的方式做 我用以下方式发送字符串: Intent intent = new Intent(this,MainActivity.class); intent.putExtra("APP_PACKAGE_EXTRAS", "com.facebook.katana"); if (null != intent) { startActivity(intent); }

我遇到了很多类似的问题,但我无法解决它,即使我用正确的方式做

我用以下方式发送字符串:

        Intent intent = new Intent(this,MainActivity.class);
        intent.putExtra("APP_PACKAGE_EXTRAS", "com.facebook.katana");

        if (null != intent) {
            startActivity(intent);
        }
        Intent IntentExtras = getIntent();
        String Package = IntentExtras.getExtras().getString("APP_PACKAGE_EXTRAS");
我通过以下方式接收:

        Intent intent = new Intent(this,MainActivity.class);
        intent.putExtra("APP_PACKAGE_EXTRAS", "com.facebook.katana");

        if (null != intent) {
            startActivity(intent);
        }
        Intent IntentExtras = getIntent();
        String Package = IntentExtras.getExtras().getString("APP_PACKAGE_EXTRAS");
我得到了NPE,为什么?

使用

  Intent intentExtras = getIntent();
        String Package = intentExtras.getStringExtra("APP_PACKAGE_EXTRAS");
而不是

  Intent IntentExtras = getIntent();
        String Package = IntentExtras.getExtras().getString("APP_PACKAGE_EXTRAS");

发送方

    Intent intent = new Intent(this,MainActivity.class);
    intent.putExtra("APP_PACKAGE_EXTRAS", "com.facebook.katana");
    startActivity(intent);
  if(intent.getExtras() == null) {

       Log.e("null",null);

    } else {

   Package=getIntent().getExtras().getString("APP_PACKAGE_EXTRAS");

    Log.e("Package", Package);

    }
接收器

    Intent intent = new Intent(this,MainActivity.class);
    intent.putExtra("APP_PACKAGE_EXTRAS", "com.facebook.katana");
    startActivity(intent);
  if(intent.getExtras() == null) {

       Log.e("null",null);

    } else {

   Package=getIntent().getExtras().getString("APP_PACKAGE_EXTRAS");

    Log.e("Package", Package);

    }
字符串包

内部
OnCreate
方法

Package=getIntent().getExtras().getString("APP_PACKAGE_EXTRAS");
在接收器中编辑

    Intent intent = new Intent(this,MainActivity.class);
    intent.putExtra("APP_PACKAGE_EXTRAS", "com.facebook.katana");
    startActivity(intent);
  if(intent.getExtras() == null) {

       Log.e("null",null);

    } else {

   Package=getIntent().getExtras().getString("APP_PACKAGE_EXTRAS");

    Log.e("Package", Package);

    }

在您的第一个活动中:

Intent i = new Intent(ActivityA.this, ActivityB.class);
i.putExtra("a", "b");
startActivity(i);
String text = getIntent().getStringExtra("a");
在第二个活动中:

Intent i = new Intent(ActivityA.this, ActivityB.class);
i.putExtra("a", "b");
startActivity(i);
String text = getIntent().getStringExtra("a");
试试这个

在Intent的扩展数据中设置值(这应该是用于额外数据“packagePrefix.dataName”名称的正确方法)

从Intent的扩展数据中检索值

  Bundle extras = getIntent().getExtras();
    if (extras != null)
    {
            messageCount = extras.getString("com.google.exampleapp.KeyName");
    }

调用方法getIntent()的位置?能否共享调用Activity的位置的代码这里的代码很少,请共享更多。这不是我应该做的吗?第一个代码显示了我调用/启动它的位置。onclick视图中是否有此代码“Intent Intent=new Intent(this,MainActivity.class);”?如果是,则表示“此”不包含活动上下文。相反,您可以执行新的“Intent(ActivityName.this,MainActivity.class)”,它仍然是一样的,获取意图的问题。再次检查,看看日志显示结果是什么:text==b,很好的解释,很简单!