iPhone设备相关

获取手机当前版本号

     //获取硬件信息
    UIDevice *device=[UIDevice currentDevice];
    //输出版本号
    NSLog(@"%@",device.systemVersion);

获取手机方向

1 通知

 //检测设备朝向使用UIDevice,beginGeneratingDeviceOrientationNotifications方法向通知中心发送朝向信息
    [[UIDevice currentDevice]beginGeneratingDeviceOrientationNotifications];
    // 添加通知
    [[NSNotificationCenter defaultCenter]addObserver:self selector:@selector(orientationChanged:) name:UIDeviceOrientationDidChangeNotification object:nil];

2 实现方法

-(void)orientationChanged:(NSNotification *)notification
{
    UIDeviceOrientation orientation=[[UIDevice currentDevice]orientation];
    switch (orientation) {
        case UIDeviceOrientationFaceUp:
            NSLog(@"设备正面朝上");
            break;
            case UIDeviceOrientationFaceDown:
            NSLog(@"设备正面朝下");
            break;
            case UIDeviceOrientationPortrait:
            NSLog(@"设备处于正常朝向,主屏幕按钮在下方");
            break;
            case UIDeviceOrientationPortraitUpsideDown:
            NSLog(@"设备处于纵向,主屏幕按钮在上方");
            break;
            case UIDeviceOrientationLandscapeLeft:
            NSLog(@"设备侧立,左边朝下");
            break;
            case UIDeviceOrientationLandscapeRight:
            NSLog(@"设备侧立,右边朝下");
            break;
        default:
            break;
    }

手机震动,提示音,提醒

1 首先导入框架:AudioToolbox ,在文件中导入该框架的借口文件:#import<AudioToolbox/AudioToolbox.h>

音效

- (IBAction)buttonClick:(UIButton *)sender {

    //声明变量soundid,用来引入音效文件
    SystemSoundID soundid;
    //得到声音文件路径
    NSString *soundfile=[[NSBundle mainBundle]pathForResource:@"soundeffect" ofType:@"wav"];

    //1.桥接指向文件位置 __bridge.将C语言结构转化为OC语言对象
    AudioServicesCreateSystemSoundID((__bridge CFURLRef)[NSURL fileURLWithPath:soundfile], &soundid);
    //播放警告音
    AudioServicesPlaySystemSound(soundid);
}

提示音

- (IBAction)alertButtonClick:(UIButton *)sender {
    SystemSoundID soundid;
    NSString *soundfile=[[NSBundle mainBundle]pathForResource:@"soundeffect" ofType:@"wav"];
    AudioServicesCreateSystemSoundID((__bridge CFURLRef)[NSURL fileURLWithPath:soundfile], &soundid);
    //警告音,当用户调整为静音时震动
    AudioServicesPlayAlertSound(soundid);
}

震动
- (IBAction)shakeButtonClick:(UIButton *)sender {
    SystemSoundID soundid;
    //不论手机状态,只有震动
    AudioServicesPlaySystemSound(soundid);
}
时间: 2024-10-14 05:57:54

iPhone设备相关的相关文章

Xcode 6.1真机测试 8.1的iPhone设备时出现的编译错误的问题

如图:设备连接准备调试时出现21个错误.检查了各个环节都没问题(证书,设备连接状况...).然后我换了个7.1的iPhone 设备,调试顺利通过,这就奇怪了. 然后我就看了Xcode 5里面的配置.发现了区别 然后修改architectures 的值为 armv7 和armv7s就可以了 修改后的 这个里有关于 architectures的的介绍 http://www.cocoachina.com/industry/20140527/8566.html

关于iPhone设备不同显示尺寸适配的一些方法

关于iPhone设备不同显示尺寸适配的一些方法 ------关于适配的理解------ 1.什么是适配? 适配是对不同硬件和系统软件的适应,硬件包括屏幕显示,处理器,内存等等(目前主要是屏幕适配,iPhone 6s新增了3D Touch功能,其他硬件功能并没有实质性的改变),软件主要是不同iOS系统(有些在最新系统(通常会尽量向下兼容)不再支持的方法都需要做一些判断). 2.为什么要适配? 适配是为了兼容不同的设备. 3.屏幕适配主要有哪些方式? (1)等比例适配(所有视图按屏幕大小缩放,相对位

第15章 设备相关位图_15.1 DIB文件格式

15.1 DIB文件格式(一种文件格式,扩展名为BMP) 15.1.1 OS/2风格的DIB 文件格式 字段 说明 文件头 (BITMAPFILEHEADER) 1.共14个字节 2.缩写建议用bmfh WORD  bfType 文件签名,表示位图文件,以0x4D42,即字母“BM”打头 DWORD bfSize 整个文件的大小(含文件头的大小).单位:字节 WORD  bfReserved1 以下这两个字段必须为0.鼠标指针文件,格式类似于DIB但这两个字段表示了“热点”的位置. WORD  

iPhone设备及屏幕适配

// // Common.h // 微信 // // #ifndef Common_h #define Common_h // iPhone设备及屏幕适配 //4的设备 #define KDevice_Is_Retina ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(640, 960), [[UIScreen mainScreen] currentMode]

第15章 设备相关位图_15.3 DIB和DDB的结合

15.3.1 从DIB创建DDB (1)hBitmap =CreateDIBitmap(…)——注意这名称会误导,实际上创建的是DDB 参数 说明 hdc 设备环境句柄,可以为NULL. pInfoHdr 指向DIB信息头的指针,即BITMAPINFOHEADER fInit 0或CBM_INIT.CBM_INIT指定用后面3个参数来初始化DDB中的像素位 pBits DIB像素位的指针 pInfo DIB信息指针,即BITMAPINFO(包含BITMAPINFOHEADER和颜色表) fClr

解决移动端iPhone设备点击时出现半透明的灰色背景

问题:在iPhone设备上点击时会出现一个半透明的灰色背景. 解决办法: html,body{ -webkit-tap-highlight-color: rgba(0, 0, 0, 0); } -webkit-tap-highlight-color 是 css3 的新属性,这个属性只用于 IOS(iPhone和iPad).当你点击一个链接或通过 Javascript 定义的可点击元素的时候,它就会出现一个半透明的灰色背景.你可以设置 -webkit-tap-highlight-color 为任何

IOS 获取设备相关特性

一. 判断手机是否插入了SIM卡 解答: A.     私有 API 检测 [CTSIMSupportGetSIMStatus()isEqualToString:kCTSIMSupportSIMStatusNotInserted] 可以判断是否插入了 sim 卡. 前提是把下面的代码随便复制到一个头文件里面,然后引入CoreTelephony.framework 即可. 1    extern NSString* c*****tkCTSMSMessageReceivedNotification;

js获取浏览器和设备相关width(屏幕的宽度)

首先呢,我们将iPhone手机的相关数据表示如下 我们要理解很多东西,比如逻辑分辨率.物理分辨率.缩放因子.ppi等,这里先不讨论. 首先呢,我们先介绍下各个屏幕宽度: 网页可见区域宽: document.body.clientWidth网页可见区域高: document.body.clientHeight网页可见区域宽: document.body.offsetWidth (包括边线的宽)网页可见区域高: document.body.offsetHeight (包括边线的高)网页正文全文宽:

linux-framebuffer设备相关参数

如果应用程序需要知道Framebuffer设备的相关参数,必须通过ioctl()系统调用来完成. 在头文件<linux/fb.h>中定义了所有的ioctl命令字,不过,最常用的ioctl命令字是下面这两个:FBIOGET_FSCREENINFO和FBIOGET_VSCREENINFO. 前者返回与Framebuffer有关的固定的信息,比如图形硬件上实际的帧缓存空间的大小.能否硬件加速等信息. 而后者返回的是与Framebuffer有关的可变信息. 之所以可变,是因为对同样的图形硬件,可以工作