facebook登录Android上的钛

时间:2016-02-25 21:12:31

标签: android facebook appcelerator appcelerator-titanium

我有一个使用facebook登录工作的钛(appcelerator)应用程序。

我最近重新打开我的IDE(appcelerator工作室),进行更新,然后在模拟器中重新启动应用程序,并且facebook登录不再有效..

错误是:

Log in attempt failed: FacebookActivity could not be started. Please make sure you added FacebookActivity to the AndroidManifest.

文档是一样的。有我的tiapp.xml(android节点):

<android xmlns:android="http://schemas.android.com/apk/res/android">
    <manifest android:versionCode="6" android:versionName="1.0.5">
        <application android:theme="@style/LightDarkBar">
            <activity android:label="@string/app_name" android:name="com.facebook.LoginActivity" android:theme="@android:style/Theme.Translucent"/>
            <meta-data android:name="com.facebook.sdk.ApplicationId" android:value="@string/facebook_app_id"/>
        </application>
        <uses-sdk android:minSdkVersion="14" android:targetSdkVersion="23"/>
    </manifest>
</android>

login.js(控制器)的一部分

function fbLogin() {
    $.btn_fb.opacity=0.5;

    facebook.addEventListener('login', onFbLogin);

    facebook.permissions = ['public_profile', 'user_friends', 'email'];
    facebook.authorize();
}


$.login.fbProxy = facebook.createActivityWorker({lifecycleContainer: $.login});

$.login.open();

显然在视图中有一个Button onSingletap =“fbLogin”。

我在tiapp.xml中使用<sdk-version>5.2.0.GA</sdk-version>

此处的文档http://docs.appcelerator.com/platform/latest/#!/api/Modules.Facebook没有帮助。

有人请吗?

2 个答案:

答案 0 :(得分:2)

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

该活动的名称不是FacebookActivity,因此登录无效,进入Titanium 5.2的官方更改日志,您可以看到对this票证的引用。

答案 1 :(得分:1)

以下是我曾经成功应用Facebook模块登录功能的清单。

<android xmlns:android="http://schemas.android.com/apk/res/android">
    <manifest>
        <application>
            <activity android:label="@string/app_name"
                android:name="com.facebook.FacebookActivity" android:theme="@android:style/Theme.Translucent.NoTitleBar"/>
            <meta-data android:name="com.facebook.sdk.ApplicationId" android:value="@string/facebook_app_id"/>
        </application>
    </manifest>
</android>

这是文件“Platform / android / res / values / strings.xml”

中的内容
<resources>
    <string name="facebook_app_id">my_facebook_ap_id</string>
</resources