Вставить версию приложения в строку, используя Swift?
У меня есть некоторый код в Swift, и я хотел бы вставить свойство приложения (версия). Это возможно?
var parameters: [String : AnyObject] = [
"offerSef" : url,
"userGuid" : user.userGuid,
"bottlesQty" : quantityIndex + 1,
"appId" : "iOS" + /* WANT TO INSERT APP VERSION HERE */,
"creditCardId" : payment.paymentID,
"billingAddressId" : payment.billingAddressId,
]
Примечание. Это не дубликат приложения для iOS, программная версия сборки, потому что у меня вопрос о том, как сделать это правильно с помощью Swift (в отличие от Objective-C)
1 ответ
Решение
Это ответ, который я собрал из другого вопроса здесь, но мне также интересно, есть ли у кого-то комментарии или знает лучший / более чистый способ сделать это.
//First get the nsObject by defining as an optional anyObject
if let nsObject: AnyObject? = NSBundle.mainBundle().infoDictionary["CFBundleShortVersionString"] {
//Then just cast the object as a String, but be careful, you may want to double check for nil
if let version = nsObject as String {
appId = appId + "-" + version
}
}
var parameters: [String : AnyObject] = [
"offerSef" : url,
"userGuid" : user.userGuid,
"bottlesQty" : quantityIndex + 1,
"appId" : appId,
"isMobile" : true,
"creditCardId" : payment.paymentID,
"billingAddressId" : payment.billingAddressId,
]