IOS开发第三方语音-微信语音_IOS

微信只能开发平台http://pr.weixin.qq.com/,里面包含了微信语音和图像,集成很简单,下载方demo后会有个文档,按照流程来(因为它只提供了真机的.a文件,所以只能用真机哦,不然会报错)

先用个有UI界面的sdk

1.装上sdk,引入相关包

2.设置 Build Settings

C++ Standard Library: libstdc++ 或 Compiler Default

Compile Sources As: Objective-C++ 或 将使用 SDK 的文件扩展名改为.mm

随便把一个文件后缀改成.mm不然会报错

3.添加代码

#import "CustomNewViewControl.h"
#import "WXSpeechRecognizerWithUI.h"
@interface CustomNewViewControl ()<WXVoiceWithUIDelegate> {
  WXSpeechRecognizerWithUI *_wxssui;
  __weak IBOutlet UILabel *label;
}
@property (weak, nonatomic) IBOutlet UIButton *button;
@end
@implementation CustomNewViewControl
- (void)viewDidLoad {
  [super viewDidLoad];
    _wxssui = [[WXSpeechRecognizerWithUI alloc] initWithDelegate:self andUserKey:@"bfcecacabcbeaecdcbca"];
}
//点击事件
- (IBAction)buttonPressed:(UIButton *)sender {
  label.text = @"";
  [_wxssui showAndStart];
}
//代理 WXVoiceWithUIDelegate
- (void)voiceInputResultArray:(NSArray *)array{
  WXVoiceResult *result=[array objectAtIndex:];
  [label setText:result.text];
}

无UI界面的sdk也差不多

注意:使用无界面UI需要遵守以下规则

微信语音开放平台免费为你的应用提供语音识别服务,你可以根据自己的风格自由制定 UI,但需在语音采集识别的窗口正确、完整的标注“Powered by 微信智能”或“语音技术由 微信智能提供”的字样。参考如下弹窗:

集成和上面一样,就不再重复

//
// ViewController.m
// weixinyuyinwuui
//
// Created by apple on //.
// Copyright (c) 年 tqh. All rights reserved.
//
#import "ViewController.h"
#import "WXVoiceSDK.h"
@interface ViewController ()<WXVoiceDelegate>
@property (weak, nonatomic) IBOutlet UILabel *label;
@property (weak, nonatomic) IBOutlet UIButton *button;
@end
@implementation ViewController
- (void)viewDidLoad {
  [super viewDidLoad];
  // SDK
  WXVoiceSDK *speechRecognizer = [WXVoiceSDK sharedWXVoice];
  //可选设置
  speechRecognizer.silTime = .f;
  //必选设置
  speechRecognizer.delegate = self;
  [speechRecognizer setUserKey:@"bfcecacabcbeaecdcbca"];
}

#pragma mark -----------WXVoiceDelegate------------
- (void)voiceInputResultArray:(NSArray *)array{
  //一旦此方法被回调,array一定会有一个值,所以else的情况不会发生,但写了会更有安全感的
  if (array && array.count>) {
    WXVoiceResult *result=[array objectAtIndex:];
    _label.text = result.text;
  }else{
    _label.text = @"";
  }
}
- (void)voiceInputMakeError:(NSInteger)errorCode{
  _label.text = [NSString stringWithFormat:@"错误:%ld",(long)errorCode];
}
- (void)voiceInputVolumn:(float)volumn{
//  [_speechRecognizerView setVolumn:volumn];
}
- (void)voiceInputWaitForResult{
//  [_speechRecognizerView finishRecorder];
}
- (void)voiceInputDidCancel{
//  [_speechRecognizerView didCancel];
}

#pragma mark - 点击事件
- (IBAction)buttonPressed:(UIButton *)sender {
  sender.selected = !sender.selected;
  if (sender.selected) {
    _label.text = @"录音中...";
    [[WXVoiceSDK sharedWXVoice] startOnce];
    [_button setTitle:@"完成" forState:UIControlStateNormal];
  }else {
    [[WXVoiceSDK sharedWXVoice] finish];
    [_button setTitle:@"录音" forState:UIControlStateNormal];
  }
}
- (IBAction)cancelButtonPressed:(UIButton *)sender {
   [[WXVoiceSDK sharedWXVoice] cancel];
  [_button setTitle:@"录音" forState:UIControlStateNormal];
}
@end

以上就是本文对IOS开发第三方语言-微信语言的全部介绍,希望对大家有所帮助。

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索ios开发 微信语音聊天、ios 语音识别第三方库、ios开发 第三方播放器、ios开发第三方登录、ios 第三方 sdk开发,以便于您获取更多的相关知识。

时间: 2024-09-18 22:07:37

IOS开发第三方语音-微信语音_IOS的相关文章

分享一些iOS开发实用的小技巧_IOS

