三星 S Pen Remote SDK 适配指导 上一篇我们介绍了 S Pen 悬空操作的 Air Actions 空中动作适配方法, 通过 S Pen Framework 可以轻松识别向上, 向下, 向左, 向右, 顺时针和逆时针响应方向动作 如果应用需要获得 S Pen 运动的原始数据, 设计自

Similar documents

威 福 髮 藝 店 桃 園 市 蘆 竹 區 中 山 里 福 祿 一 街 48 號 地 下 一 樓 50,000 獨 資 李 依 純 105/04/06 府 經 登 字 第 號 宏 品 餐 飲 桃 園 市 桃 園 區 信 光 里 民

SDK 概要 使用 Maven 的用户可以从 Maven 库中搜索 "odps-sdk" 获取不同版本的 Java SDK: 包名 odps-sdk-core odps-sdk-commons odps-sdk-udf odps-sdk-mapred odps-sdk-graph 描述 ODPS 基

1.5招募说明书(草案)

詞 彙 表 編 號 詞 彙 描 述 1 預 約 人 資 料 中 文 姓 名 英 文 姓 名 身 份 證 字 號 預 約 人 電 話 性 別 2 付 款 資 料 信 用 卡 別 信 用 卡 號 信 用 卡 有 效 日 期 3 住 房 條 件 入 住 日 期 退 房 日 期 人 數 房 間 數 量 入

電機工程系認可證照清單 /7/1

新・解きながら学ぶJava

DU Ad Platform_SDK 安卓接入指南 DU Ad Platform_SDK for Android 接入手册 ( 触发式广告 ) DUAd_SDK_Trigger v1.0 百度在线网络技术 ( 北京 ) 有限公司 百度在线网络技术 ( 北京 ) 有限公司 - 1 -

<4D F736F F F696E74202D20332D322E432B2BC3E6CFF2B6D4CFF3B3CCD0F2C9E8BCC6A1AAD6D8D4D8A1A2BCCCB3D0A1A2B6E0CCACBACDBEDBBACF2E707074>

Microsoft Word - 01.DOC

EJB-Programming-3.PDF

EJB-Programming-4-cn.doc

RxJava

Guava学习之Resources

LEFT, RIGHT // 左 // 右 (2) 当图片移动后, 按钮的坐标发生改变, 此操作通过 setloca tion() 方法实现 setlocation() 方法是从 Component 类继承的, 其定义如下 : public void setlocation(int x, int y

填 写 要 求 1. 以 word 文 档 格 式 如 实 填 写 各 项 2. 表 格 文 本 中 外 文 名 词 第 一 次 出 现 时, 要 写 清 全 称 和 缩 写, 再 次 出 现 时 可 以 使 用 缩 写 3. 本 表 栏 目 未 涵 盖 的 内 容, 需 要 说 明 的, 请 在

基于ECO的UML模型驱动的数据库应用开发1.doc

(TestFailure) JUnit Framework AssertionFailedError JUnit Composite TestSuite Test TestSuite run() run() JUnit

エスポラージュ株式会社 住所 : 東京都江東区大島 東急ドエルアルス大島 HP: ******************* * 关于 Java 测试试题 ******

Microsoft PowerPoint - ch6 [相容模式]

使 用 Java 语 言 模 拟 保 险 箱 容 量 门 板 厚 度 箱 体 厚 度 属 性 锁 具 类 型 开 保 险 箱 关 保 险 箱 动 作 存 取 款

Microsoft Word zw

马 克 思 主 义 学 院 经 济 与 工 商 管 理 学 院 公 共 管 理 学 院 法 学 院 社 会 学 院 外 国 语 学 院 中 国 现 当 代 史 世 界 中 古 史 世 界 近 现 代 史 文 化 遗 产 马 克 思 主 义 哲 学 国 际 政 治 科 学 社 会 主 义 马 克 思

ExcelUtility 类库使用说明 ( 续 ) 开发 / 设计 : 左文俊 第一个新增功能, 列宽自适应, 当超过 30 个字符则将单元格内容设为换行 任意一个无模板的导出方法均支持该功能, 示例代码如下 : /// <summary> /// 测试方法

获取 Access Token access_token 是接口的全局唯一票据, 接入方调用各接口时都需使用 access_token 开发者需要进行妥善保存 access_token 的存储至少要保留 512 个字符空间 access_token 的有效期目前为 2 个小时, 需定时刷新, 重复

RunPC2_.doc

2 WF 1 T I P WF WF WF WF WF WF WF WF 2.1 WF WF WF WF WF WF

腾讯社交广告转化追踪 Android SDK 接入说明文档 V1.2

OOP with Java 通知 Project 4: 4 月 18 日晚 9 点 关于抄袭 没有分数

<4D F736F F D C4EABCC6CBE3BBFAB4F3C8FCCDA8D6AA E646F63>

IP Encoder 1 channel.book

《大话设计模式》第一章

3.1 num = 3 ch = 'C' 2

OOP with Java 通知 Project 3 提交时间 3 月 29 日晚 9 点 Piazza Project 2 投票


javaexample-02.pdf

untitled

( 总 第 1073 期 ) 浙 江 省 人 民 政 府 主 办 2015 年 3 月 17 日 出 版 省 政 府 令 省 政 府 文 件 目 录 浙 江 省 大 型 群 众 性 活 动 安 全 管 理 办 法 ( 浙 江 省 人 民 政 府 令 第 333 号 ) (3) 浙 江 省 人 民 政

DU Ad Platform_SDK for Android 接 入 手册 Version: DuWeatherSDK_1.1.6 前提 : DuWeather SDK 需要依赖 DU Ad Platform_SDK HW 或 CW ( 含 ) 以上版本 在接 入 DuW

1.5招募说明书(草案)

FY.DOC

TVS厂商接入流程API文档

本文档旨在说明如果快速的接入集成推送 SDK, 快速实现小米, 华为, 魅族的推送接入, 有关详细的设计文档参考集成推送设计说明文档 准备工作 编译本项目, 配置完 android sdk 后执行以下命令, 或者你可以将本工程导入到 android studio 中./gradlew clean a

1 Framework.NET Framework Microsoft Windows.NET Framework.NET Framework NOTE.NET NET Framework.NET Framework 2.0 ( 3 ).NET Framework 2.0.NET F

Microsoft Word - 第3章.doc

Microsoft Word - Hibernate与Struts2和Spring组合指导.doc

PowerPoint 演示文稿

(京)新登字063号

概述

01_Service

C++ 程序设计 告别 OJ1 - 参考答案 MASTER 2019 年 5 月 3 日 1

目录 一 功能介绍 功能列表 使用限制...3 二 Android studio 如何导入 SDK SDK 文件结构 导入必要文件 工程配置...6 三 调用 SDK 初始化 如何开始预览...1

untitled

软件工程文档编制

台北市立大安高工職業學校

任務二 : 產生 20 個有炸彈的磚塊, 放在隨機的位置編輯 Block 類別的程式碼 import greenfoot.; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo) Write a description of class

資訊及通訊科技

本手册描述了Piu和Piu Player的功能,及Piu的完整使用流程。


目 录 前 言 3 第 一 部 分 学 院 基 本 情 况... 4 一 学 院 简 介... 4 二 2015 届 毕 业 生 基 本 情 况... 6 第 二 部 分 毕 业 生 就 业 创 业 工 作 开 展 情 况... 9 一 领 导 高 度 重 视, 健 全 机 制... 9 二 多 方

BOOL EnumWindows(WNDENUMPROC lparam); lpenumfunc, LPARAM (Native Interface) PowerBuilder PowerBuilder PBNI 2

個 人 的 手, 拉 著 瞎 子 的 手 把 他 帶 往 村 外 的 時 候, 對 於 瞎 子 來 講, 那 個 人 的 手 和 耶 穌 的 手 有 沒 有 區 別? 沒 有! 為 什 麼 沒 有 區 別? 因 為 對 於 一 個 瞎 子 來 說, 手 和 耳 朵 就 是 他 接 觸 世 界, 瞭

