gpt4 book ai didi

android - 如果项目包含子包,如何在 Manifest 中声明 GCMIntentService 的名称?

转载 作者:太空宇宙 更新时间:2023-11-03 13:28:40 26 4
gpt4 key购买 nike

我已经在一个 GCM 项目上,注册后可以从 Google Server 接收消息。

本项目只包含一个包(com.example.gcm),所有的类(GCMIntentService ...)都声明在这个包中。下面的代码描述了我的 list 文件

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="YOUR PACKAGE NAME"
android:versionCode="1"
android:versionName="1.0" >
....
<receiver
android:name="com.google.android.gcm.GCMBroadcastReceiver"
android:permission="com.google.android.c2dm.permission.SEND" >
<intent-filter>
<action android:name="com.google.android.c2dm.intent.RECEIVE" />
<action android:name="com.google.android.c2dm.intent.REGISTRATION" />

<category android:name="YOUR PACKAGE NAME" />
</intent-filter>
</receiver>

<service android:name=".GCMIntentService" />

现在我正在尝试将这个 GCM 项目集成到我的主项目中,该项目至少包含 4 个子包。我采用与 Manfiest 相同的配置,我得到了类似的东西

 ....
<receiver
android:name="com.google.android.gcm.GCMBroadcastReceiver"
android:permission="com.google.android.c2dm.permission.SEND" >
<intent-filter>
<action android:name="com.google.android.c2dm.intent.RECEIVE" />
<action android:name="com.google.android.c2dm.intent.REGISTRATION" />

<category android:name="YOUR PACKAGE NAME" />
</intent-filter>
</receiver>

<service android:name=".notification.GCMIntentService" />

在 logcat 中,我得到了 GCM IntentService 类:YOUR PACKAGE NAME.GCMIntentService 这是不正确的,因为该类位于子包中。

如果我更改服务名称并输入包的全名,我会得到这个:

Unable to start service Intent { act=com.google.android.c2dm.intent.REGISTRATION cat=[ xxx ] flg=0x10 cmp=xxxx (has extras) }: not found

我已经阅读了很多主题,但没有任何帮助。

Is there a way to figure this out?

最佳答案

关于android - 如果项目包含子包,如何在 Manifest 中声明 GCMIntentService 的名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16164991/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com