Unity + PlayFab Party를 사용할 때의 주의점
소개
PlayFab Party를 도입할 때 주의해야 할 내용을 정리해 두고 싶습니다.
※ 참고로 Mac용 dll이 준비되어 있지 않기 때문에 Mac 환경의 Unity 에디터에서는 사용할 수 없습니다.
Unity 설정
Unity 플러그인 가져오기
위에서 최신 버전의 unitypackage를 다운로드하여 가져옵니다.
※여기서 주의해야 하는 것은 PlayFab Party 패키지 내에 PlayFab SDK도 포함되어 있습니다. 만약, PlayFab Party 를 임포트 하기 전에 최신의 PlayFab SDK 를 임포트하고 있는 경우는 PlayFab Party 쪽에 포함되는 PlayFab SDK 가 낡은 경우가 있으므로, 덧쓰기할 때에는 주의해 주세요.
Unity 측 설정
Unity에서 사용하려면 Allow 'unsafe' Code를 활성화해야 합니다.
Android용 설정
Android를 빌드할 때 다음과 유사한 오류가 표시될 수 있습니다.
이것은 PlayFab Party를 가져올 때 Custrom Main Gradle Templete를 활성화하지만 사용중인 Unity 버전에 따라 mainTemplete.gradle 설정이 일치하지 않기 때문에 발생합니다.
이 문제를 해결하려면 Assets/Plugins/Android/mainTemplete.gradle을 다음과 같이 다시 작성합니다.
aaptOptions {
// この行を追加
noCompress = ['.ress', '.resource', '.obb'] + unityStreamingAssets.tokenize(', ')
ignoreAssetsPattern = "!.svn:!.git:!.ds_store:!*.scc:.*:!CVS:!thumbs.db:!picasa.ini:!*~"
}**PACKAGING_OPTIONS**
또한 다음 오류가 발생하면 gradle.properties 업데이트가 필요합니다.
FAILURE: Build failed with an exception.
* What went wrong:
Could not determine the dependencies of task ':launcher:lintVitalRelease'.
> This project uses AndroidX dependencies, but the 'android.useAndroidX' property is not enabled. Set this property to true in the gradle.properties file and retry.
Gradle 파일을 출력할 때 AndroidX 및 Jetifier를 활성화하는 설정을 gradle.properties에 추가합니다.
이 오류는 PlayFab Party 이외의 플러그인에서 gradle.properties를 출력하기 때문입니다.
public int callbackOrder
{
// 最後に実行されるようにする
get => 999;
}
// IPostGenerateGradleAndroidProject を継承したクラスに実装する
public void OnPostGenerateGradleAndroidProject(string path)
{
// path には gradle の出力先が渡されてくるが gradle.properties はその上の階層に配置されている
using (var stream = File.AppendText(Path.Combine(path, "..", "gradle.properties"))) {
stream.WriteLine("");
stream.WriteLine("android.useAndroidX=true");
stream.WriteLine("android.enableJetifier=true");
}
}
iOS용 설정(추기)
PlayFab Party에서는 기본적으로 음성 채팅이 활성화되어 있으므로 Unity ProjectSettings의 Microphone Usage Description에 설명을 넣지 않으면 런타임에 충돌합니다.
결론
도입시에는 이 정도의 문제점으로 즉시 멀티 플레이를 구현할 수 있으므로 한 번 PlayFab Party의 도입을 검토해 보는 것은 어떻습니까?
Reference
이 문제에 관하여(Unity + PlayFab Party를 사용할 때의 주의점), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/akiojin/items/ba956e8798844fa4fb88
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Unity 플러그인 가져오기
위에서 최신 버전의 unitypackage를 다운로드하여 가져옵니다.
※여기서 주의해야 하는 것은 PlayFab Party 패키지 내에 PlayFab SDK도 포함되어 있습니다. 만약, PlayFab Party 를 임포트 하기 전에 최신의 PlayFab SDK 를 임포트하고 있는 경우는 PlayFab Party 쪽에 포함되는 PlayFab SDK 가 낡은 경우가 있으므로, 덧쓰기할 때에는 주의해 주세요.
Unity 측 설정
Unity에서 사용하려면 Allow 'unsafe' Code를 활성화해야 합니다.
Android용 설정
Android를 빌드할 때 다음과 유사한 오류가 표시될 수 있습니다.
이것은 PlayFab Party를 가져올 때 Custrom Main Gradle Templete를 활성화하지만 사용중인 Unity 버전에 따라 mainTemplete.gradle 설정이 일치하지 않기 때문에 발생합니다.
이 문제를 해결하려면 Assets/Plugins/Android/mainTemplete.gradle을 다음과 같이 다시 작성합니다.
aaptOptions {
// この行を追加
noCompress = ['.ress', '.resource', '.obb'] + unityStreamingAssets.tokenize(', ')
ignoreAssetsPattern = "!.svn:!.git:!.ds_store:!*.scc:.*:!CVS:!thumbs.db:!picasa.ini:!*~"
}**PACKAGING_OPTIONS**
또한 다음 오류가 발생하면 gradle.properties 업데이트가 필요합니다.
FAILURE: Build failed with an exception.
* What went wrong:
Could not determine the dependencies of task ':launcher:lintVitalRelease'.
> This project uses AndroidX dependencies, but the 'android.useAndroidX' property is not enabled. Set this property to true in the gradle.properties file and retry.
Gradle 파일을 출력할 때 AndroidX 및 Jetifier를 활성화하는 설정을 gradle.properties에 추가합니다.
이 오류는 PlayFab Party 이외의 플러그인에서 gradle.properties를 출력하기 때문입니다.
public int callbackOrder
{
// 最後に実行されるようにする
get => 999;
}
// IPostGenerateGradleAndroidProject を継承したクラスに実装する
public void OnPostGenerateGradleAndroidProject(string path)
{
// path には gradle の出力先が渡されてくるが gradle.properties はその上の階層に配置されている
using (var stream = File.AppendText(Path.Combine(path, "..", "gradle.properties"))) {
stream.WriteLine("");
stream.WriteLine("android.useAndroidX=true");
stream.WriteLine("android.enableJetifier=true");
}
}
iOS용 설정(추기)
PlayFab Party에서는 기본적으로 음성 채팅이 활성화되어 있으므로 Unity ProjectSettings의 Microphone Usage Description에 설명을 넣지 않으면 런타임에 충돌합니다.
결론
도입시에는 이 정도의 문제점으로 즉시 멀티 플레이를 구현할 수 있으므로 한 번 PlayFab Party의 도입을 검토해 보는 것은 어떻습니까?
Reference
이 문제에 관하여(Unity + PlayFab Party를 사용할 때의 주의점), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/akiojin/items/ba956e8798844fa4fb88
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(Unity + PlayFab Party를 사용할 때의 주의점), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/akiojin/items/ba956e8798844fa4fb88텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)