public iOSBillingTransaction (IDictionary _transactionJsonDict) { ProductIdentifier = _transactionJsonDict.GetIfAvailable<string>(kProductID); // Transaction date can be NULL/Empty string _tDateStr = _transactionJsonDict.GetIfAvailable<string>(kTransactionDate); if (!string.IsNullOrEmpty(_tDateStr)) { TransactionDateUTC = _tDateStr.ToZuluFormatDateTimeUTC(); TransactionDateLocal = TransactionDateUTC.ToLocalTime(); } // Transaction identifier TransactionIdentifier = _transactionJsonDict.GetIfAvailable<string>(kTransactionID); // Transaction receipt can be NULL/Empty TransactionReceipt = _transactionJsonDict.GetIfAvailable<string>(kTransactionReceipt); // Transactions state SKPaymentTransactionState _skTransactionState = (SKPaymentTransactionState)int.Parse(_transactionJsonDict[kTransactionState].ToString()); TransactionState = ConvertToBillingTransactionState(_skTransactionState); // Verifications state VerificationState = (eBillingTransactionVerificationState)int.Parse(_transactionJsonDict[kVerificationState].ToString()); // Error can be NULL/Empty Error = _transactionJsonDict.GetIfAvailable<string>(kError); // Set response which is sent from Native side RawPurchaseData = _transactionJsonDict.ToJSON(); }
protected override void RequestForImageFinished(IDictionary _dataDict) { string _error = _dataDict.GetIfAvailable <string>(EditorGameCenter.kErrorKey); Texture2D _image = _dataDict.GetIfAvailable <Texture2D>(EditorGameCenter.kImageKey); DownloadImageFinished(_image, _error); }
public AndroidBillingTransaction(IDictionary _transactionInfo) { IDictionary _originalJSON = _transactionInfo[kOriginalJSON] as IDictionary; // Set raw response RawPurchaseData = _originalJSON.ToJSON(); // Assign values ProductIdentifier = _originalJSON.GetIfAvailable<string>(kProductID); // Transaction time long _purchaseTimeInMillis = _originalJSON.GetIfAvailable<long>(kPurchaseTime); System.DateTime _purchaseDate = _purchaseTimeInMillis.ToDateTimeFromJavaTime(); TransactionDateUTC = _purchaseDate.ToUniversalTime(); TransactionDateLocal = _purchaseDate.ToLocalTime(); TransactionIdentifier = GetPurchaseIdentifier(_originalJSON); int _purchaseState = _originalJSON.GetIfAvailable<int>(kPurchaseState); TransactionState = GetConvertedPurchaseState(_purchaseState); // Data from _transactionInfo TransactionReceipt = _transactionInfo.GetIfAvailable<string>(kSignature); //First find out if the transaction is valid string _validationState = _transactionInfo.GetIfAvailable<string>(kPurchaseValidationState); VerificationState = GetValidationState(_validationState); // Error Error = _transactionInfo.GetIfAvailable<string>(kError); }
protected override void ExtractTransactionResponseData(string _dataStr, out BillingTransaction[] _transactions, out string _error) { // Set default values _transactions = null; _error = null; // Parse and fetch properties from JSON object IDictionary _dataDict = (IDictionary)JSONUtility.FromJSON(_dataStr); _error = _dataDict.GetIfAvailable <string>(kErrorKey); if (_error == null) { IList _transactionsJSONList = _dataDict.GetIfAvailable <IList>(kTransactionsKey); if (_transactionsJSONList != null) { int _count = _transactionsJSONList.Count; _transactions = new BillingTransactionAndroid[_count]; for (int _iter = 0; _iter < _count; _iter++) { _transactions[_iter] = new BillingTransactionAndroid((IDictionary)_transactionsJSONList[_iter]); } } } }
public iOSTwitterSession (IDictionary _sessionJsonDict) { AuthToken = _sessionJsonDict.GetIfAvailable<string>(kAuthToken); AuthTokenSecret = _sessionJsonDict.GetIfAvailable<string>(kAuthTokenSecret); UserName = _sessionJsonDict.GetIfAvailable<string>(kUserName); UserID = _sessionJsonDict.GetIfAvailable<string>(kUserID); }
internal CrossPlatformNotification(IDictionary _jsonDict) { // Get alert body AlertBody = _jsonDict.GetIfAvailable <string>(kAlertBodyKey); // Get fire date, repeat interval string _fireDateStr = _jsonDict.GetIfAvailable <string>(kFireDateKey); if (!string.IsNullOrEmpty(_fireDateStr)) { FireDate = _fireDateStr.ToZuluFormatDateTimeLocal(); } RepeatInterval = _jsonDict.GetIfAvailable <eNotificationRepeatInterval>(kRepeatIntervalKey); // Get user info UserInfo = _jsonDict[kUserInfoKey] as IDictionary; // Get sound name SoundName = _jsonDict.GetIfAvailable <string>(kSoundNameKey); // Get iOS specific properties, if included if (_jsonDict.Contains(kiOSPropertiesKey)) { iOSProperties = new iOSSpecificProperties(_jsonDict[kiOSPropertiesKey] as IDictionary); } // Get Android specific properties, if included if (_jsonDict.Contains(kAndroidPropertiesKey)) { AndroidProperties = new AndroidSpecificProperties(_jsonDict[kAndroidPropertiesKey] as IDictionary); } }
public iOSTwitterSession(IDictionary _sessionJsonDict) { AuthToken = _sessionJsonDict.GetIfAvailable <string>(kAuthToken); AuthTokenSecret = _sessionJsonDict.GetIfAvailable <string>(kAuthTokenSecret); UserName = _sessionJsonDict.GetIfAvailable <string>(kUserName); UserID = _sessionJsonDict.GetIfAvailable <string>(kUserID); }
internal AndroidSpecificProperties(IDictionary _jsonDict) { ContentTitle = _jsonDict.GetIfAvailable <string>(kContentTitleKey); TickerText = _jsonDict.GetIfAvailable <string>(kTickerTextKey); Tag = _jsonDict.GetIfAvailable <string>(kTagKey); LargeIcon = _jsonDict.GetIfAvailable <string>(kLargeIcon); }
protected override void DidReceiveBillingProducts(string _dataStr) { IDictionary _dataDict = (IDictionary)JSONUtility.FromJSON(_dataStr); string _error = _dataDict.GetIfAvailable <string>(kErrorKey); if (_error != null) { DidReceiveBillingProducts(null, _error); return; } else { IList _regProductsJSONList = _dataDict.GetIfAvailable <IList>(kProductsKey); BillingProduct[] _regProductsList = null; if (_regProductsJSONList != null) { _regProductsList = new BillingProductAndroid[_regProductsJSONList.Count]; int _iter = 0; foreach (IDictionary _productInfoDict in _regProductsJSONList) { _regProductsList[_iter++] = new BillingProductAndroid(_productInfoDict); } } DidReceiveBillingProducts(_regProductsList, null); return; } }
private void DrawUpdateNews() { string newJson = EditorPrefs.GetString(Constants.kVBNewsKey, "[]"); IList news = (IList)JSONUtility.FromJSON(newJson); if (news.Count > 0) { GUILayout.FlexibleSpace(); EditorGUILayout.LabelField("", GUI.skin.horizontalSlider); EditorGUI.indentLevel++; m_recentUpdatesFoldout = EditorGUILayout.Foldout(m_recentUpdatesFoldout, "Recent Updates", true); if (m_recentUpdatesFoldout) { m_recentUpdatesScrollPosition = GUILayout.BeginScrollView(m_recentUpdatesScrollPosition, GUILayout.MinHeight(150f)); GUILayout.BeginVertical(EditorStyles.helpBox); foreach (IDictionary eachEntry in news) { GUILayout.BeginVertical(EditorStyles.helpBox); foreach (string key in eachEntry.Keys) { object value = eachEntry[key]; if ((value as IDictionary) != null) { IDictionary info = value as IDictionary; string link = info.GetIfAvailable <string>("link"); string description = info.GetIfAvailable <string>("description"); GUILayout.BeginHorizontal(); if (GUILayout.Button(key)) { Application.OpenURL(link); } GUILayout.FlexibleSpace(); GUILayout.EndHorizontal(); EditorGUI.indentLevel++; GUILayout.Label(description, EditorStyles.wordWrappedLabel); EditorGUI.indentLevel--; } else { GUILayout.Label(key, EditorStyles.boldLabel); EditorGUI.indentLevel++; GUILayout.Label(value.ToString(), EditorStyles.wordWrappedLabel); EditorGUI.indentLevel--; } } GUILayout.Space(6); GUILayout.EndVertical(); } GUILayout.EndVertical(); GUILayout.EndScrollView(); } EditorGUI.indentLevel--; } }
public iOSTwitterAuthSession(IDictionary _sessionJsonDict) { // Set properties AuthToken = _sessionJsonDict.GetIfAvailable <string>(kAuthToken); AuthTokenSecret = _sessionJsonDict.GetIfAvailable <string>(kAuthTokenSecret); UserID = _sessionJsonDict.GetIfAvailable <string>(kUserID); }
public AndroidAddressBookContact (IDictionary _contactInfoJsontDict) { //If Given Name is available set it. Else pick from Display Name string _displayName = _contactInfoJsontDict.GetIfAvailable<string>(kDisplayName); string _givenName = _contactInfoJsontDict.GetIfAvailable<string>(kGivenName); string _familyName = _contactInfoJsontDict.GetIfAvailable<string>(kFamilyName); if(string.IsNullOrEmpty(_displayName)) { _displayName = ""; } FirstName = _givenName; LastName = _familyName; ImagePath = _contactInfoJsontDict[kImagePath] as string; PhoneNumberList = new List<string>(); EmailIDList = new List<string>(); // Add phone numbers IList _phoneNumJsonList = _contactInfoJsontDict[kPhoneNumList] as IList; foreach (string _phoneNo in _phoneNumJsonList) PhoneNumberList.Add(_phoneNo); // Add email id's IList _emailIDJsonList = _contactInfoJsontDict[kEmailList] as IList; foreach (string _emailID in _emailIDJsonList) EmailIDList.Add(_emailID); }
public BillingTransactionIOS(IDictionary _transactionJsonDict) { ProductIdentifier = _transactionJsonDict.GetIfAvailable <string>(kProductID); // Transaction date can be NULL/Empty string _tDateStr = _transactionJsonDict.GetIfAvailable <string>(kTransactionDate); if (!string.IsNullOrEmpty(_tDateStr)) { TransactionDateUTC = _tDateStr.ToZuluFormatDateTimeUTC(); TransactionDateLocal = TransactionDateUTC.ToLocalTime(); } // Transaction identifier TransactionIdentifier = _transactionJsonDict.GetIfAvailable <string>(kTransactionID); // Transaction receipt can be NULL/Empty TransactionReceipt = _transactionJsonDict.GetIfAvailable <string>(kTransactionReceipt); // Transactions state SKPaymentTransactionState _skTransactionState = (SKPaymentTransactionState)int.Parse(_transactionJsonDict[kTransactionState].ToString()); TransactionState = ConvertToBillingTransactionState(_skTransactionState); // Verifications state VerificationState = (eBillingTransactionVerificationState)int.Parse(_transactionJsonDict[kVerificationState].ToString()); // Error can be NULL/Empty Error = _transactionJsonDict.GetIfAvailable <string>(kError); // Set response which is sent from Native side RawPurchaseData = _transactionJsonDict.ToJSON(); }
internal iOSSpecificProperties (IDictionary _jsonDict) { AlertAction = _jsonDict.GetIfAvailable<string>(kAlertActionKey); HasAction = _jsonDict.GetIfAvailable<bool>(kHasActionKey); BadgeCount = _jsonDict.GetIfAvailable<int>(kBadgeCountKey); LaunchImage = _jsonDict.GetIfAvailable<string>(kLaunchImageKey); }
protected override void ParseReceivedNotificationData(string _dataStr, out CrossPlatformNotification _receivedNotification, out bool _isLaunchNotification) { IDictionary _dataDict = JSONUtility.FromJSON(_dataStr) as IDictionary; // Extract properties IDictionary _payloadDict = _dataDict.GetIfAvailable <IDictionary>(kPayloadKey); _receivedNotification = new iOSNotificationPayload(_payloadDict); _isLaunchNotification = _dataDict.GetIfAvailable <bool>(kIsLaunchNotificationKey); if (_receivedNotification.UserInfo != null) { #if USES_ONE_SIGNAL // Our system should ignore raising events sent from One Signal const string _kOneSignalIdentifierKeyPath = "custom/i"; if (_receivedNotification.UserInfo.ContainsKeyPath(_kOneSignalIdentifierKeyPath)) { _receivedNotification = null; return; } #endif } }
public iOSUser(IDictionary _dataDict) : base() { // Initialize properties Identifier = _dataDict.GetIfAvailable <string>(kPlayerIDKey); Name = _dataDict.GetIfAvailable <string>(kDisplayNameKey); Alias = _dataDict.GetIfAvailable <string>(kAliasKey); }
public AndroidAddressBookContact(IDictionary _contactInfoJsontDict) { //If Given Name is available set it. Else pick from Display Name string _displayName = _contactInfoJsontDict.GetIfAvailable <string>(kDisplayName); string _givenName = _contactInfoJsontDict.GetIfAvailable <string>(kGivenName); string _familyName = _contactInfoJsontDict.GetIfAvailable <string>(kFamilyName); if (string.IsNullOrEmpty(_displayName)) { _displayName = ""; } FirstName = ParseFirstName(_givenName, _familyName, _displayName); LastName = ParseLastName(_givenName, _familyName, _displayName); ImagePath = _contactInfoJsontDict[kImagePath] as string; PhoneNumberList = new List <string>(); EmailIDList = new List <string>(); // Add phone numbers IList _phoneNumJsonList = _contactInfoJsontDict[kPhoneNumList] as IList; foreach (string _phoneNo in _phoneNumJsonList) { PhoneNumberList.Add(_phoneNo); } // Add email id's IList _emailIDJsonList = _contactInfoJsontDict[kEmailList] as IList; foreach (string _emailID in _emailIDJsonList) { EmailIDList.Add(_emailID); } }
public AndroidBillingTransaction(IDictionary _transactionInfo) { IDictionary _originalJSON = _transactionInfo[kOriginalJSON] as IDictionary; // Set raw response RawPurchaseData = _originalJSON.ToJSON(); // Assign values ProductIdentifier = _originalJSON.GetIfAvailable <string>(kProductID); // Transaction time long _purchaseTimeInMillis = _originalJSON.GetIfAvailable <long>(kPurchaseTime); System.DateTime _purchaseDate = _purchaseTimeInMillis.ToDateTimeFromJavaTime(); TransactionDateUTC = _purchaseDate.ToUniversalTime(); TransactionDateLocal = _purchaseDate.ToLocalTime(); TransactionIdentifier = GetPurchaseIdentifier(_originalJSON); int _purchaseState = _originalJSON.GetIfAvailable <int>(kPurchaseState); TransactionState = GetConvertedPurchaseState(_purchaseState); // Data from _transactionInfo TransactionReceipt = _transactionInfo.GetIfAvailable <string>(kSignature); //First find out if the transaction is valid string _validationState = _transactionInfo.GetIfAvailable <string>(kPurchaseValidationState); VerificationState = GetValidationState(_validationState); // Error Error = _transactionInfo.GetIfAvailable <string>(kError); }
// { // "tag": "tag", // "message-data": { // "host": "move", // "arguments": { // "cmd": "showAlert", // "var": "myVar" // }, // "url-scheme": "unity" // } // } public iOSWebViewMessage(IDictionary _schemeDataJsonDict) { string _URL = _schemeDataJsonDict.GetIfAvailable <string>(kURLKey); string _schemeName = _schemeDataJsonDict.GetIfAvailable <string>(kURLSchemeKey); string _host = _schemeDataJsonDict.GetIfAvailable <string>(kHostKey); IDictionary _args = _schemeDataJsonDict.GetIfAvailable <IDictionary>(kArgumentsKey); // Set properties this.URL = _URL; this.Scheme = _schemeName; this.Host = _host; this.Arguments = new Dictionary <string, string>(); if (_args != null) { foreach (string _key in _args.Keys) { string _keyStr = _key.ToString(); string _valueStr = _args[_key].ToString(); // Add key and value Arguments[_keyStr] = _valueStr; } } }
protected override void ParseReadContactsResponseData(IDictionary _dataDict, out eABAuthorizationStatus _authStatus, out AddressBookContact[] _contactsList) { List <object> _contactsJSONList = _dataDict.GetIfAvailable <List <object> >(kContactsListKey); if (_contactsJSONList != null) { int _count = _contactsJSONList.Count; AddressBookContact[] _newContactsList = new AndroidAddressBookContact[_count]; for (int _iter = 0; _iter < _count; _iter++) { _newContactsList[_iter] = new AndroidAddressBookContact((IDictionary)_contactsJSONList[_iter]); } // Set properties _authStatus = eABAuthorizationStatus.AUTHORIZED; _contactsList = _newContactsList; } else { // Set properties _authStatus = GetAuthorizationStatus(_dataDict.GetIfAvailable <string>(kAuthStatusKey)); _contactsList = null; } }
protected override void RequestForImageFinished (IDictionary _dataDict) { string _error = _dataDict.GetIfAvailable<string>(EditorGameCenter.kErrorKey); Texture2D _image = _dataDict.GetIfAvailable<Texture2D>(EditorGameCenter.kImageKey); DownloadImageFinished(_image, _error); }
protected override void DidFinishBillingTransaction(string _dataStr) { IDictionary _dataDict = (IDictionary)JSONUtility.FromJSON(_dataStr); string _error = _dataDict.GetIfAvailable <string>(kErrorKey); if (_error != null) { DidFinishBillingTransaction(null, _error); return; } else { IList _transactionsJSONList = _dataDict.GetIfAvailable <IList>(kTransactionsKey); BillingTransaction[] _transactionsList = null; if (_transactionsJSONList != null) { _transactionsList = new iOSBillingTransaction[_transactionsJSONList.Count]; int _iter = 0; foreach (IDictionary _transactionInfoDict in _transactionsJSONList) { _transactionsList[_iter++] = new iOSBillingTransaction(_transactionInfoDict); } } DidFinishBillingTransaction(_transactionsList, null); return; } }
internal iOSSpecificProperties(IDictionary _jsonDict) { AlertAction = _jsonDict.GetIfAvailable <string>(kAlertActionKey); HasAction = _jsonDict.GetIfAvailable <bool>(kHasActionKey); BadgeCount = _jsonDict.GetIfAvailable <int>(kBadgeCountKey); LaunchImage = _jsonDict.GetIfAvailable <string>(kLaunchImageKey); }
public iOSNotificationPayload(IDictionary _payloadDict) { iOSProperties = new iOSSpecificProperties(); string _userInfoKey = NPSettings.Notification.iOS.UserInfoKey; IDictionary _apsDict = _payloadDict[kAPS] as IDictionary; // Read alert info from aps dictionary if (_apsDict.Contains(kAlert)) { object _alertUnknownType = _apsDict[kAlert] as object; if (_alertUnknownType != null) { // String format if ((_alertUnknownType as string) != null) { AlertBody = _alertUnknownType as string; } // Dictionary format else { IDictionary _alertDict = _alertUnknownType as IDictionary; string _alertAction = _alertDict.GetIfAvailable <string>(kAction); bool _hasAction = false; if (_alertDict.Contains(kHasAction)) { _hasAction = System.Convert.ToBoolean(_alertDict[kHasAction]); } else { _hasAction = (_alertAction != null); } // Set properties AlertBody = _alertDict.GetIfAvailable <string>(kBody); iOSProperties.AlertAction = _alertAction; iOSProperties.HasAction = _hasAction; iOSProperties.LaunchImage = _alertDict.GetIfAvailable <string>(kLaunchImage); } } } // Read sound, badge info from aps dictionary SoundName = _apsDict.GetIfAvailable <string>(kSound); iOSProperties.BadgeCount = _apsDict.GetIfAvailable <int>(kBadge); // Read user info from payload dictionary UserInfo = _payloadDict.GetIfAvailable <IDictionary>(_userInfoKey); // Read fire date, repeat interval from payload dictionary string _fireDateStr = _payloadDict.GetIfAvailable <string>(kFireDate); if (_fireDateStr != null) { FireDate = _fireDateStr.ToZuluFormatDateTimeLocal(); } RepeatInterval = ConvertToRepeatInterval(_payloadDict.GetIfAvailable <CalendarUnit>(kRepeatIntervalKey)); }
private void DidReceiveNewCloudData(string _dataStr) { IDictionary _dataDict = (IDictionary)JSONUtility.FromJSON(_dataStr); string _encodedData = _dataDict.GetIfAvailable <string>(kKeyForNewCloudData); string _cloudAccountName = _dataDict.GetIfAvailable <string>(kKeyForCloudAccount); // Decode the data with Base64 and convert to Json IDict. if (!string.IsNullOrEmpty(_encodedData)) { string _decodedData = _encodedData.FromBase64(); Console.Log(Constants.kDebugTag, "[CloudServices] Received from Cloud : " + _decodedData); IDictionary _newCloudData = (IDictionary)JSONUtility.FromJSON(_decodedData); // Here compare the data with the one on local disk and trigger the ExternallyChagedEvent. CheckChangedKeyValueStoreDataAndRefresh(_newCloudData, _cloudAccountName); } if (IsLocalDirty()) { SetLocalDirty(false); //We are setting to false and on failed commit to cloud we set it to true. If we don't set here, there could be chances for missing the flagstatus if set to false in callback on sucess of save. string _jsonString = m_dataStore.ToJSON(); Console.Log(Constants.kDebugTag, "[CloudServices] Save To Cloud : " + _jsonString); Plugin.Call(Native.Methods.SAVE_CLOUD_DATA, _jsonString.ToBase64()); } else { FinishedSync(true); } }
public static void DidReceiveBillingProducts(string dataStr) { IDictionary dataDict = (IDictionary)JsonUtility.FromJson(dataStr); string error = dataDict.GetIfAvailable<string>("error"); if(!string.IsNullOrEmpty(error)){ DidReceiveBillingProducts(null, error); return; } else { IList regProductsJSONList = dataDict.GetIfAvailable<IList>("products"); ItemData[] regProductsList = null; if(regProductsJSONList != null){ regProductsList = new iosItemData[regProductsJSONList.Count]; int i = 0; foreach(IDictionary productInfoDict in regProductsJSONList) { regProductsList[i++] = new iosItemData(productInfoDict); } } DidReceiveBillingProducts(regProductsList, null); return; } }
public iOSTwitterUser (IDictionary _userJsonDict) { UserID = _userJsonDict.GetIfAvailable<string>(kUserID); Name = _userJsonDict.GetIfAvailable<string>(kName); IsVerified = _userJsonDict.GetIfAvailable<bool>(kIsVerified); IsProtected = _userJsonDict.GetIfAvailable<bool>(kIsProtected); ProfileImageURL = _userJsonDict.GetIfAvailable<string>(kProfileImageURL); }
public AndroidTwitterUser(IDictionary _userJsonDict) { UserID = _userJsonDict[kUserID] as string; Name = _userJsonDict[kName] as string; IsVerified = _userJsonDict.GetIfAvailable <bool>(kIsVerified); IsProtected = _userJsonDict.GetIfAvailable <bool>(kIsProtected); ProfileImageURL = _userJsonDict[kProfileImageURL] as string; }
public iOSTwitterUser(IDictionary _userJsonDict) { UserID = _userJsonDict.GetIfAvailable <string>(kUserID); Name = _userJsonDict.GetIfAvailable <string>(kName); IsVerified = _userJsonDict.GetIfAvailable <bool>(kIsVerified); IsProtected = _userJsonDict.GetIfAvailable <bool>(kIsProtected); ProfileImageURL = _userJsonDict.GetIfAvailable <string>(kProfileImageURL); }
public AndroidBillingProduct (IDictionary _productJsonDict) { ProductIdentifier = _productJsonDict[kProductID] as string; Name = _productJsonDict[kTitle] as string; Description = _productJsonDict[kDescription] as string; Price = _productJsonDict.GetIfAvailable<long>(kPriceAmount)/1000000.0f;//As the value is in microns LocalizedPrice = _productJsonDict.GetIfAvailable<string>(kLocalizedPrice); }
public AndroidTwitterUser (IDictionary _userJsonDict) { UserID = _userJsonDict[kUserID] as string; Name = _userJsonDict[kName] as string; IsVerified = _userJsonDict.GetIfAvailable<bool>(kIsVerified); IsProtected = _userJsonDict.GetIfAvailable<bool>(kIsProtected); ProfileImageURL = _userJsonDict[kProfileImageURL] as string; }
public iOSBillingProduct (IDictionary _productJsonDict) { Name = _productJsonDict.GetIfAvailable<string>(kTitle); ProductIdentifier = _productJsonDict.GetIfAvailable<string>(kProductID); Description = _productJsonDict.GetIfAvailable<string>(kDescription); Price = _productJsonDict.GetIfAvailable<float>(kPrice); LocalizedPrice = _productJsonDict.GetIfAvailable<string>(kLocalizedPrice); }
public AndroidBillingProduct(IDictionary _productJsonDict) { ProductIdentifier = _productJsonDict[kProductID] as string; Name = _productJsonDict[kTitle] as string; Description = _productJsonDict[kDescription] as string; Price = _productJsonDict.GetIfAvailable <long>(kPriceAmount) / 1000000.0f; //As the value is in microns LocalizedPrice = _productJsonDict.GetIfAvailable <string>(kLocalizedPrice); }
protected override void LoadExternalAuthenticationCredentialsFinished(IDictionary _dataDict) { IDictionary _credentials = _dataDict.GetIfAvailable <IDictionary>(kCredentialsData); string _error = _dataDict.GetIfAvailable <string>(kNativeMessageError); LoadExternalAuthenticationCredentialsFinished(_credentials, _error); }
public iOSBillingProduct(IDictionary _productJsonDict) { Name = _productJsonDict.GetIfAvailable <string>(kTitle); ProductIdentifier = _productJsonDict.GetIfAvailable <string>(kProductID); Description = _productJsonDict.GetIfAvailable <string>(kDescription); Price = _productJsonDict.GetIfAvailable <float>(kPrice); LocalizedPrice = _productJsonDict.GetIfAvailable <string>(kLocalizedPrice); }
public iOSNotificationPayload (IDictionary _payloadDict) { IDictionary _apsDict = _payloadDict[kAPS] as IDictionary; string _userInfoKey = NPSettings.Notification.iOS.UserInfoKey; iOSProperties = new iOSSpecificProperties(); // Read alert info if (_apsDict.Contains(kAlert)) { object _alertUnknownType = _apsDict[kAlert] as object; if (_alertUnknownType != null) { // String format if ((_alertUnknownType as string) != null) { AlertBody = _alertUnknownType as string; } // Dictionary format else { IDictionary _alertDict = _alertUnknownType as IDictionary; AlertBody = _alertDict.GetIfAvailable<string>(kBody); string _alertAction = _alertDict.GetIfAvailable<string>(kAction); if (string.IsNullOrEmpty(_alertAction)) { iOSProperties.AlertAction = null; iOSProperties.HasAction = false; } else { iOSProperties.AlertAction = _alertAction; iOSProperties.HasAction = true; } // Launch image iOSProperties.LaunchImage = _alertDict.GetIfAvailable<string>(kLaunchImage); } } } // Read sound, badge info iOSProperties.SoundName = _apsDict.GetIfAvailable<string>(kSound); iOSProperties.BadgeCount = _apsDict.GetIfAvailable<int>(kBadge); // Read user info if (_apsDict.Contains(_userInfoKey)) UserInfo = _payloadDict[_userInfoKey] as IDictionary; // Read fire date, repeat interval string _fireDateStr = _payloadDict.GetIfAvailable<string>(kFireDate); if (!string.IsNullOrEmpty(_fireDateStr)) FireDate = _fireDateStr.ToDateTimeLocalUsingZuluFormat(); RepeatInterval = ConvertToRepeatInterval(_payloadDict.GetIfAvailable<CalendarUnit>(kRepeatIntervalKey)); }
protected override void LoadUsersFinished (IDictionary _dataDict) { EGCUser[] _gcUsers = _dataDict.GetIfAvailable<EGCUser[]>(EditorGameCenter.kUsersListKey); string _error = _dataDict.GetIfAvailable<string>(EditorGameCenter.kErrorKey); User[] _newUsers = EditorUser.ConvertUsersList(_gcUsers); // Invoke handler LoadUsersFinished(_newUsers, _error); }
protected override void LoadAchievementsFinished (IDictionary _dataDict) { IList _achievementsJSONList = _dataDict.GetIfAvailable<IList>(kAchievementsListKey); string _error = _dataDict.GetIfAvailable<string>(GameServicesIOS.kNativeMessageErrorKey); Achievement[] _newAchievements = iOSAchievement.ConvertAchievementsList(_achievementsJSONList); // Invoke handler LoadAchievementsFinished(_newAchievements, _error); }
protected override void LoadAchievementsFinished (IDictionary _dataDict) { EGCAchievement[] _gcAchievements = _dataDict.GetIfAvailable<EGCAchievement[]>(EditorGameCenter.kAchievementsListKey); string _error = _dataDict.GetIfAvailable<string>(EditorGameCenter.kErrorKey); Achievement[] _newAchievements = EditorAchievement.ConvertAchievementsList(_gcAchievements); // Invoke handler LoadAchievementsFinished(_newAchievements, _error); }
internal AndroidUser(IDictionary _userProfileData) { if (_userProfileData != null) { m_identifier = _userProfileData.GetIfAvailable <string>(kIdentifier); m_name = _userProfileData.GetIfAvailable <string>(kName); m_imagePath = _userProfileData.GetIfAvailable <string>(kHighResImageURL); } }
internal AndroidUser (IDictionary _userProfileData) { if(_userProfileData != null) { m_identifier = _userProfileData.GetIfAvailable<string>(kIdentifier); m_name = _userProfileData.GetIfAvailable<string>(kName); m_imagePath = _userProfileData.GetIfAvailable<string>(kHighResImageURL); } }
protected override void LoadAchievementsFinished(IDictionary _dataDict) { EGCAchievement[] _gcAchievements = _dataDict.GetIfAvailable <EGCAchievement[]>(EditorGameCenter.kAchievementsListKey); string _error = _dataDict.GetIfAvailable <string>(EditorGameCenter.kErrorKey); Achievement[] _newAchievements = EditorAchievement.ConvertAchievementsList(_gcAchievements); // Invoke handler LoadAchievementsFinished(_newAchievements, _error); }
protected override void LoadUsersFinished(IDictionary _dataDict) { IList _usersJSONList = _dataDict.GetIfAvailable <IList>(kPlayersListKey); string _error = _dataDict.GetIfAvailable <string>(kNativeMessageErrorKey); User[] _newUsers = iOSUser.ConvertUsersList(_usersJSONList); // Invoke handler LoadUsersFinished(_newUsers, _error); }
protected override void LoadUsersFinished(IDictionary _dataDict) { EGCUser[] _gcUsers = _dataDict.GetIfAvailable <EGCUser[]>(EditorGameCenter.kUsersListKey); string _error = _dataDict.GetIfAvailable <string>(EditorGameCenter.kErrorKey); User[] _newUsers = EditorUser.ConvertUsersList(_gcUsers); // Invoke handler LoadUsersFinished(_newUsers, _error); }
public AndroidBillingProduct(IDictionary _productJsonDict) { AndroidProductID = _productJsonDict[kProductIdentifier] as string; Name = _productJsonDict[kName] as string; Description = _productJsonDict[kDescription] as string; Price = _productJsonDict.GetIfAvailable <long>(kPriceAmount) / 1000000.0f; //As the value is in microns LocalizedPrice = _productJsonDict.GetIfAvailable <string>(kLocalisedPrice); CurrencyCode = _productJsonDict.GetIfAvailable <string>(kPriceCurrencyCode); CurrencySymbol = _productJsonDict.GetIfAvailable <string>(kPriceCurrencySymbol); }
public iOSNotificationPayload (IDictionary _payloadDict) { iOSProperties = new iOSSpecificProperties(); string _userInfoKey = NPSettings.Notification.iOS.UserInfoKey; IDictionary _apsDict = _payloadDict[kAPS] as IDictionary; // Read alert info from aps dictionary if (_apsDict.Contains(kAlert)) { object _alertUnknownType = _apsDict[kAlert] as object; if (_alertUnknownType != null) { // String format if ((_alertUnknownType as string) != null) { AlertBody = _alertUnknownType as string; } // Dictionary format else { IDictionary _alertDict = _alertUnknownType as IDictionary; string _alertAction = _alertDict.GetIfAvailable<string>(kAction); bool _hasAction = false; if (_alertDict.Contains(kHasAction)) _hasAction = System.Convert.ToBoolean(_alertDict[kHasAction]); else _hasAction = (_alertAction != null); // Set properties AlertBody = _alertDict.GetIfAvailable<string>(kBody); iOSProperties.AlertAction = _alertAction; iOSProperties.HasAction = _hasAction; iOSProperties.LaunchImage = _alertDict.GetIfAvailable<string>(kLaunchImage); } } } // Read sound, badge info from aps dictionary SoundName = _apsDict.GetIfAvailable<string>(kSound); iOSProperties.BadgeCount = _apsDict.GetIfAvailable<int>(kBadge); // Read user info from payload dictionary UserInfo = _payloadDict.GetIfAvailable<IDictionary>(_userInfoKey); // Read fire date, repeat interval from payload dictionary string _fireDateStr = _payloadDict.GetIfAvailable<string>(kFireDate); if (_fireDateStr != null) FireDate = _fireDateStr.ToZuluFormatDateTimeLocal(); RepeatInterval = ConvertToRepeatInterval(_payloadDict.GetIfAvailable<CalendarUnit>(kRepeatIntervalKey)); }
protected override void ParsePickImageFinishedData (IDictionary _infoDict, out string _selectedImagePath, out ePickImageFinishReason _finishReason) { _selectedImagePath = _infoDict.GetIfAvailable<string>(kImagePath); _finishReason = kPickImageParseMap[_infoDict.GetIfAvailable<string>(kFinishReason)]; // Selected image path is invalid if (string.IsNullOrEmpty(_selectedImagePath)) { _selectedImagePath = null; _finishReason = ePickImageFinishReason.FAILED; } }
internal AndroidScore (IDictionary _scoreData) { LeaderboardID = _scoreData.GetIfAvailable<string>(kIdentifier); LeaderboardGlobalID = GameServicesIDHandler.GetLeaderboardGID(LeaderboardID); User = new AndroidUser(_scoreData.GetIfAvailable<Dictionary<string, object>>(kUser)); Value = _scoreData.GetIfAvailable<long>(kValue); long _timeInMillis = _scoreData.GetIfAvailable<long>(kDate); Date = _timeInMillis.ToDateTimeFromJavaTime(); Rank = _scoreData.GetIfAvailable<int>(kRank); }
protected override void LoadAchievementsFinished (IDictionary _dataDict) { IList _achievementsJSONList = _dataDict.GetIfAvailable<IList>(kAchievementsList); string _error = _dataDict.GetIfAvailable<string>(kNativeMessageError); Achievement[] _newAchievements = null; if (_achievementsJSONList != null) { _newAchievements = AndroidAchievement.ConvertAchievementList(_achievementsJSONList); } LoadAchievementsFinished(_newAchievements, _error); }
internal ProductUpdateInfo (string _currentVersion, IDictionary _dataDict) : this () { string _availableVersion = _dataDict.GetIfAvailable<string>(kVersionNumberKey); string _downloadLink = _dataDict.GetIfAvailable<string>(kDownloadLinkKey); string _assetStoreLink = _dataDict.GetIfAvailable<string>(kAssetStoreLink); string _releaseNote = _dataDict.GetIfAvailable<string>(kReleaseNoteKey); // Update class properties NewUpdateAvailable = (_availableVersion.CompareTo(_currentVersion) > 0); VersionNumber = _availableVersion; DownloadLink = _downloadLink; AssetStoreLink = _assetStoreLink; ReleaseNote = _releaseNote; }
protected override void LoadAchievementDescriptionsFinished (IDictionary _dataDict) { IList _descriptionsJSONList = _dataDict.GetIfAvailable<List<object>>(kAchievementsList);//On Android desc's are also in Achievement details. string _error = _dataDict.GetIfAvailable<string>(kNativeMessageError); AchievementDescription[] _newDescriptions = null; Debug.Log("LoadAchievementDescriptionsFinished [IDictionary] " + _descriptionsJSONList.ToJSON()); if (_descriptionsJSONList != null) { _newDescriptions = AndroidAchievementDescription.ConvertAchievementDescriptionList(_descriptionsJSONList); } LoadAchievementDescriptionsFinished(_newDescriptions, _error); }
protected override void ReportScoreFinished (IDictionary _dataDict) { string _error = _dataDict.GetIfAvailable<string>(EditorGameCenter.kErrorKey); EGCScore _gcScoreInfo = _dataDict.GetIfAvailable<EGCScore>(EditorGameCenter.kScoreInfoKey); if (_gcScoreInfo != null) { // Update properties Value = _gcScoreInfo.Value; Date = _gcScoreInfo.Date; Rank = _gcScoreInfo.Rank; } ReportScoreFinished(_error == null, _error); }
public iOSScore (IDictionary _dataDict) : base () { // Parse data dictionary values string _leaderboardID = _dataDict.GetIfAvailable<string>(kLeaderboardIdentifierKey); IDictionary _userDataDict = _dataDict.GetIfAvailable<IDictionary>(kPlayerKey); LeaderboardGlobalID = GameServicesIDHandler.GetLeaderboardGID(_leaderboardID); LeaderboardID = _leaderboardID; Value = _dataDict.GetIfAvailable<long>(kValueKey); Date = _dataDict.GetIfAvailable<string>(kDateKey).ToZuluFormatDateTimeLocal(); Rank = _dataDict.GetIfAvailable<int>(kRankKey); if (_userDataDict != null) User = new iOSUser(_userDataDict); }
protected override void RequestForAchievementImageFinished (IDictionary _dataDict) { string _instanceID = _dataDict.GetIfAvailable<string>(kObjectInstanceIDKey); // Invoke handler RequestForAchievementImageFinished(_instanceID, _dataDict); }
protected override void ReportProgressFinished (IDictionary _dataDict) { string _instanceID = _dataDict.GetIfAvailable<string>(kObjectInstanceIDKey); // Invoke handler ReportProgressFinished(_instanceID, _dataDict); }
public iOSWebViewMessage (IDictionary _schemeDataJsonDict) { string _schemeName = _schemeDataJsonDict.GetIfAvailable<string>(kURLScheme); string _host = _schemeDataJsonDict.GetIfAvailable<string>(kHost); IDictionary _args = _schemeDataJsonDict[kArguments] as IDictionary; // Assign value SchemeName = _schemeName; Host = _host; Arguments = new Dictionary<string, string>(); foreach (object _key in _args.Keys) { string _keyStr = _key.ToString(); string _valueStr = _args[_key].ToString(); // Add key and value Arguments[_keyStr] = _valueStr; } }
public iOSBillingProduct (IDictionary _productJsonDict) { Name = _productJsonDict.GetIfAvailable<string>(kTitle); IOSProductID = _productJsonDict.GetIfAvailable<string>(kProductID); Description = _productJsonDict.GetIfAvailable<string>(kDescription); Price = _productJsonDict.GetIfAvailable<float>(kPrice); LocalizedPrice = _productJsonDict.GetIfAvailable<string>(kLocalizedPrice); CurrencyCode = _productJsonDict.GetIfAvailable<string>(kCurrencyCode); CurrencySymbol = _productJsonDict.GetIfAvailable<string>(kCurrencySymbol); }
public AndroidNotificationPayload(IDictionary _payloadDict) { AndroidProperties = new AndroidSpecificProperties(); // Alert if (_payloadDict.Contains(NPSettings.Notification.Android.ContentTextKey)) { //Check here which key is being received. Console.Log(Constants.kDebugTag, "[BillingTransaction] " + _payloadDict.ToJSON());//TODO object _alertUnknownType = _payloadDict[ContentTextKey] as object; // String type if ((_alertUnknownType as string) != null) { AlertBody = _alertUnknownType as string; } } if (_payloadDict.Contains(UserInfoKey)) UserInfo = _payloadDict[UserInfoKey] as IDictionary; // Fire date long _secsFromNow = _payloadDict.GetIfAvailable<long>(kFireDate); FireDate = _secsFromNow.ToDateTimeFromJavaTime(); // Sound, Badge AndroidProperties.ContentTitle = _payloadDict.GetIfAvailable<string>(ContentTitleKey); AndroidProperties.TickerText = _payloadDict.GetIfAvailable<string>(TickerTextKey); AndroidProperties.Tag = _payloadDict.GetIfAvailable<string>(TagKey); //Added in 1.03 AndroidProperties.CustomSound = _payloadDict.GetIfAvailable<string>(kCustomSound); AndroidProperties.LargeIcon = _payloadDict.GetIfAvailable<string>(kLargeIcon); }
public AndroidAddressBookContact (IDictionary _contactInfoJsontDict) { string _givenName = _contactInfoJsontDict.GetIfAvailable<string>(kGivenName); string _familyName = _contactInfoJsontDict.GetIfAvailable<string>(kFamilyName); // Set first name and last name FirstName = _givenName; LastName = _familyName; ImagePath = _contactInfoJsontDict.GetIfAvailable<string>(kImagePath); // Set phone numbers IList _phoneNumJSONList = _contactInfoJsontDict.GetIfAvailable<IList>(kPhoneNumList); string[] _newPhoneNumList = null; if (_phoneNumJSONList != null) { int _totalCount = _phoneNumJSONList.Count; _newPhoneNumList = new string[_totalCount]; for (int _iter = 0; _iter < _totalCount; _iter++) _newPhoneNumList[_iter] = (string)_phoneNumJSONList[_iter]; } PhoneNumberList = _newPhoneNumList; // Set email id list IList _emailIDJsonList = _contactInfoJsontDict.GetIfAvailable<IList>(kEmailList); string[] _newEmailIDList = null; if (_emailIDJsonList != null) { int _totalCount = _emailIDJsonList.Count; _newEmailIDList = new string[_totalCount]; for (int _iter = 0; _iter < _totalCount; _iter++) _newEmailIDList[_iter] = (string)_emailIDJsonList[_iter]; } EmailIDList = _newEmailIDList; }
internal CrossPlatformNotification(IDictionary _jsonDict) { // Get alert body AlertBody = _jsonDict.GetIfAvailable<string>(kAlertBodyKey); // Get fire date string _fireDateStr = _jsonDict.GetIfAvailable<string>(kFireDateKey); if (!string.IsNullOrEmpty(_fireDateStr)) FireDate = _fireDateStr.ToDateTimeLocalUsingZuluFormat(); // Get user info UserInfo = _jsonDict[kUserInfoKey] as IDictionary; // Get iOS specific properties, if included if (_jsonDict.Contains(kiOSPropertiesKey)) iOSProperties = new iOSSpecificProperties(_jsonDict[kiOSPropertiesKey] as IDictionary); // Get Android specific properties, if included if (_jsonDict.Contains(kAndroidPropertiesKey)) AndroidProperties = new AndroidSpecificProperties(_jsonDict[kAndroidPropertiesKey] as IDictionary); }