因此,在python中,如果我想访问OSX包,可以使用objc模块,如下所示:
import objc
objc.loadBundle('CoreWLAN',
bundle_path='/System/Library/Frameworks/CoreWLAN.framework',
module_globals=globals())是否有一种优雅的方法,在高丽,也许有一个模块?谷歌找的我不多。我是否必须使用该语言的C导入特性来调用它?这有可能吗?
我的具体情况是,我想阅读WIFI数据为可用的接入点,通道,信号强度和信噪比的交谈谷歌地图地理定位API。
发布于 2015-09-28 13:59:36
实验室给出了一个很好的回答,但不幸的是,他并没有给出答案。
基本上你就这样使用cgo ..。
//cgo LDFLAGS: -framework CoreWLAN...and您可以直接调用框架。引用他的答复:
.framework包在其顶层包含一个动态加载的库。在系统框架中,这个动态加载的库的文件名是框架的基本名称,并且没有典型的.dylib扩展。如果您愿意直接使用libdl,这意味着cgo,您可以动态加载这个dylib并直接调用它的函数。但是由于我们现在使用的是cgo,有一个更好的方法:// CoreWLAN:-framework CoreWLAN,然后直接从cgo中使用API。-实验室 事实上,仔细研究一下,CoreWLAN的API是基于目标C的,所以您别无选择,只能使用cgo并执行我所说的后者:/ (不要试图直接使用Objective运行时API;这会导致冗长、不安全和不可移植的代码)和实验室。
https://stackoverflow.com/questions/32595037
复制相似问题