1.设置navigationbar title颜色 UIColor *whiteColor = [UIColor whiteColor]; NSDictionary *dic = [NSDictionary dictionaryWithObject:whiteColor forKey:NSForegroundColorAttributeName]; [self.navigationController.navigationBar setTitleTextAttributes:dic]; 2.获取

iOS开发之枚举用法小结_IOS

前言 Enum,也就是枚举,从C语言开始就有了,C++.Java.Objective-C.Swift这些语言,当然都有对应的枚举类型,功能可能有多有少,但是最核心的还是一个-规范的定义代码中的状态.选项等"常量". 举个例子,我们想要在开发中根据四季的变化做不同的操作,我们首先想到的可能会是定义一个int型变量,通过为该变量赋不同的值来表示四季(e.g. 1为春天,2为夏天,3为秋天,4为冬天).但是,对于阅读该份代码的人来讲,他们并不能在短时间内就明白数字1234所代表的具体含义.这

iOS开发基础之C语言_IOS

为何学习iOS开发要先学C语言呢,学习c语言对ios开发有何作用. 现在越来越多的iOS开发兴趣爱好者投入到了iOS培训中,有的是已经在职的员工,有的是还在就读的学生,还有一些是完全零基础的同学,那么对于他们来说就要一切从基础开始学,首先从C语言学起. 因为C语言是一门语言基础,因具备简洁.灵活等特点而被广泛应用,在多种开发环境中都起着重要作用.那么,为什么学习iOS开发要先学C语言呢? 因为在iOS开发中,会经常使用C语言和汇编的,而汇编语言相对而言要生涩繁琐些,C语言因此便成为程序员的首选.

iOS开发 正则运算详细介绍_IOS

iOS开发 正则运算 1. 正则运算意义 regular expression 描述了一种字符串匹配的模式,可以用来检查一个串是否含有某种子串.将匹配的子串做替换或者从某个串中取出符合某个条件的子串等,而在iOS 中我们多数用于检查字符串是否符合规则 2. 常用正则表达式 (如果想自己动手写出符合需求的正则表达式,只需了解 4 中的符号意义) (1).用户名 "^[a-zA-Z][a-zA-Z0-9_]{5,15}$" (由6-16位字母数字下划线组成,第一位不能为数字或下划线) [a

浅析IOS开发TouchID指纹解锁功能_IOS

效果图如下 实现过程 1.首先引入指纹解锁必须的头文件 #import <LocalAuthentication/LocalAuthentication.h> 2.了解下主要的两个方法 这个方法是判断设备是否支持TouchID的. - (BOOL)canEvaluatePolicy:(LAPolicy)policy error:(NSError * __autoreleasing *)error __attribute__((swift_error(none))); 这个是用来验证TouchI

iOS开发网络编程之断点续传_IOS

前言 网络下载是我们在项目中经常要用到的功能,如果是小文件的下载,比如图片和文字之类的,我们可以直接请求源地址,然后一次下载完毕.但是如果是下载较大的音频和视频文件,不可能一次下载完毕,用户可能下载一段时间,关闭程序,回家接着下载.这个时候,就需要实现断点续传的功能.让用户可以随时暂停下载,下次开始下载,还能接着上次的下载的进度. 今天我们来看看如何自己简单的封装一个断点续传的类,实现如下功能.     1.使用者只需要调用一个接口即可以下载,同时可以获取下载的进度.     2.下载成功,可以

那些牛b的ios开发第三方工具(利器虽好,新手慎用)

http://www.open-open.com/lib/view/open1406645989202.html#hud 第三方框架使用对于提高我们的开发效率非常有益,但请知道务必要知其所以然,否则你不理解的强大工具往往会给你带来更大的困扰.不能驾驭的工具还不如不使用,起码不会伤到自己,对吧? 非常棒的iOS框架,库,教程,Xcode插件,组件列表. 目录 Library and Frameworks Cache Core Data HUD Images JSON Maps Networking

汇总ios开发逆向传值的方法_IOS

iOS的逆向传值有很多种方法,下面来总结几种常用的传值方式(只贴相关代码): 第一种:代理传值 第二个控制器: @protocol WJSecondViewControllerDelegate <NSObject> - (void)changeText:(NSString*)text; @end @property(nonatomic,assign)id<WJSecondViewControllerDelegate>delegate; - (IBAction)buttonClick

iOS开发第三方库收藏

UIKit UIKitConvenience 提供了一个方法去操作子视图或者所有父视图.还可以enable或者disable所有层级中的UIControls kxmenu 精妙的垂直弹出菜单 kxmenu PopMenu 一款类似网易.新浪app的pop动画效果的Menu PopMenu JSAnimatedImagesView 登录界面的背景图片,渐变(由大到小),支持多张图片切换效果. 类似的有一款融云仿它写的,渐变效果是由左到右,也支持多张图片. 地址在RCAnimatedImagesVi