For fetching content from a given URL, you can check the WWW class, here is a simple example in your case.
IEnumerator ProcessContentFromInternet(string url) {
WWW www = new WWW(url);
yield return www; // waiting the request to finish
if (www.error == null) { // if not error
string response = www.text; // here is raw data
// call another method for parsing the response text
// will discuss it later
ParseContentFromText(response);
} else {
Debug.LogError(www.error);
// there is an error when access the url
// need do something here
}
}
You can call StartCoroutine(ParseContentFrom(url));
to start it, it probably will take a while base on your internet and the size of the content. You can use www.process
and www.isDone
to view the process/state, check the official documentation for more details.
I cannot give a detailed solution for parsing the raw content to dictionary/array, since I don't know what format you will use (I personally would recommend JSON since it's probably the easiest one to deal with, check this: SimpleJSON for Unity).
For parsing XML, you can find plenty of tutorials by Googling, Most things that say C# will work in Unity3D as well. Here is a good one: Loading data from a xml file.
I am not sure about the format of your "property list", but for what I have seen, the .plist files on my Mac are all XML. There is no different for parsing the both.