在Android中,接收到空对象的extras可能是由于发送意图时未正确设置extras或者接收意图时未正确获取extras导致的。以下是解决此问题的代码示例:
Intent intent = new Intent(context, YourActivity.class);
intent.putExtra("key", value); // 设置extras,其中key为键,value为值
startActivity(intent);
Bundle extras = getIntent().getExtras();
if (extras != null) {
String value = extras.getString("key"); // 获取extras中的值,其中key为之前设置的键
// 处理接收到的值
} else {
// 处理没有接收到extras的情况
}
在上述代码中,通过putExtra()
方法将键值对添加到意图中,然后通过getExtras()
方法获取从意图中接收到的Bundle对象,并使用getString()
方法根据键获取对应的值。在接收意图时需要使用if (extras != null)
条件判断来处理没有接收到extras的情况。
请注意,如果发送意图和接收意图的组件(如Activity)不在同一个应用中,则需要使用intent.setComponent()
方法设置目标组件的包名和类名。