一步(One Step)是由锤子科技开源的 Android 手机交互应用程序。
什么是一步(One Step)?
通过拖拽完成将信息发送至应用或联系人的动作,节省了在不同应用之间切换的诸多步骤,第一次打通了手持设备中应用间的边界
写在前面的话
我们开源 One Step 是希望其他厂商能将这一功能集成在系统中,共同改善安卓用户体验、提升操作效率。
我们把 One Step 所有接口封装在 android.view.onestep 包下,考虑到第三方应用集成时的复杂度,请在不改变现有接口的前提下进行扩展。同时也欢迎通过 commit 向我们提交反馈。
由于人力有限,我们仅在 Nexus6(Code Base:Android 6.0.1_MOB31K)的真机上进行了相关测试,理论上其他的机型也可以进行编译运行,但不排除会有bug 出现。最后,我们为你提供了 Nexus6 的 build。
One Step 涉及的工程列表:
frameworks_base (需要更改WindowManager) https://github.com/SmartisanTech/android_frameworks_base
frameworks_native (需要更改input, 响应调整window后touch事件)https://github.com/SmartisanTech/android_frameworks_native
packages_apps_OneStep(OneStep UI层) https://github.com/SmartisanTech/packages_apps_OneStep
build(加入smartisanos框架编译以及OneStep应用) https://github.com/SmartisanTech/android_build
external_sepolicy (为新引入的OneStepService设置权限)https://github.com/SmartisanTech/android_external_sepolicy
frameworks_smatisanos_base (smartisanos 框架层) https://github.com/SmartisanTech/android_frameworks_smartisanos-base
SmartisanSDK (为第三方应用接入提供接口,以及一个简单的demo)https://github.com/SmartisanTech/SmartisanOS-SDK
配合源码食用更佳 概述 使用过OkHttp的童鞋们都知道,同步execute(),异步enqueue()。 那么如果做到同步异步的呢,其实我们发送的同步/异步请求都会在Dispatcher中管理其状态。 其中维护了: * 运行中的异步请求队列 runningAsyncCalls * 就绪状态的异步请求队列 readyAsyncCalls * 运行中的同步请求队列 runningSyncCalls
1493. One Step from Happiness Time limit: 1.0 second Memory limit: 64 MB Vova bought a ticket in a tram of the 13th route and counted the sums of the first three and the last three digits of the ticke
function [field] = bfield(field,prm) % Update magnetic field in one step X2 = prm.X2; f = field; % reference to Field obj f.by(X2) = f.by(X2) + f.ez( X2) - f.ez(X2-1); f.bz(X2) =
更新时间:2018-10-30 11:33:21 简介 物联网通信常常会涉及到人和物之前的数据交互,本文介绍一种非常简单的人机交互例子,搭载 AliOS Things 的设备并基于 Link Develop(以下简称LD) 平台,可以实现本地设备端在某种场景下(如光线强度低于某个下限)上报到云端,云端发送消息到设备端。 本示例源码: hmi hmi ├── devkit_display │ ├
MIP 提供了为数众多的官方组件来满足开发者的需求。这些组件一般都封装或者实现了一些特定的样式或者功能,开发者一般只需要通过堆砌 MIP 组件,修改它们的样式,配置好相应的属性,就可以获得相应的 MIP 页面。 当然,MIP 页面的组件与组件之间还需要通过交互机制将它们都串联起来,才能够让 MIP 页面的交互体验变得更好。 举个简单的例子,页面上点击某个按钮,然后弹出对话框。在这个例子里,涉及到了
iOS的6种手势Demo,包括单击(UITapGestureRecognizer)、左右滑动(UISwipeGestureRecognizer)、旋转(UIRotationGestureRecognizer)、平移(UIPanGestureRecognizer)、捏合缩放(UIPinchGestureRecognizer)、长按(UILongPressGestureRecognizer)。 [Code4App.com]
交换机与控制器交互 我们可以启动一个简单的控制器,默认没有任何流表项,仅仅作为一台带学习功能的交换机。控制器默认监听端口是 6633。 以下控制器与交换机之间的消息交互过程,可以通过 wireshark,配置 of 过滤器观察到交换机跟控制器之间的交互消息。 参见下面的表格。 消息 类型 描述 Hello Controller->Switch 跟着 TCP 握手,控制器发送它的版本号到交换机。 H
整体感受一般,面试官情绪不高,整场面试都有点冷冷的,而且面到中途会突然没有声音中断 时长:约40min,运用的语雀线上链接面试 面试问题(先是自我介绍和作品集项目讲述): 1.上线前怎么做用户结论? 答:根据行业调研和用户调研来深入。 2.上线后依据什么来做迭代优化? 答:用户反馈+数据分析 3.项目的设计亮点是什么? 4.好的交互设计师需要什么能力? 答:扎实的理论知识,深入细节的实践能力和能够
投递方式:官网秋招投递 / 无内推 / 岗位交互设计师 / 投递后两周打电话约面试 一面:这是一场 90 分钟的专业面,给我留下了非常深刻的印象。面试官简单介绍了他自己和业务背景后我们就开始了这场面试,我们大概就我选定的项目聊了 30 分钟左右。 关于选定的项目介绍我有明确的节奏:讲述 context — user research — 更多探索和尝试 — 如何设计 — 迭代 — 项目反思。关于项
每个应用都需要一个漂亮的、令人难忘的主屏幕图标,以便用户可以很好地识别应用程序。由于用户仅仅通过主屏幕上的 icon 识别应用程序,所以你的 icon 应当是可辨认的,并且类似 iOS 应用程序的 icon,并且能传达出应用程序的目的。
iOS 8 人机交互指南为 iPhoneHIG 的设计规范,旨在帮助交互设计师和应用开发者了解苹果应用设计规范,设计 iPhone 应用程序的用户界面,了解那些用于创建 iPhone 应用程序的用户界面的元素,同时还描述了各种可用的视图和控件并提供了如何有效使用它们的说明。