Documentation for the Unity C# Library
Loading...
Searching...
No Matches
PixoAndroidUtils.cs
Go to the documentation of this file.
1using UnityEngine;
2
3namespace PixoVR.Apex
4{
5 public static partial class PixoAndroidUtils
6 {
7 #region JAVA OBJECTS
11 public static AndroidJavaObject CurrentActivity
12 {
13 get
14 {
15 if (currentActivity == null)
16 {
17 AndroidJavaClass unityPlayer = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
18 currentActivity = unityPlayer.SafeGetStatic<AndroidJavaObject>("currentActivity");
19 }
20 return currentActivity;
21 }
22 }
23 static AndroidJavaObject currentActivity;
24
25 public static AndroidJavaObject PackageManager
26 {
27 get
28 {
29 if (packageManager == null)
30 packageManager = CurrentActivity.SafeCall<AndroidJavaObject>("getPackageManager");
31 return packageManager;
32 }
33 }
34 static AndroidJavaObject packageManager;
35
39 public static AndroidJavaObject ApplicationContext
40 {
41 get
42 {
43 if (applicationContext == null)
44 applicationContext = CurrentActivity.SafeCall<AndroidJavaObject>("getApplicationContext");
45 return applicationContext;
46 }
47 }
48 static AndroidJavaObject applicationContext;
49
53 public static AndroidJavaObject ApplicationInfo
54 {
55 get
56 {
57 if (applicationInfo == null)
58 applicationInfo = ApplicationContext.SafeCall<AndroidJavaObject>("getApplicationInfo");
59 return applicationInfo;
60 }
61 }
62 static AndroidJavaObject applicationInfo;
63
67 public static AndroidJavaObject NativeUtils
68 {
69 get
70 {
71 if (nativeUtils == null)
72 nativeUtils = new AndroidJavaObject("com.pixovr.pixosdk.PixoUtils", ApplicationContext);
73 return nativeUtils;
74 }
75 }
76 static AndroidJavaObject nativeUtils;
77 #endregion
78
84 public static bool HasIntentExtra(string key)
85 {
86 var intent = CurrentActivity.SafeCall<AndroidJavaObject>("getIntent");
87 var bundle = intent.SafeCall<AndroidJavaObject>("getExtras");
88 if (bundle == null) return false;
89 return bundle.SafeCall<bool>("containsKey", key);
90 }
91
98 public static bool GetIntentBooleanExtra(string key, bool defaultValue)
99 {
100 var intent = CurrentActivity.SafeCall<AndroidJavaObject>("getIntent");
101 return intent.SafeCall<bool>("getBooleanExtra", key, defaultValue);
102 }
103
109 public static string GetIntentStringExtra(string key)
110 {
111 var intent = CurrentActivity.SafeCall<AndroidJavaObject>("getIntent");
112 return intent.SafeCall<string>("getStringExtra", key);
113 }
114
115 public static bool IsAppInstalled(string packageName)
116 {
117 if (NativeUtils != null)
118 return NativeUtils.SafeCall<bool>("isAppInstalled", packageName);
119 return false;
120 }
121
122 public static void Quit()
123 {
124 NativeUtils.SafeCall("forceQuit");
125 }
126
127 public static bool LaunchApp(string packageName, string[] extraKeys, string[] extraValues)
128 {
129 return NativeUtils.SafeCall<bool>("launchApp", packageName, extraKeys, extraValues);
130 }
131
132 public static bool LaunchUrl(string url)
133 {
134 return NativeUtils.SafeCall("openURL", url);
135 }
136
137 public static string GetPackageLocation(string packageName)
138 {
139 return NativeUtils.SafeCall<string>("getAppFileLocation", packageName);
140 }
141
142 public static string WriteFileToSharedLocation(string fileName, string content)
143 {
144 return NativeUtils.SafeCall<string>("writeFileToSharedStorage", fileName, content);
145 }
146
147 public static string ReadFileFromSharedStorage(string fileName)
148 {
149 return NativeUtils.SafeCall<string>("readFileFromSharedStorage", fileName);
150 }
151
152 public static bool DeleteFileFromSharedStorage(string fileName)
153 {
154 return NativeUtils.SafeCall<bool>("deleteFileFromSharedStorage", fileName);
155 }
156
157 public static bool DoesFileExistInSharedLocation(string fileName)
158 {
159 return NativeUtils.SafeCall<bool>("fileExists", fileName);
160 }
161 }
162}
static AndroidJavaObject applicationContext
static string GetPackageLocation(string packageName)
static AndroidJavaObject PackageManager
static AndroidJavaObject CurrentActivity
JNI to call com.unity.player.UnityPlayer.currentActivity()
static string GetIntentStringExtra(string key)
Returns a string from the Android intent extras.
static AndroidJavaObject ApplicationContext
JNI to call CurrentActivity.getApplicationContext()
static AndroidJavaObject packageManager
static bool LaunchUrl(string url)
static AndroidJavaObject ApplicationInfo
JNI to call ApplicationContext.getApplicationInfo()
static AndroidJavaObject NativeUtils
Returns an instance of the PixoUtils.java class in the Apex SDK.
static AndroidJavaObject currentActivity
static bool LaunchApp(string packageName, string[] extraKeys, string[] extraValues)
static bool GetIntentBooleanExtra(string key, bool defaultValue)
Returns a boolean from the Android intent extras.
static AndroidJavaObject nativeUtils
static string WriteFileToSharedLocation(string fileName, string content)
static bool DoesFileExistInSharedLocation(string fileName)
static bool HasIntentExtra(string key)
Returns if the Android intent extras bundle has a key with the given name.
static bool DeleteFileFromSharedStorage(string fileName)
static AndroidJavaObject applicationInfo
static string ReadFileFromSharedStorage(string fileName)
static bool IsAppInstalled(string packageName)