Android 无法在活动中获取额外内容

Android 无法在活动中获取额外内容,android,android-intent,Android,Android Intent,我把额外的目的,从服务到这样的活动 Intent intent = new Intent(this, anc.class); intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); intent.putExtra("abc", 100); ... startActivity(intent); 而且 活动A Bundle extras = getIntent().getExtras(); String abc = extras.getString("abc

我把额外的目的,从服务到这样的活动

Intent intent = new Intent(this, anc.class);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.putExtra("abc", 100);
...
startActivity(intent);
而且 活动A

Bundle extras = getIntent().getExtras();
String abc = extras.getString("abc");
当我调试这个程序时,我可以看到
bundle
有额外功能,但我不能将它分配给
String
不知道为什么? 我也尝试了活动A的
android:launchMode=“standard”


我知道我一定犯了一个很小的错误,但我根本没有解决这个问题。

因为你必须这样做:

intent.putExtra("abc", "100");
如果你想得到一个字符串。别忘了这些名言:“…”


也请参考此链接:

,因为您必须这样做:

intent.putExtra("abc", "100");
如果你想得到一个字符串。别忘了这些名言:“…”

另请参阅此链接:

您应该使用:

intent.putExtra("abc", String.valueOf(100));
你应使用:

intent.putExtra("abc", String.valueOf(100));

临时演员都通过了。但不指定给字符串。我通过调试进行了检查;在其中输入一个INT值,这就是为什么你不能得到它。当您使用引号(“”)是时,它们作为整数传递:intent.putExtra(“abc”,100);100在这里是一个整数。如果您真的想将其作为字符串进行操作,则需要使用“100”。请注意,如果您只需要一个int值,则无需将其转换为string。@Sercan ok,我将对此进行说明。如果我想在这里放一些变量呢
String abc=“test”
然后
intent.putExtras(“abc”,abc)那么您的变量类型很重要。如果您试图输入一个整数值,请在获取该整数值时使用该代码:getIntent().getExtras().getInt(“abc”)Extras已正确传递。但不指定给字符串。我通过调试进行了检查;在其中输入一个INT值,这就是为什么你不能得到它。当您使用引号(“”)是时,它们作为整数传递:intent.putExtra(“abc”,100);100在这里是一个整数。如果您真的想将其作为字符串进行操作,则需要使用“100”。请注意,如果您只需要一个int值,则无需将其转换为string。@Sercan ok,我将对此进行说明。如果我想在这里放一些变量呢
String abc=“test”
然后
intent.putExtras(“abc”,abc)那么您的变量类型很重要。如果您试图输入整数值,请在获取时使用该代码:getIntent().getExtras().getInt(“abc”)执行此操作与使用第一个答案中建议的“100”有什么区别?然后您可以在此处使用整数变量执行此操作与使用“100”有什么区别在第一个答案中建议?那么您可以在这里使用整数变量