Jonathan Naguin created CB-4850:
-----------------------------------
Summary: Write the device UUID only when it does not exist
Key: CB-4850
URL: https://issues.apache.org/jira/browse/CB-4850
Project: Apache Cordova
Issue Type: Improvement
Components: WP8
Affects Versions: 3.0.0
Environment: Any
Reporter: Jonathan Naguin
Assignee: Jesse MacFadyen
Priority: Minor
Currently, the device UUID is writen back to the IsolatedStorageFile in every
run even when it is not necessary.
On CordovaView.xaml.cs:
{code}
string deviceUUID = "";
using (IsolatedStorageFile appStorage =
IsolatedStorageFile.GetUserStoreForApplication())
{
try
{
IsolatedStorageFileStream fileStream = new
IsolatedStorageFileStream("DeviceID.txt", FileMode.Open, FileAccess.Read,
appStorage);
using (StreamReader reader = new StreamReader(fileStream))
{
deviceUUID = reader.ReadLine();
}
}
catch (Exception /*ex*/)
{
deviceUUID = Guid.NewGuid().ToString();
}
Debug.WriteLine("Updating IsolatedStorage for APP:DeviceID :: " +
deviceUUID);
IsolatedStorageFileStream file = new
IsolatedStorageFileStream("DeviceID.txt", FileMode.Create, FileAccess.Write,
appStorage);
using (StreamWriter writeFile = new StreamWriter(file))
{
writeFile.WriteLine(deviceUUID);
writeFile.Close();
}
}
{code}
The writing code should be moved into the catch after creating a new one as:
{code}
catch (Exception /*ex*/)
{
deviceUUID = Guid.NewGuid().ToString();
IsolatedStorageFileStream file = new
IsolatedStorageFileStream("DeviceID.txt", FileMode.Create, FileAccess.Write,
appStorage);
using (StreamWriter writeFile = new StreamWriter(file))
{
writeFile.WriteLine(deviceUUID);
writeFile.Close();
}
}
{code}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira