美文网首页iOS逆向
Swift 获取属性列表

Swift 获取属性列表

作者: YourSummer | 来源:发表于2019-09-26 16:16 被阅读0次

    通过以下方式调用可以获取Swift某一个类中的所有属性列表, 包括系统的类以及自定义的类

    func getPropertyNames(cls: AnyClass) -> [String] {
        var peopertys: [String] = []
        var outCount: UInt32 = 0
        guard let peopers = class_copyPropertyList(cls.self, &outCount) else { return [] }
        let count:Int = Int(outCount)
        for i in 0...(count-1) {
                let aPro: objc_property_t = peopers[i]
                let proName = String(cString: property_getName(aPro))
                propertys.append(proName)
            }
        return propertys
    }
    
    • 1, 我们可以通过获取属性列表, 看到系统类有哪些属性, 并使用KVC去修改该属性的值
      1. 如果在项目中你将部分数据存储在UserDefaults 中, 那么在用户退出, 或者你的token失效的时候需要清除掉UserDefaults 的内容, 这时就可以获取属性列表, 并遍历删除该属性对应的UserDefaults中的内容
      1. 你可以对比这个项目,来尝试获取属性列表的一个用途->点它https://github.com/chaopengCoder/UserDefaultDemo

    相关文章

      网友评论

        本文标题:Swift 获取属性列表

        本文链接:https://www.haomeiwen.com/subject/gmxnuctx.html