资源$NotFoundException是通过集成Facebook-android-sdk-3.0引发的

资源$NotFoundException是通过集成Facebook-android-sdk-3.0引发的,android,facebook-android-sdk,android-resources,Android,Facebook Android Sdk,Android Resources,我正在尝试将Facebook集成到我的应用程序中。但我一点击fbphoto它就会抛出错误android.content.res.Resources$NotFoundException。我知道它会抛出错误,因为在运行时没有创建适当的资源 发现facebook.authorize(这是一个新字符串[]{“email”,“publish_stream”},new DialogListener(){})抛出了错误。但根本原因仍然缺失 fbphoto.setOnClickListener(new View

我正在尝试将Facebook集成到我的应用程序中。但我一点击
fbphoto
它就会抛出错误
android.content.res.Resources$NotFoundException
。我知道它会抛出错误,因为在运行时没有创建适当的资源

发现facebook.authorize(这是一个新字符串[]{“email”,“publish_stream”},new DialogListener(){})抛出了错误。但根本原因仍然缺失

fbphoto.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View arg0) {
            // TODO Auto-generated method stub
            loginToFacebook();
        }
    });

public void loginToFacebook()
{
if(!facebook.isSessionValid())
    {
        facebook.authorize(this, new String[] { "email", "publish_stream"}, new DialogListener() {

        });
    }


从stacktrace中,错误由以下行引起:

spinner.setMessage(getContext().getString(R.string.com_facebook_loading));
源代码是

资源已在中正确定义

显然,错误不在facebook android sdk中


我猜您的项目设置存在问题。您可以按照此操作正确设置项目。

请注意,如果您正在运行IntelliJ,并且已将Facebook源代码作为库模块包含在项目中,则也会发生此错误

目前还不清楚究竟是什么导致了这种情况的发生,但当Facebook项目(整个树)启动时作为IntelliJ项目中的一个库模块,facebook strings.xml文件有时会被一个非常简单的strings.xml文件覆盖,并在facebook登录屏幕上出现Resources Not Found exception(资源未找到异常)来破坏你的应用程序。不仅如此,facebook AndroidManifest有时也会被覆盖并导致编译失败输入法问题


替换伪造的strings.xml和AndroidManifest.xml文件将解决问题。

我从几个小时以来就一直在胡思乱想。感谢你指导我正确的方向。谢谢你。这解决了我的问题。我真的很喜欢IntelliJ。我完全同意。我花了将近一整天的时间才找到这个答案。我删除了它在facebook sdk文件夹中搜索了三四次,然后意识到Intellij确实做了那件坏事。这太疯狂了
spinner.setMessage(getContext().getString(R.string.com_facebook_loading));