Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/120.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 应用内购买:产品标识符排序数组_Ios_Swift_In App Purchase_Storekit - Fatal编程技术网

Ios 应用内购买:产品标识符排序数组

Ios 应用内购买:产品标识符排序数组,ios,swift,in-app-purchase,storekit,Ios,Swift,In App Purchase,Storekit,我有以下非消耗性产品en RageProducts.swift public struct RageProducts { // MARK: identifiers product no consumible private static let s1 = "comic1" // name in itunnesconnect: Comic Vol 01 private static let s2 = "comic2" // name in itunnesconnect:

我有以下非消耗性产品en RageProducts.swift

public struct RageProducts {

    // MARK: identifiers  product no consumible
    private static let s1 = "comic1" // name in itunnesconnect: Comic Vol 01
    private static let s2 = "comic2" // name in itunnesconnect: Comic Vol 02
    private static let s3 = "comic3" // name in itunnesconnect; Comic Vol 03
    private static let s4 = "comic4"
    private static let s5 = "comic5"
    private static let s6 = "comic6"
    private static let s7 = "comic7"
    private static let s8 = "comic8"
    private static let s9 = "comic9"
    private static let s10 = "comic10" // name in itunnesconnect: Comic Vol 10
    private static let s11 = "comic11"
    private static let s12 = "comic12"
    private static let s13 = "comic13"

    // MARK .-  Set identifiers

    private static let myproductsIdentifier:  Set<ProductIdentifier> = [RageProducts.s1,
                                                                             RageProducts.s2,
                                                                             RageProducts.s3,
                                                                             RageProducts.s4,
                                                                             RageProducts.s5,
                                                                             RageProducts.s6,
                                                                             RageProducts.s7,
                                                                             RageProducts.s8,
                                                                             RageProducts.s9,
                                                                             RageProducts.s10,
                                                                             RageProducts.s11,
                                                                             RageProducts.s12,
                                                                             RageProducts.s13]
//MARK :  Reference to IAPHelper 
    public static let store = IAPHelper(productIdentifiers: RageProducts.myproductosIdentifiers)

}
正确的事情应该是:

Comic Vol 01
Comic Vol 10
Comic Vol 11
Comic Vol 12
Comic Vol 13
Comic Vol 02
Comic Vol 03
.
.
.
Comic Vol 09
Comic Vol 01
Comic Vol 02
Comic Vol 03
Comic Vol 04
Comic Vol 05
.
.
.
Comic Vol 13
是否有办法根据输入的顺序对其进行排序,或者如何解决此问题?


尝试重命名产品:漫画第一卷,漫画第二卷。。。漫画第10卷,…

尝试使用数组,而不是逐个声明它们

public struct RageProducts {

// MARK: identifiers  product no consumible
private static let arrayOfIdentifiers = ["comic1", "comic2", "comic3",
                                         "comic4","comic5", "comic6",
                                        "comic7","comic8","comic9",
                                        "comic10","comic11","comic12","comic13"]

// MARK .-  Set identifiers

private static let myproductsIdentifier:  Set<ProductIdentifier> = [RageProducts.arrayOfIdentifiers]
//MARK :  Reference to IAPHelper
public static let store = IAPHelper(productIdentifiers: RageProducts.myproductosIdentifiers) 
}
public struct RageProducts{
//标记:产品不可消费
私有静态let数组标识符=[“comic1”、“comic2”、“comic3”,
“comic4”、“comic5”、“comic6”,
“comic7”、“comic8”、“comic9”,
“comic10”、“comic11”、“comic12”、“comic13”]
//标记-设置标识符
私有静态let myproductsIdentifier:Set=[RageProducts.ArrayOfidentiers]
//标记:参考IAPHelper
公共静态let store=IAPHelper(产品标识符:RageProducts.myproductosIdentifiers)
}

同样的情况也会发生:'(感谢您的建议,但返回我:
无法将类型“[String]”的值转换为预期的参数类型“Set”(也称为“Set”)
Set
替换为
[ProductIdentifier]
ProductIdentifier的类型是通过tyalias
public typealias ProductIdentifier=String
so`private let productIdentifiers:Set`修复的,因此如果我更改为数组,它会给我一个错误。storeKit似乎可以与Set一起工作:(