Naver游戏SDK开发FAQ

以下是关于Naver游戏SDK开发的常见问题。

[通用] 已输入正确的Client ID,但无法登录SDK。只有特定账号会发生这种问题。

出现“Scope Status Invalid : Authentication failed(认证失败)”提示语的情况

请“删除”在SDK管理页登记的Client ID后重新登记。(参考下图)然后确认是否出现同一问题。

[通用] 尝试登录时出现如下页面,无法登录。

在开发过程中,出现过如下无法登录的咨询。

相应问题主要是因为在“NAVER开发者中心”输入的Android安装包名称(或者iOS URL Scheme)与实际游戏的Android安装包名称(或者iOS URL Scheme)不一致

请确保上图的方框内的值与游戏应用程序值一致。

[参考] iOS项目有多个URL Scheme时,需要调用如下API:

[[NCSDKLoginManager getSharedInstance] setNaverLoginURLScheme:@"gLinkSample"];

[通用][Android] 应用Proguard设置后,无法运行SDK。

为了实际在应用市场上传安卓项目而创建发布版本时,常需要设置Proguard。这时如果不进行设置,就无法正常启动SDK的库,请参考指南在ProGuard添加要除外的选项。

[iOS] 无法在SDK登录NAVER。

1. iOS 9.无法正常调用canOpenUrl的问题。

NaverGameSDK登录使用NAVER账号登录。安装有NAVER应用程序时,使用“NAVER应用程序快捷登录”,iOS 9及以上版本应登记可调用的应用程序。应在应用程序的plist添加如下项目:

<key>LSApplicationQueriesSchemes</key>
<array>  
    <string>naversearchapp</string>  
    <string>naversearchthirdlogin</string>
</array>

具体事项请确认NAVER账号登录开发者指南。 https://nid.naver.com/devcenter/docs.nhn?menu=IOS

2. 未登记NAVER账号登录URL Scheme

使用NAVER账号登录时,若未在Xcode项目登记URL Scheme,则无法正常登录。请在Info -> URL Types项目添加URL Schemes。

同时检查如下部分,如果完成上述内容后仍无法登录,那么请在初始化时用[[NCSDKLoginManager getSharedInstance] setNaverLoginURLScheme:@"设置的scheme值"];调用界面,或是把NAVER开发者中心记载的iOS URL Scheme调到目录的最上方进行确认。​

[Unity][Android] 在Unity Android发生Mutidex问题。

添加多个库时经常会发生此类问题,请使用multiDex设置后创建。具体内容请参考下方链接。

https://developer.android.com/studio/build/multidex.html

unity multi dex参考网站

http://developers.kongregate.com/blog/dealing-with-the-64k-method-limit-in-your-unity3d-gamehttps://www.reddit.com/r/Unity3D/comments/3zv91o/android_build_dex_issues_please_help_xpost_unity2d/

如果参考上述内容后仍未能解决问题,请尝试如下方法:不同版本的Unity Android可能有所不同,但有通过下列链接事例成功解决问题的案例,敬请参考。https://appmediation.com/unity-enable-multidex/ 文件源自示例,将该文件置于下方项目路径可对Gradle进行本地设置。

mainTemplate.gradle

请按照附件设置MultiDex等。对于Unity项目,请将附件置于Assets/Plugins/Android/路径后,确认创建。

Build System - Gradle(New) 选择

将附件放入下方路径后,Gradle可本地使用。请复制附件后使用。

附件采用以下结构,multiDex及创建相关内容如下所示:

请将如下部分正确置于当前项目结构后进行确认。

compile 'com.android.support:multidex:1.0.1'

multiDexEnabled true

packagingOptions {
        exclude 'AndroidManifest.xml'
        exclude 'META-INF/maven/com.nhncorp.nelo2.android/nelo2-android-sdk/pom.xml'
        exclude 'META-INF/maven/com.nhncorp.nelo2.android/nelo2-android-sdk/pom.properties'
    }

[Unity][Android] 出现class duplication exception。

Unity Package内包含的NaverGame Android SDK为了项目内部便捷,aar文件包含SDK使用的Android library。但是,如果贵公司在开发项目过程中追加使用的library与SDK使用中的library相同,那么会导致对相同的库参考两次,从而发生错误。

  • 有与Plugins/Android文件夹内的SDK使用的library相同的.jar、.aar文件时

  • Plugins/Android文件夹内的mainTemplate.gradle内dependencies块内与SDK使用的library相同的library成为implementation or compile声明时

这种情况下,可参考排除SDK使用的library后创建的Android平台应用指南,解决问题。请按如下步骤进行:

  1. 删除Unity Package包含的Plugins/Android内的NaverGame SDK(navergame-sdk-x.x.x.aar)。

  2. 下载Android平台应用指南包含的gradle用库。

  3. 将下载的库(navergame-sdk-gradle-x.x.x.aar)移动至Unity项目内的Plugins/Android。

  4. 在Plugins/Android/mainTemlate.gradle的dependencies块内声明SDK使用的library后,统一重复库的版本。

  5. 创建Unity项目。

更多问题请通过Naver游戏电子邮箱进行咨询。

[通用] 输入的账号无法登录。

出现“游戏正处于开放状态”提示语且如下所示无法登录时,请在“NAVER开发者中心”确认有关应用程序的开发状态值。NAVER账号登录检验批准后,只有在“应用服务”状态下方可正常应用。

[Android] minSDK版本低,无法编译。

要应用SDK,请按如下流程运行支持19以前版本的游戏:

  1. 将aar文件的拓展名更改为zip后解压缩,然后修改AndroidManifest.xml文件的minSdkVersion。

  2. 再次压缩为zip文件后,将文件拓展名更在为aar。

  3. 通过分支处理确保只有19以上的版本才能进入SDK。

[iOS] 发生AFNetworking相关崩溃。

在AFNetworking相关库发生的EXC_BAD_ACCESS

我们的服务使用ARC开发而成。对于未使用ARC的项目,应在库的所有文件添加-fobjc-arc选项。

Last updated

Was this helpful?