68 lines
		
	
	
		
			2.9 KiB
		
	
	
	
		
			C#
		
	
	
			
		
		
	
	
			68 lines
		
	
	
		
			2.9 KiB
		
	
	
	
		
			C#
		
	
	
//
 | 
						|
//  UniWebViewHelper.cs
 | 
						|
//  Created by Wang Wei(@onevcat) on 2017-04-11.
 | 
						|
//
 | 
						|
//  This file is a part of UniWebView Project (https://uniwebview.com)
 | 
						|
//  By purchasing the asset, you are allowed to use this code in as many as projects 
 | 
						|
//  you want, only if you publish the final products under the name of the same account
 | 
						|
//  used for the purchase. 
 | 
						|
//
 | 
						|
//  This asset and all corresponding files (such as source code) are provided on an 
 | 
						|
//  “as is” basis, without warranty of any kind, express of implied, including but not 
 | 
						|
//  limited to the warranties of merchantability, fitness for a particular purpose, and 
 | 
						|
//  noninfringement. In no event shall the authors or copyright holders be liable for any 
 | 
						|
//  claim, damages or other liability, whether in action of contract, tort or otherwise, 
 | 
						|
//  arising from, out of or in connection with the software or the use of other dealing in the software.
 | 
						|
//
 | 
						|
using UnityEngine;
 | 
						|
using System.IO;
 | 
						|
 | 
						|
/// <summary>
 | 
						|
/// Provides some helper utility methods for UniWebView.
 | 
						|
/// </summary>
 | 
						|
public class UniWebViewHelper {
 | 
						|
    /// <summary>
 | 
						|
    /// Get the local streaming asset path for a given file path related to the StreamingAssets folder.
 | 
						|
    /// 
 | 
						|
    /// This method will help you to create a URL string for a file under your StreamingAssets folder for different platforms.
 | 
						|
    /// <param name="path">The relative path to the Assets/StreamingAssets of your file. 
 | 
						|
    /// For example, if you placed a html file under Assets/StreamingAssets/www/index.html, you should pass `www/index.html` as parameter.
 | 
						|
    /// </param>
 | 
						|
    /// <returns>The path you could use as the url for the web view.</returns>
 | 
						|
    public static string StreamingAssetURLForPath(string path)
 | 
						|
    {
 | 
						|
#if (UNITY_EDITOR_OSX || UNITY_STANDALONE_OSX || UNITY_IOS) && !UNITY_EDITOR_WIN && !UNITY_EDITOR_LINUX
 | 
						|
        return Path.Combine("file://" + Application.streamingAssetsPath, path);
 | 
						|
#elif UNITY_ANDROID && !UNITY_EDITOR_WIN && !UNITY_EDITOR_LINUX
 | 
						|
        return Path.Combine("file:///android_asset/", path);
 | 
						|
#else
 | 
						|
        UniWebViewLogger.Instance.Critical("The current build target is not supported.");
 | 
						|
        return string.Empty;
 | 
						|
#endif
 | 
						|
    }
 | 
						|
 | 
						|
    /// <summary>
 | 
						|
    /// Get the local persistent data path for a given file path related to the data folder of your host app.
 | 
						|
    /// 
 | 
						|
    /// This method will help you to create a URL string for a file under you stored in the `persistentDataPath`.
 | 
						|
    /// </summary>
 | 
						|
    /// <param name="path">
 | 
						|
    /// The relative path to the persistent data path of your file.
 | 
						|
    /// </param>
 | 
						|
    /// <returns>The path you could use as the url for the web view.</returns>
 | 
						|
    public static string PersistentDataURLForPath(string path)
 | 
						|
    {
 | 
						|
        return Path.Combine("file://" + Application.persistentDataPath, path);
 | 
						|
    }
 | 
						|
 | 
						|
    internal static bool IsEditor {
 | 
						|
        get {
 | 
						|
            #if UNITY_EDITOR_OSX || UNITY_STANDALONE_OSX
 | 
						|
            return true;
 | 
						|
            #else
 | 
						|
            return false;
 | 
						|
            #endif
 | 
						|
        }
 | 
						|
    }
 | 
						|
}
 |