Everyplay.SharedInstance.SetDisableSingleCoreDevices(true)
ゲームの最初のシーンで呼び出すことにより、シングル コア デバイス (3GS/4/iPad1) を簡単に無効にすることができます。StartRecording
Everyplay は呼び出しを無視するので、シングル コア デバイスで呼び出す場合は心配する必要はありません。3G (および Unity エディター) は、そもそもレコーディングをサポートしていません。
iPad 1 での録音をサポートする必要がある場合の 1 つの方法は、サポート対象外として定義したデバイスで録音関数を呼び出さない Everyplay シングルトン ラッパーを作成することです。
簡単なラッパーの例 (テストされていませんが、アイデアが得られます):
using UnityEngine;
public static class MyEveryplayWrapper {
private static iPhoneGeneration[] unsupportedDevices = {
iPhoneGeneration.iPad1Gen,
iPhoneGeneration.iPhone,
iPhoneGeneration.iPhone3G,
iPhoneGeneration.iPhone3GS,
iPhoneGeneration.iPodTouch1Gen,
iPhoneGeneration.iPodTouch2Gen,
iPhoneGeneration.iPodTouch3Gen
};
private static bool CheckIfRecordingSupported() {
bool recordingSupported = !Application.isEditor;
foreach(iPhoneGeneration device in unsupportedDevices) {
if(device == iPhone.generation) {
recordingSupported = false;
break;
}
}
Debug.Log ("Everyplay recording support: " + recordingSupported);
return recordingSupported;
}
public static bool IsRecordingSupported = CheckIfRecordingSupported();
public static void StartRecording() {
if(IsRecordingSupported) {
Everyplay.SharedInstance.StartRecording();
}
}
public static void StopRecording() {
if(IsRecordingSupported) {
Everyplay.SharedInstance.StopRecording();
}
}
}
MyEveryplayWrapper.MethodName
それを使用するには、代わりに呼び出すだけですEveryplay.SharedInstance.MethodName
。UI をレンダリングするときに、IsRecordingSupported
Everplay 関連のボタンなどの表示/非表示を考慮することができます。