靠北’s Notes

我用文字记忆,青春年华。


  • 首页

  • 归档

  • 分类

  • 标签

iOS系统(音频)事件

发表于 2017-03-31 | 分类于 技术分享

音量通知key:

1
2
AVSystemController_SystemVolumeDidChangeNotification
AVAudioSessionRouteChangeNotification

阅读全文 »

WKWebView+webkit

发表于 2017-03-28 | 分类于 技术分享
近年来由于混合编程的发展趋势,越来越多的企业选择通过Native + Hybrid方式来减轻开发压力和减少开发成本 。 iOS8以后,Apple新推出了WKWebview来替换UIWebView。 WKWebview通过WKWebViewConfiguration注册可以被Js调用的方法。12345 ...
阅读全文 »

集成科大讯飞语音听写(writeAudio)

发表于 2016-12-26 | 分类于 技术分享

简书博客上也有发布:http://www.jianshu.com/p/228a4d57bbc7

本次主要对科大讯飞语音听写进行集成,需要到科大讯飞开放平台注册账号获得appid和下载对应的SDK。

我使用的是语音听写。以下内容在科大讯飞官方文档中均有体现,如有疑问可以回复我。

阅读全文 »

LinPhone双向录音和科大讯飞语音识别

发表于 2016-12-20 | 分类于 技术分享
linPhone是我们公司产品的核心,这次要做个语音识别为文字再转成会议纪要的功能,所以这几天每天都在研究和熟悉linPhone,俗话说好记性不如写博客,我就将我遇到的问题和解决的思路写下来,也许不准确,但我一直会修改的。 说了这么多什么是linPhone?linPhone是国外一款轻量级开源库,使 ...
阅读全文 »

iOS工程之间依赖

发表于 2016-12-07 | 分类于 技术分享
在开发过程中公司采用的是SDK化,对基础和同样的功能进行封装为.a静态库,在使用时通过工程依赖的方式直接引用.a的这个工程,有时候会出现许多问题。 1、为了让引入的工程的文件编译和新的工程文件之间不产生冲突,需要注意别在Framework Search Paths中去添加依赖路径。2、为了直接使用引 ...
阅读全文 »

iOS中FMDatabase应用

发表于 2016-10-31 | 分类于 技术分享
使用FMDatabase库管理sqlite3数据库。 步骤如下: 1、创建本地DB(1)DB.h123456789101112#import <Foundation/Foundation.h>#import "FMDatabase.h"#import " ...
阅读全文 »

xcode日志输出(区分真机和模拟器)

发表于 2016-10-29 | 分类于 技术分享
日志输出在xcode开发过程中十分必要,这里总结和记录一下。 1、日志打印(xcode8之后添加 OS_ACTIVITY_MODE disable 字段真机模式下会被屏蔽所有日志,所以用2)123456#ifdef DEBUG# define LX_DLog(fmt, ...) NSL ...
阅读全文 »

iOS集成ShareSDK

发表于 2016-09-01 | 分类于 技术分享
1、到ShareSDK官网(http://www.mob.com/#/download)下载SDK,注册appkey。2、将ShareSDK拖到工程。(也可以使用cocopods管理)3、在APPDelegate.m123456#import <ShareSDK/ShareSDK.h># ...
阅读全文 »

iOS数据持久化

发表于 2016-07-18 | 分类于 技术分享

1、保存到本地Plist文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
- (IBAction)plistSave:(UIButton *)sender {
//获取沙盒路径
NSString *sandBoxPath = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES).firstObject;
//新建路径存储plist文件
NSString *plistPath = [sandBoxPath stringByAppendingString:@"/StudentInfo.plist"];
//申明根数组
NSMutableArray *rootArray = nil;
//判断沙盒路径是否存在,根据沙盒路径初始化数组,不存在初始化数组
if ([[NSFileManager defaultManager] fileExistsAtPath:plistPath]) {
//根据沙盒路径初始化数组
rootArray = [NSMutableArray arrayWithContentsOfFile:plistPath];
}else{
rootArray = [NSMutableArray array];
}
//打包数据信息
if (self.name.text.length == 0 || self.age.text.length == 0 || self.grade.text.length == 0) {
NSLog(@"信息不完整,存储失败");
}else{
NSDictionary *dic = @{@"name":self.name.text,@"age":self.age.text,@"grade":self.grade.text};
[rootArray addObject:dic];
}
//存入plist文件
if ([rootArray writeToFile:plistPath atomically:YES]) {
NSLog(@"存储成功");
}else{
NSLog(@"存储失败");
}
NSLog(@"%@",plistPath);
}
阅读全文 »

地图与定位

发表于 2016-07-18 | 分类于 技术分享

iOS地图定位

  • 导入地图框架
1
2
#import <MapKit/MapKit.h>
#import <CoreLocation/CoreLocation.h>

1、定位

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
//CLLocationManager定位器
//1 判断设备是否支持定位服务
if (![CLLocationManager locationServicesEnabled]) {
NSLog(@"不支持此设备");
return;
}
//2 创建定位服务
_locationManager = [[CLLocationManager alloc] init];
//3 请求用户授权(使用期间) 在info.plist文件添加的字段必须与设置的字段一致
[_locationManager requestWhenInUseAuthorization];
//4 配置定位服务
//4.1 设置定位精度
_locationManager.desiredAccuracy = kCLLocationAccuracyBest;
//4.2 设置过滤距离(以用户位置方圆100米为半径,实际位置超过该范围才会更新位置。否则不更新)
_locationManager.distanceFilter = 100;
//4.3 设置代理
_locationManager.delegate = self;
//5 开始定位,定位为耗时操作。定位成功后一定关闭定位。
[_locationManager startUpdatingLocation];
// 在模拟器上定位失败的解决方法
//1 重置模拟器
//2 模拟器设置。debug - location - apple 和 customer 之间切换
阅读全文 »
1234
yao

yao

32 日志
5 分类
46 标签
© 2016 - 2018 yao