从清单中删除LoginActivity-适用于Android 3.0的Facebook SDK

从清单中删除LoginActivity-适用于Android 3.0的Facebook SDK,android,facebook,Android,Facebook,我注意到Facebook SDK 3.0必须在清单文件中声明LoginActivity <activity android:name="com.facebook.LoginActivity" android:label="@string/app_name" /> <meta-data android:name="com.facebook.sdk.ApplicationId" android:value="@string/applicationId" />

我注意到Facebook SDK 3.0必须在清单文件中声明LoginActivity

<activity android:name="com.facebook.LoginActivity"
          android:label="@string/app_name" />
<meta-data android:name="com.facebook.sdk.ApplicationId" android:value="@string/applicationId" />
当Facebook SDK必须依赖此声明时,这似乎是一种糟糕的做法。我想知道是否有办法将其从清单文件中删除

<activity android:name="com.facebook.LoginActivity"
          android:label="@string/app_name" />
<meta-data android:name="com.facebook.sdk.ApplicationId" android:value="@string/applicationId" />

关于缺少applicationId,我可以通过修改一些函数、LoginButton构造函数和会话构造函数在代码中传递它。

使用正式构建堆栈时,需要引用清单中的每个活动(需要启动)。这确实是违反直觉的,因为人们会期望从包含的库中继承这些东西


一个称为“清单合并”的过程现在可以通过构建堆栈和。由于新的构建系统仍在运行中,您只需等待它正式推出即可。

正如错误所示,请在清单中声明如下:

<activity android:name="com.facebook.LoginActivity"
          android:theme="@android:style/Theme.Translucent.NoTitleBar"
          android:label="@string/app_name" />


您有没有理由不将其包含在清单中?因为客户端项目必须在清单中声明它。这是一个依赖项。没错,但您还需要在清单中声明internet权限(另一个依赖项),并且首先需要将SDK添加到应用程序中。是否有任何细节阻止您在清单中包含另一个活动?但是如何管理启动器活动呢?清单合并在ADT/Eclipse中也起作用。您只需将此行添加到非库项目的
project.properties
文件:
manifestmerge.enabled=true
@SandeepMaram乐于帮助您的答案与问题无关。@AlvaroSantisteban您为什么这样认为?