Qt读取苹果系统OSX上的plist资源文件
来源:互联网 发布:建筑结构优化设计 编辑:程序博客网 时间:2024/06/05 16:54
先讲一下整体流程:
1、先在X-Code上创建.h和.mm文件,并写出主要读取资源文件函数和接口
2、把.h和.mm文件添加到Qt中,并写出C++间接调用接口
3、把界面和调用读取plist资源文件接口联系起来
对于MAC上的应用软件的信息读取,一般是对于该应用程序的info.plist的解析。
解析方法:
a、采用QT的Dom接口进行解析 ,就是把苹果的info.plist文件当成xml文件来解析,具体解析和解析XML方式一致,很简单,这里就不啰嗦了。
b、采用Object-C读取,然后通过C++来调用。第二种也比较容易,但是存在OC知识的陌生性,下面我们来一起进入第二种方法的解析吧。(说到要用Object-C,不得不提.mm文件和.m文件的差异性,这里我们用.mm文件。.mm文件除了可以包含Objective-C和C代码以外还可以包含C++代码,而.m文件只能包含Objective-C和C代码。这里我们要用到.mm文件,.mm文件可以直接用苹果电脑的X-Code开发平台生成,头文件还是.h。)
完成接口的话如图:
现将如图.mm文件代码公布如下:
#include "readDeviceInfo.h"
#include <QDebug>
#import <Foundation/Foundation.h>
#import <iostream>
#ifdef Q_OS_OSX
#import <Cocoa/Cocoa.h>
#endif
#import <GLKit/GLKit.h>
ReadDeviceInfo::ReadDeviceInfo()
{
}
{
NSString *executableFile = [[[NSBundle mainBundle] infoDictionary] objectForKey:(NSString *)kCFBundleExecutableKey]; //获取项目名称
return QString::fromNSString(executableFile);
}
QString ReadDeviceInfo::getAppPublicVersion()
{
NSString *executableFile = [[[NSBundle mainBundle] infoDictionary] objectForKey:(NSString *)kCFBundleInfoDictionaryVersionKey]; //获取外部版本
return QString::fromNSString(executableFile);
}
QString ReadDeviceInfo::getAppPrivateVersion()
{
NSString *executableFile = [[[NSBundle mainBundle] infoDictionary] objectForKey:(NSString *)kCFBundleVersionKey]; //获取内部版本
//NSString *executableFile = [[NSBundle mainBundle]objectForInfoDictionaryKey:@"CFBundleVersion"];
return QString::fromNSString(executableFile);
}
以上是苹果提供的最常用的三个接口,还有如下接口:
const CFStringRef kCFBundleInfoDictionaryVersionKey;
const CFStringRef kCFBundleExecutableKey;
const CFStringRef kCFBundleIdentifierKey;
const CFStringRef kCFBundleVersionKey;
const CFStringRef kCFBundleDevelopmentRegionKey;
const CFStringRef kCFBundleNameKey;
const CFStringRef kCFBundleLocalizationsKey;
- Qt读取苹果系统OSX上的plist资源文件
- IOS读取plist资源文件
- IOS读取plist资源文件
- IOS读取plist资源文件
- MAC osx下的plist文件读写
- QT读写Mac 系统的注册文件(.plist文件)
- 在IOS中如何读取系统产生的plist文件和自定义的plist文件
- 在IOS中如何读取系统产生的plist文件和自定义的plist文件
- 在IOS中如何读取系统产生的plist文件和自定义的plist文件
- QT mac os的info.plist读取
- plist文件的内容的读取
- 苹果osx系统切换中文
- Mac OS,读取plist文件的方法
- plist文件的创建与读取
- iOS 本地plist文件的读取
- IOS中plist文件内容的读取
- plist文件的写入和读取
- plist文件的创建与读取
- 算法学习笔记之一阶低通滤波算法
- MPChart折线图工具类封装
- Replace字符串,动态引用strings.xml
- 符号不变 单词内部反转
- ButterKnife 8.1.0 空指针
- Qt读取苹果系统OSX上的plist资源文件
- Python opencv库教程
- web前端学习2016.9.26
- ajax原函数和各个常用参数列表
- 第四周 项目2-建立“单链表”算法库
- codevs 2645 Spore
- CFNetwork编程指南(四)——与身份验证HTTP服务器通信(Communicating with Authenticating HTTP Servers)
- 图的存储
- Android Focusable in Touch Mode 介绍