Unity Facebook apprequest notifcation打开浏览器而不是Play商店

时间:2014-05-09 18:35:59

标签: android facebook-unity-sdk facebook-app-requests

我正在尝试使用Unity Facebook sdk:s FB.AppRequest()调用邀请朋友对话。 Apprequest本身工作正常,收件人收到通知。如果未在设备上安装游戏,则会向浏览器而不是Google Play商店打开请求。

但是,如果用户安装了游戏,则通知会正确引导游戏。游戏可以从Facebook AppCenter找到,并从那里打开正确的游戏商店链接。

a)我是否误解了如果没有安装游戏,通知应该打开游戏商店?

b)某处是否有游戏商店网址(我猜不是Facebook设置可以正确查找Playstore图片)

c)是否应该提交给Facebook Appcenter?

游戏发布到游戏商店,而不是在Facebook上沙盒。

当前设置

清单

<?xml version="1.0" encoding="utf-8"?>
<manifest
    xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.tuokio.smashtheschool"
    android:versionCode="5"
    android:versionName="0.4">
    <supports-screens
        android:smallScreens="true"
        android:normalScreens="true"
        android:largeScreens="true"
        android:xlargeScreens="true"
        android:anyDensity="true"/>

    <application
        android:icon="@drawable/app_icon"
        android:label="@string/app_name"
        android:largeHeap="true"
        android:debuggable="true">

        <activity android:name="com.prime31.UnityPlayerNativeActivity" android:screenOrientation="sensorLandscape"
                  android:launchMode="singleTask"
                  android:label="@string/app_name"
                  android:configChanges="fontScale|keyboard|keyboardHidden|locale|mnc|mcc|navigation|orientation|screenLayout|screenSize|smallestScreenSize|uiMode|touchscreen">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
            <meta-data android:name="unityplayer.ForwardNativeEventsToDalvik" android:value="true" />
        </activity>

        <activity android:name="com.unity3d.player.VideoPlayer"
                  android:label="@string/app_name"
                  android:screenOrientation="landscape"
                  android:configChanges="fontScale|keyboard|keyboardHidden|locale|mnc|mcc|navigation|orientation|screenLayout|screenSize|smallestScreenSize|uiMode|touchscreen">
        </activity>

        <!---REMOVED NON RELATED ACTIVITIES 


        -->

        <!-- FB -->
         <activity android:name="com.facebook.unity.FBUnityLoginActivity" android:configChanges="fontScale|keyboard|keyboardHidden|locale|mnc|mcc|navigation|orientation|screenLayout|screenSize|smallestScreenSize|uiMode|touchscreen" android:theme="@android:style/Theme.Translucent.NoTitleBar.Fullscreen">
        </activity>
        <activity android:name="com.facebook.LoginActivity" android:screenOrientation="sensorLandscape" android:configChanges="keyboardHidden|orientation" android:theme="@android:style/Theme.Translucent.NoTitleBar.Fullscreen">
        </activity>
        <activity android:name="com.facebook.unity.FBUnityDeepLinkingActivity" android:exported="true">
        </activity>
        <meta-data android:name="com.facebook.sdk.ApplicationId" android:value="\ 1378812695724198" />


    </application>

    <!-- PERMISSIONS -->
    <uses-permission android:name="android.permission.INTERNET"/>
    <uses-permission android:name="com.android.vending.BILLING" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

    <!-- PLEASE NOTE: Using this permission changes Application.persistentDataPath to always return external storage path! android.permission.WRITE_EXTERNAL_STORAGE -->
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

    <uses-permission android:name="android.permission.READ_PHONE_STATE" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

    <!-- Must add the GET_ACCOUNTS and USE_CREDENTIALS perimissions to support Google auth -->
    <uses-permission android:name="android.permission.GET_ACCOUNTS" />
    <uses-permission android:name="android.permission.USE_CREDENTIALS" />

    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>

    <uses-permission android:name="android.permission.GET_TASKS"/>
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />

    <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
    <uses-permission android:name="android.permission.VIBRATE" />

    <uses-feature android:glEsVersion="0x00020000" />
    <uses-sdk android:minSdkVersion="15" android:targetSdkVersion="17" />

</manifest>

Facebook设置 Basic settings Advanced settings Migrations Platforms permissions Unity settings

感谢您提前!

1 个答案:

答案 0 :(得分:1)

我不知道您是否仍在寻找答案,但我认为您提交给Facebook App Center的问题是正确的。

我遇到了同样的问题,我的应用程序未提交给Facebook,因为我只使用“标准”权限(public_profile&amp; user_friends不需要Facebook审核)。我认为可能提交应用程序进行审核(仅“应用程序详细信息”部分)可能会有所帮助,因此我在提交之前测试了一个简单的请求,但仍然无效。我将我的应用程序提交到Facebook(只是“应用程序详细信息”部分),以便在App Center中列出。 在审核之后,我的应用程序已被接受,我再次运行一个简单的请求,现在一切似乎都运行得很好。如果未安装应用程序,则在Android上打开的应用程序请求会启动Play商店,否则会直接启动应用程序。

我不能说这是否是一般规则,因为我找不到任何支持这个想法的文档,但对我来说这是有道理的(因为应用程序未列在应用程序中心且设备上的Facebook应用程序不能找到有关您的申请的任何信息。)

希望这有帮助。