停止混流接口 请注意 : 该功能需要联系 ZEGO 技术支持开通 1 接口调用说明 http 请求方式 : POST/FORM, 需使用 https 正式环境地址 access_token=access_token (http

CC213

清华大学2013年毕业生就业质量报告

ÿþ(ð3§h"

OOP with Java 通知 Project 4: 4 月 19 日晚 9 点

Android Android Android SDK iv


CHAPTER 1

百度xx SDK用户手册

1.JasperReport ireport JasperReport ireport JDK JDK JDK JDK ant ant...6

HTC One E9+

Android Service

Android 编程基础 Android 开发教程 & 笔记 1

在Spring中使用Kafka:Producer篇

國家圖書館典藏電子全文

专注于做最好的嵌入式计算机系统供应商

Kubenetes 系列列公开课 2 每周四晚 8 点档 1. Kubernetes 初探 2. 上 手 Kubernetes 3. Kubernetes 的资源调度 4. Kubernetes 的运 行行时 5. Kubernetes 的 网络管理理 6. Kubernetes 的存储管理理 7.

// HDevelopTemplateWPF projects located under %HALCONEXAMPLES%\c# using System; using HalconDotNet; public partial class HDevelopExport public HTuple

JBuilder Weblogic

可 Web 编程的NativeUI 设计与实现

建模与图形思考

ebook140-8

雲端 Cloud Computing 技術指南 運算 應用 平台與架構 10/04/15 11:55:46 INFO 10/04/15 11:55:53 INFO 10/04/15 11:55:56 INFO 10/04/15 11:56:05 INFO 10/04/15 11:56:07 INFO

全国计算机技术与软件专业技术资格(水平)考试

新版 明解C++入門編

指 导 学 生 在 Studio 课 程 上 进 一 步 研 究 这 三 种 类 型 的 肌 肉 上 课 过 程 中 引 导 他 们 多 观 察 并 完 成 肌 肉 系 统 记 录 表 课 程 课 程 问 题 由 Studio 提 供 1 你 的 身 体 拥 有 超 过 600 块 肌 肉! 首 先

F515_CS_Book.book

LiveBOS产品白皮书

Microsoft Word - 苹果脚本跟我学.doc

1. 2. Flex Adobe 3.

Unidrive M400 PLC 0.25 kw kw (0.33 hp hp) 100 V 200 V 400 V 575 V 690 V

2000 / / % 0.035% % % % 3 2 ETF creation / redemption TTT ETF 3 / -1 2

Guava学习之CharSequenceReader

帝国CMS下在PHP文件中调用数据库类执行SQL语句实例

其 他 陸 龜 ( 象 龜 ) 科 其 他 活 龜 其 他 爬 蟲 類 沙 氏 變 色 蜥 其 他 爬 蟲 類 猛 禽 鸚 鵡 目 包 括 鸚 鵡

X713_CS_Book.book

百度xx SDK用户手册

Transcription:

三星 S Pen Remote SDK 适配指导 上一篇我们介绍了 S Pen 悬空操作的 Air Actions 空中动作适配方法, 通过 S Pen Framework 可以轻松识别向上, 向下, 向左, 向右, 顺时针和逆时针响应方向动作 如果应用需要获得 S Pen 运动的原始数据, 设计自定义的手势轨迹, 或者利用相对位置实现更多的功能, 就需要使用 S Pen Remote SDK 本文将介绍 S Pen Remote SDK 使用方法 S Pen Remote SDK 可以帮助应用获取到 S Pen 按键和运动轨迹变化的事件, 应用可利用这些信息实现自己独有的或者更强大的功能 1. S Pen Remote SDK 概述 1.1 支持的平台 目前仅三星 Galaxy Note 系列支持 S Pen Remote SDK S Pen Remote SDK 依赖于内部 Android framework 的静态 Java 库, 所以此程序仅在支持这些模块的设备上运行 1.2 支持的功能 S Pen Remote SDK 为应用提供了识别运动坐标和识别点击按钮的功能 检查是否按下或释放了侧面按钮 识别运动坐标 - 设备二维运动 - 当前位置与之前位置的相对值 - x 坐标的正值表示向右移动 - y 坐标的正值表示向上移动 - 值范围 :-1.0~1.0

1.3 组件 组件 - spenremote-v1.0.0.jar - sdk-v1.0.0.jar 导入 package: - com.samsung.android.sdk.penremote 1.4 Android Studio 中如何安装 Remote SDK 将 spenremote-v1.0.0.jar 和 sdk-v1.0.0.jar 文件添加到 Android Studio 中的 libs 文 件夹中 在 build.gradle 中添加 SDK 库文件夹依赖项 dependencies{ compile filetree(include: '*.jar', dir: 'libs')

2. SpenRemote 使用方法 SpenRemote 是一个类, 提供以下方法 : getinstance() 获取 SpenRemote 的对象 getversioncode() 获取 S Pen Remote 版本号, 为整数 getversionname() 获取 S Pen Remote 版本名称, 为字符串 isfeatureenabled(int type) 检查设备是否有 S Pen Remote 功能 connect() 用于连接 S Pen Framework 需要连接到 S Pen Framework 才能使用 S Pen Remote Features disconnect() 用于断开 S Pen Framework 的连接 2.1 检查 SpenRemote 功能的可用性 可以使用 isfeatureenabled() 方法检查设备是否支持 SpenRemote 功能 功能类型在 SpenRemote 类中定义 调用 isfeatureenabled() 方法时, 功能类型作为参数传递 该方法返回一个布尔值来表示是否支持该功能 public boolean isfeatureenabled(int type) 以下类型在 SpenRemote 类中定义为常量 : FEATURE_TYPE_BUTTON FEATURE_TYPE_AIR_MOTION 2.2 连接到 S Pen Framework 需要连接到 S Pen Framework 来使用 SpenRemote 中支持的功能 要连接到 S Pen Framework, 需要 创建 ConnectResultCallback 并调用 connect() 方法 如果已建立连接, 则 connect() 方法将不响应 因 此, 在尝试连接之前, 使用 isconnected() 方法检查连接状态 SpenUnitManager mspenunitmanager = null; SpenRemote spenremote = SpenRemote.getInstance(); if (!spenremote.isconnected()) { spenremote.connect(getcontext(), new SpenRemote.ConnectionResultCallback() { public void onsuccess(spenunitmanager manager) { mspenunitmanager = manager;

public void onfailure(int error) { ); 如果连接成功, 则调用 ConnectResultCallback.onSucces(), 并传递 SpenUnitManager 实例 SpenUnitManager 提供了设置事件监听器的方法, 来监视 S Pen 中嵌入式单元的事件 如果连接失败, 则会将错误代码传递给 ConnectResultCallback.onFailure() 传递的错误代码如下 : UNSUPPORTED_DEVICE: 设备不是 Samsung 设备或不支持 S Pen Remote CONNECTION_FAILED: S Pen Framework 拒绝连接 UNKOWN: 未知错误 2.3 断开连接 如果您的应用程序已停止或无法再处理 S Pen 事件, 请调用 disconnect() 来终止已建立的连接 3. 使用 SpenUnitManager SpenUnitManager 提供了设置事件监听器的方法来监听 S Pen 中嵌入单元的事件 3.1 相关的类和接口 SpenUnit 此类管理特定 S Pen 嵌入式单元的实例 SpenEvent S Pen Framework 将发送该类到您的应用程序, 来传递 S Pen 事件信息 SpenEventListener 您可以使用此接口创建一个 Callback 方法 3.2 监控 S Pen 事件 要监听 S Pen 事件, 需要执行以下步骤 : 1) 获取 SpenUnitManager 的实例

如前所述, 当成功连接到 S Pen Framework 时, 可以获得 SpenUnitManager 实例 2) 请求要监视的嵌入式单元 (SpenUnit) 的实例使用 getunit 方法获取特定嵌入式单元的实例 getunit 方法接受常量,TYPE_BUTTON 或 TYPE_AIR_MOTION 如果尝试在设备中获取不受支持的单元实例, 则返回 null // get Instance of Button Unit SpenUnit button = mspenunitmanager.getunit(spenunit.type_button); // get Instance of AirMotion Unit SpenUnit airmotion = mspenunitmanager.getunit(spenunit.type_air_motion); 3) 注册事件监听器使用 SPenUnitManager 实例的 registerspeneventlistener 方法注册 SpenUnit 的事件监听器 传递给 SpenEventListener 的 SpenEvent 数据是隐藏的, 您可以将其转换为 ButtonEvent 或 AirMotionEvent 类来进行处理 按钮事件 : SpenUnit button = mspenunitmanager.getunit(spenunit.type_button); mspenunitmanager.registerspeneventlistener(mbuttoneventlistener, button); //EventListener for Button Unit private SpenEventListener mbuttoneventlistener = new SpenEventListener() { public void oneventchanged(spenevent ev) { ButtonEvent buttonevent = new ButtonEvent(ev) switch (buttonevent.getaction()) { case ButtonEvent.ACTION_DOWN: Log.d(TAG, "Spen Button Pressed"); break; case ButtonEvent.ACTION_UP: Log.d(TAG, "Spen Button Released"); break; ;

AirMotion 事件 : SpenUnit airmotion = mspenunitmanager.getunit(spenunit.type_air_motion); mspenunitmanager.registerspeneventlistener(mairmotioneventlistener, airmotion); //EventListener for AirMotion Unit private SpenEventListener mairmotioneventlistener = new SpenEventListener() { public void oneventchanged(spenevent ev) { AirMotionEvent airmotionevent = new AirMotionEvent(ev) float deltax = airmotion.getdeltax(); float deltay = airmotion.getdeltay(); ; Log.d(TAG, "Air Motion = " + deltax + ", " + deltay); 4) 取消注册事件监听器如果您的应用程序已终止或不再处理 S Pen 事件, 请使用 SPenUnitManager 实例的 unregisterspeneventlistener 方法取消事件监听器 特别是,AirMotion 消耗大量的 S Pen 电池电量, 因此在不处理 Air Motion 事件时应取消事件监听器 SpenUnit airmotion = mspenunitmanager.getunit(spenunit.type_air_motion); mspenunitmanager.unregisterspeneventlistener(airmotion); 4. 联系我们 如果您对 S Pen Remote SDK 有任何问题, 可以发邮件到下面的邮箱与我们联系 邮箱地址 :rdtpservice@samsung.com 邮件主题 : 三星 S Pen+APP 名