4

http://docs.appcelerator.com/platform/latest/#!/api/Modules.Facebookに記載されている手順に従ってい ます

そして、Arrow /Users//Library/Application Support/Titanium/modules/commonjs/ti.cloud/3.2.10/example/windows/social/externalLogin.js のサンプル ディレクトリの例を見てください。

指示が示すように Tiapp.xml を構成しました

<ios>
        <plist>
            <dict>
                <key>CFBundleURLTypes</key>
                <array>
                    <dict>
                        <key>CFBundleURLName</key>
                        <string>my.org</string>
                        <!-- Application ID same as the id value in the tiapp.xml file -->
                        <string>my.application.id</string>
                        <key>CFBundleURLSchemes</key>
                        <array>
                            <!-- Prefix the Facebook App ID with 'fb' -->
                            <string>my.org</string>
                            <string>fb(my.facebook.app.id)</string>
                        </array>
                    </dict>
                </array>
                <key>FacebookAppID</key>
                <!-- Facebook App ID -->
                <string>(my.facebook.app.id)</string>
                <key>FacebookDisplayName</key>
                <!-- Facebook App Name from developer.facebook.com -->
                <string>my.org</string>
                <key>LSApplicationQueriesSchemes</key>
                <array>
                    <string>fbapi</string>
                    <string>fb-messenger-api</string>
                    <string>fbauth2</string>
                    <string>fbshareextension</string>
                </array>

            </dict>
        </plist>
    </ios>
    <modules>
        <module platform="iphone">ti.map</module>
        <module platform="iphone">facebook</module>
        <module platform="commonjs">ti.cloud</module>
    </modules>
    <deployment-targets>
        <target device="iphone">true</target>
    </deployment-targets>
    <sdk-version>5.2.0.GA</sdk-version> 

私の合金ビューファイルは次のようになります

<Alloy>
    <!-- UI Layout for Eventful page -->
    <Window id="social" class="container" navBarHidden="false" size="Ti.UI.FILL" title="" navTintColor="white"  backButtonTitle="Event" barColor="black" onOpen="login">
        <View backgroundColor="black" >
            <LoginButton id="fbLogin" module="facebook" top="1%" height="7%" permissions="user_events"/>
        </View>
    </Window>
</Alloy>

私のコントローラーの.jsファイルは次のようになります

var fb = require('facebook');
fb.readPermissions = ['read_stream','email','user_events'];
fb.appid = (my.facebook.app.id);
fb.forceDialogAuth = true;

function login (evt) {

    fb.addEventListener('login', function(e) {
    if (e.success) {
        alert('Logged in');
    }
    });

    fb.addEventListener('logout', function(e) {
        alert('Logged out');
    });

};

期待どおりに Facebook ログイン ボタンが表示されますが、クリックすると、 「ログインしていません: ログインしていません。ログインしてからやり直してください」というエラーが表示されます。

ユーザー名とパスワードを入力する画面が表示されない FB ログイン ボタン エラー

環境は Appcelerator Studio、ビルド: 4.5.0 Titanium SDK 5.2.0.GA iPhone 6 Sim / ハードウェア iOS 9.2

4

1 に答える 1