demo ios 开发_ios 开发 demo - CSDN
  • iOS蓝牙开发总结及Demo

    2018-12-24 18:59:28
    1. 概念 BLE ,buletouch low energy,蓝牙4.0设备因为低耗电,所以也叫做BLE; 中心设备 ,用于扫描周边蓝牙...广播 ,外部设备不停的散播的蓝牙信号,让中心设备可以扫描到,也是我们开发中接收数据的入口;...

    1. 概念

    Alt

    1. BLE ,buletouch low energy,蓝牙4.0设备因为低耗电,所以也叫做BLE;
    2. 中心设备 ,用于扫描周边蓝牙外设的设备,比如我们上面所说的中心者模式,此时我们的手机就是中心设备;
    3. 外设 ,被扫描的蓝牙设备,比如我们上面所说的用我们的手机连接小米手环,这时候小米手环就是外设;
    4. 广播 ,外部设备不停的散播的蓝牙信号,让中心设备可以扫描到,也是我们开发中接收数据的入口;
    5. 服务(Service) ,外部设备在与中心设备连接后会有服务,可以理解成一个功能模块,中心设备可以读取服务,筛选我们想要的服务,并从中获取出我们想要特征。(外设可以有多个服务);
    6. 特征(Characteristic) ,服务中的一个单位,一个服务可以多个特征,而特征会有一个value,一般我们向蓝牙设备写入数据、从蓝牙设备读取数据就是这个value;
    7. UUID ,区分不同服务和特征的唯一标识,使用该字端我们可以获取我们想要的服务或者特征(ps: 不同的中心设备(也可以说是不同的手机)对于同一台蓝牙设备,获取到的UUIDString可能是不一样的)。

    2. CoreBluetooth框架

    CoreBluetooth框架的核心其实是两个东西,peripheral和central, 可以理解成外设和中心。
    图中两组api分别对应不同的业务场景,左侧叫做中心模式,就是以你的app作为中心,连接其他的外设的场景,而右侧称为外设模式,使用手机作为外设别其他中心设备操作的场景

    Alt

    蓝牙中心模式流程

    1. 建立中心角色
    2. 扫描外设(discover)
    3. 连接外设(connect)
    4. 扫描外设中的服务和特征(discover)
        - 4.1 获取外设的services
        - 4.2 获取外设的Characteristics,获取Characteristics的值,获取Characteristics的Descriptor和Descriptor的值
    5. 与外设做数据交互(explore and interact)
    6. 订阅Characteristic的通知
    7. 断开连接(disconnect)
    

    蓝牙外设模式流程

    1. 启动一个Peripheral管理对象
    2. 本地Peripheral设置服务,特性,描述,权限等等
    3. Peripheral发送广告
    4. 设置处理订阅、取消订阅、读characteristic、写characteristic的委托方法
    

    3. Demo(这里只写了中心者模式)

    支持蓝牙名称搜索过滤、连接多台蓝牙设备、连续写入多条命令

    @class LSBluetoothManager;
    
    @protocol LSBluetoothManagerDelegate <NSObject>
    
    @optional
    // 获取设备,会调用多次,需要先调用- (void)startScanDevices;
    - (void)manager:(LSBluetoothManager *_Nullable)manager didDiscoverDeveice:(nonnull LSBluetoothModel *)peripheral error:(nullable NSError *)error;
    
    // 连接某一台设备是否成功的结果,需要先调用- (void)conect:(CBPeripheral *)peripheral;
    - (void)manager:(LSBluetoothManager *_Nonnull)manager connectedDevice:(nonnull CBPeripheral *)peripheral state:(BOOL)state;
    
    // 写入数据结果,需要先调用writeWithPeripheral:(CBPeripheral *_Nonnull)peripheral ServiceUUID:(NSString * _Nonnull )ServiceUUID CharacteristicWriteUUID:(NSString *_Nonnull)characteristicWriteUUID CharacteristicNotifyUUID:(NSString *_Nonnull)characteristicNotifyUUID CMD:(NSString *_Nonnull)CMDString;
    - (void)manager:(LSBluetoothManager *_Nullable)manager didUpdateValueForCharacteristic:(nonnull CBCharacteristic *)characteristic receiveData:(NSData *_Nullable)receiveData error:(nullable NSError *)error;
    
    @end
    
    @interface LSBluetoothManager : NSObject
    
    @property (nonatomic, weak, nullable) id <LSBluetoothManagerDelegate> delegate;
    
    // 初始化蓝牙
    + (instancetype _Nonnull )shareManager;
    
    // 蓝牙是否打开,需要设置代理
    - (BOOL)isAuthorizationOpen;
    
    // 开始扫描,prefix: 只查找某一个前缀开头的设备,传nil默认扫描所有
    - (void)startScanDevicesHasNamePrefix:(NSString *_Nullable)nameprefix;
    
    // 结束扫描
    - (void)stopScanDevices;
    
    // 连接某一台设备
    - (void)conect:(CBPeripheral *_Nonnull)peripheral ServiceUUID:(NSString * _Nonnull )ServiceUUID CharacteristicWriteUUID:(NSString *_Nonnull)characteristicWriteUUID CharacteristicNotifyUUID:(NSString *_Nonnull)characteristicNotifyUUID;
    
    // 判断获取某一台设备是否在线
    - (BOOL)isOnLine:(CBPeripheral *_Nonnull)peripheral ServiceUUID:(NSString *_Nonnull)ServiceUUID;
    
    // 断开某一台设备
    - (void)disconect:(CBPeripheral *_Nullable)peripheral;
    
    // 写入数据
    - (void)writeWithPeripheral:(CBPeripheral *_Nonnull)peripheral ServiceUUID:(NSString * _Nonnull )ServiceUUID CharacteristicWriteUUID:(NSString *_Nonnull)characteristicWriteUUID CharacteristicNotifyUUID:(NSString *_Nonnull)characteristicNotifyUUID CMD:(NSString *_Nonnull)CMDString;
    
    @end
    

    传送门,祝自己生日快乐,hhhhh,

    展开全文
  • iOS转盘抽奖demo

    2020-07-30 23:32:18
    iOS抽奖转盘,点击中间的按钮,转到指定的位置
  • IOS开发-解决demo真机运行不了问题 分类: IOS2014-11-07 18:00 5人阅读 评论(0) 收藏 举报 ios开发iphone照相真机测试demo真机 本人今天弄了一下午终于把开发者账号添加到公司开发账户上了!激动。...
     

    IOS开发-解决demo真机运行不了问题

    分类: IOS 5人阅读 评论(0) 收藏 举报

    本人今天弄了一下午终于把开发者账号添加到公司开发账户上了!激动。但当要把一些网上下载的demo在真机上运行看看效果时,又纠结了!(Ps:我在调试照相机录像功能,虚拟机没摄像功能,大家懂的。所以,必须真机才能看到功能效果)。好吧,废话了一段!接下来进入正题。

    1.首先,我们先来链接手机直接运行一下看看什么效果吧


    2.看看上图的提示是什么意思:大概意思是说找不到签证的开发者身份。那么,你就得先有苹果开发者(https://developer.apple.com/)付费账号才可以了,然后创建一个App ID。


    2.把Bundle Identifier改成与开发者中心那的App ID的一样。

    3.回车确定修改,再次点击运行。如果可以运行,那就OK了。如果弹出如下警告,那就接着改吧:


    4.先别急,我们看看提示是什么,大概意思是说找不到开发者有效的开发者身份签名。我们再回到一开始的错误提示看看漏了什么

    5.找到你的项目xcode文件,右击显示包内容

    6.找到project.pbxproj文件,双击打开后

    7.完蛋了,打开后发这么多的字母,怎么找到那个开发者名字

    8.别急,按住command+F,打开搜索,输入之前提示的那个开发者名括号内的内容快速查找

    9.找到后,我们把它屏蔽掉。屏蔽方式就跟上面的屏蔽方式一样,用/*屏蔽的内容*/来屏蔽掉那一串就行了。

    /**/   ←注意注释屏蔽

    10.保存好,再次运行,成功编译到手机。


    展开全文
  • OSChina 前往 OSChina Code4App 前往 Code4App CocoaChina 前往 CocoaChina 码云 前往码云 ...
    展开全文
  • 由于接到iphone需要和第三方蓝牙设备交互的任务,便开始了蓝牙开发这件事。 在探索了一段时间后,iOS的蓝牙开发相关Apple大致有以下几种方式。 1 GameKit.framework 【只能存在于iOS设备之间,多用于游戏 能...

    苹果官方demo合集网址:

    http://www.mobile-open.com/2015/40348.html


    由于接到iphone需要和第三方蓝牙设备交互的任务,便开始了蓝牙开发这件事。

    在探索了一段时间后,iOS的蓝牙开发相关Apple大致有以下几种方式。


    1 GameKit.framework

    【只能存在于iOS设备之间,多用于游戏

    能搜索到的demo比较多,不确切说名字了,code4app里面就有】


    2 CoreBlueTooth.framework

    【必须要支持蓝牙4.0,且iPhone4以上,即至少4s手机。可与第三方设备交互数据,

    官方demo是Temperature Sensor 】


    3 ExternalAccessory.framework

    【可于第三方蓝牙设备交互,但是蓝牙设备必须经过MFI认证,需要有苹果的协议,

    官方demo是 EADemo和 BTLE


    4 Multipeer Connectivity.framework

    【只能用于iOS设备之间,且iOS7才引入。主要是为了共享文件,但是文件是在sandbox内

    官方demo是ios7 sample】


    由于我是做的接入第三方蓝牙设备的,故只能采取2 还  3 方式。

    但又由于3方式需要经过苹果公司的MFI认证,而国内很多蓝牙提供商事没有经过这个认证的所以我们采用了第二种方式。CoreBlueTooth,也就是通过蓝牙4.0的 BLE模式来进行开发。

    下面详细介绍一下BLE开发模式在iOS下的应用方式。

    首先BLE将蓝牙设备分为了两类:

    一 中央设备(Central)

    二 外围设备(Peripheral)


    这两个设备的交互方式如下:

    首先外围设备会广播自身的信息,这时中央设备如果启用检索发现功能,就会发现广播的外围设备并得到这些外围设备的列表。

    中央设备选择你需要连接的外围设备连接上。这时中央设备和外围设备交互的第一步就被打通了。


    详细分析接下来的步骤如下图:



    左侧为中央设备(Central),右侧为外围设备(Peripheral) 。

    这里我以Central连接Peripheral,并向Peripheral发送数据为例,结合代码进行分析。


    步骤如下:

    1 中央设备查找外围设备通过上图中的CBCentralManager,并显示出各外围设备的名称以及UUID,也可通过回调显示每个Peripheral的信号强度。

    [调用系统函数为]:


    2 连接你所需要连接的Peripheral,这里就是上图中的CBPeripheral对象。

    [调用系统函数为]:


    3 查找对应的服务,查找对应服务下的CBCharacteristic。

    [调用系统函数为]:


    4 向对应的CBCharactieristic发送数据。发送数据和接收数据共有4种方式。

    [调用系统函数为]:


    展开全文
  • iOS 直播技术及Demo

    2019-06-05 14:00:33
    要过年了,新年快乐,今天写一些关于iOS直播技术相关知识,及详细Demo介绍,首先请下载DemoDemo下载地址(点击跳转下载) 一.直播介绍 1.1.直播现状 近年来,直播越来越火,但直播技术却对软件开发人员技术要求很...
  • MVVM应用在iOSDemo,主要通过经典的TableView来演示 阅读 4718收藏 932015-6-29 coderyi9 推荐: MVVM来自微软,是一个相当不错的架构模式。 原文链接:https://github.com/coderyi/MVVMDemo MVVM在iOS应用的...
  • Demo源码:https://github.com/EmyWong/PersonalUITech前言作为一名iOS开发人员,我觉得第一步是能够基本模仿一个APP,完成别人APP的界面搭建;第二步,是尽量学会转载,学习别人的博客和技术;第三步,是学会原创,...
  • iOS开发-自定义键盘

    2016-01-11 18:26:38
    iOS 开发中很简单的小 Demo, 关于自定义键盘的,有需要的都拿走吧!
  • 友盟分享Demo iOS

    2015-06-08 23:10:59
    友盟分享demo iOS
  • 分享一些iOS实用Demo

    2017-01-19 11:36:24
    iOS –分享一些iOS实用Demo 图像浏览及处理FLAnimatedImage - gif播放处理的工具。CLImageEditor - 超强的图片编辑库,快速帮你实现旋转,防缩,滤镜等等一系列麻烦的事情。ios-image-filters - 图像滤镜,库比较...
  • iOS聊天开发Demo

    2020-07-30 15:13:02
    一个类似微信App的IM应用,拥有发送文字、图片、语音、视频、地理位置消息等功能。
  • ios 屏幕共享演示demo

    2020-07-28 23:31:14
    是研究ios屏幕共享时编制的demo,重点参考了如下两个开源项目: 1 http://www.gdcl.co.uk/2013/02/20/iOS-Video-Encoding.html (ios 上h.264硬编码,RTSP服务端) 2 https://github.com/coolstar/RecordMyScreen ...
  • 现在App基本上都有滑动式图的展示,尤其是新闻资讯类的用到的最多,今天就给大家展示一个多样的滑动视图样式;首先可以看到,这是几种不同的搭配模式,也可以根据style进行其他样式的尝试,其中我们可以根据...
  • 一个不错的iOSdemo

    2016-07-29 17:18:23
    今天上简书的时候看到一篇不错的文章,里面作者自己分享了一个不错的iOS程序有兴趣可以去下载看看。 https://github.com/SketchK/FOUR 地址。
  • iOS视频通话/直播demo

    2020-07-30 23:32:34
    iOS/android视频通话/直播软件,视频编码器采用h264,经过优化的,码率低,cpu占用率低。音频采用aac。传输采用rtp,视频通话有进行丢包处理,完全没有丢包和抖动现象。直播接收程序用rtsp请求服务器的音视频流,...
  • 1. 大疆无人机IOS开发之搭建DJI Phantom和iOS视觉平台 2. Android内核开发之开发板选购 3. iOS开发技术文章 4. Swift扩展的三个微妙细节 5. android人脸识别
  • ios开发比特币钱包demo

    2018-09-27 15:56:10
    比特币静态库地址 https://gitee.com/yiwentao1993119/BTCDemo.git ...   ...开发功能目前有: 1 离线创建钱包 生成对应算法助记词、私钥(生成钱包) 2 验证私钥(私钥导入钱包) 3 查询余额 4 查询交易记录...
  • 前言:之所以会整理这份博文,是因为这两天安排我调研一下Hybrid混合开发,如何实现UIWebView页面与native界面互相调用,在此期间查了很多资料,问了两个学长,知识点比较零散,所以在此我集中整理了iOS7之前和之后...
  • iOS架构Demo(MVC、MVP)

    2020-07-28 23:31:19
    iOS架构Demo(MVC、MVP)例子代码
1 2 3 4 5 ... 20
收藏数 51,469
精华内容 20,587
关键字:

demo ios 开发