0

我尝试注册到 C2DM,但它不起作用。我在我的项目中包含了 com.google.android.c2dm。当我尝试查找com.google.android.c2dm.intent.REGISTER时,它什么也没找到:

String action = "com.google.android.c2dm.intent.REGISTER";
final PackageManager packageManager = context.getPackageManager();
final Intent intent = new Intent(action);
List<ResolveInfo> list = packageManager.queryIntentActivities(intent, PackageManager.MATCH_DEFAULT_ONLY);

list.size()给0。有什么想法吗?

编辑: mu 清单文件包含正确的权限:

<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
4

1 回答 1

0

您需要确保您拥有com.google.android.c2dm.permission.RECEIVE清单文件中的权限。

另外,我使用以下样板实现了注册

Intent registrationIntent = new Intent("com.google.android.c2dm.intent.REGISTER");
registrationIntent.putExtra("app", PendingIntent.getBroadcast(this, 0, new Intent(), 0)); 
registrationIntent.putExtra("sender", emailOfSender);
startService(registrationIntent);

您可以参考完整的文档了解基本设置。

于 2012-04-11T15:08:38.713 回答