AndroidManifest.xml や、Android の native plugin でやっても良いが、Unity からも指定できるよというメモ。
以下、android.support.v7.appcompat
やカスタムテーマを指定する前提。
#if UNITY_ANDROID
AndroidJavaObject activity = new AndroidJavaClass ("com.unity3d.player.UnityPlayer").GetStatic<AndroidJavaObject>("currentActivity");
AndroidJavaObject resource = activity.Call<AndroidJavaObject>("getResources");
string packageName = activity.Call<string>("getPackageName");
int themeid = resource.Call<int>("getIdentifier", "Theme.AppCompat.Light", "style", packageName);
activity.Call("setTheme", themeid);
#endif
補足
Unity からは、 R.style.Theme_AppCompat_Light
をそのまま指定できないので、リソースID を取得して指定している。
Java だとこう。
getResources().getIdentifier("Theme.AppCompat.Light", "style", getPackageName());