一文带你做一个震动APP,7年老Android一次操蛋的面试经历

2023-12-24 07:50

本文主要是介绍一文带你做一个震动APP,7年老Android一次操蛋的面试经历,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

接上手机,开启 USB 调试模式。一般 “开发人员选项” 这页,是通过多次点击系统版本号激活的,感觉有点像游戏秘籍啊,这技巧还是以前刷机积累下来的经验。

打开了USB调试模式并连接上手机后,Android Studio 就多出来一个运行目标了。

我先点个运行试试,通过手机上各种允许操作,我的App装上去了,虽然还是空白,图标也不太好看,但起码能运行了起来。

接下来开始硬撸代码,先在页面上,把那个 Hello World 换成我的 Switch,暂且就叫 switchButton 吧,把文本去掉,弄上跟 Hello World 一样的上下左右约束。一切都是可视化的,鼠标操作,找回了一点以前 Netbeans 编辑 Swing 界面的感觉,现在还有了深浅两种模式的预览。

接下来该考虑的就是怎样在代码里获取到这个 Switch,网上查了一下,Kotlin 里一句 findViewById<类型>(R.id.名称) 即可,代码提示还能自动补全按钮名称。紧跟着写一段按钮状态变化的事件监听,具体内容先空着,等会用到。

最后就是实现具体的手机震动了,老规矩,网上搜一搜,搜到了一个 StackOverflow 的回答,应该挺靠谱。简单来说就是在 AndroidManifest.xml 加上权限声明,然后通过 getSystemService 获取震动服务,最后,震它!

StackOverflow 上的那个例子虽然是 Java,改成 Kotlin 应该也不难,尝试了一下,还真和 AnctionScript、Swift 有点像,类型后置、as 关键字。最后代码被我写成了这个样子,虽说 vibrate 这个方法 Android Studio 提示我说已经被废弃了,但先这么用着吧,应该可以用吧?

这期间 Android Studio 有个体贴的小细节,都不用我去手动改权限声明的配置文件,鼠标点一下他就给我加上了。

噢,最后别忘了我的App图标。

在 AndroidManifest.xml 里配置了一下,行号后面都把图标给显示出来了?😏

完工

运行了一下,完美。我还在想,应该怎么能展示震动呢?放了个小东西在屏幕上,或许你们能感受到吧。

简单的震动App这就完成了,或许以后还能加入各种风格的震动:缠绵、激情、点阵式……

但是这手机震动也太弱了,最后,我想到了身边的 PS4 手柄,这形状也比手机要好的多……! 🙈

文末

很多人在刚接触这个行业的时候或者是在遇到瓶颈期的时候,总会遇到一些问题,比如学了一段时间感觉没有方向感,不知道该从那里入手去学习,对此我整理了一些资料,需要的可以免费分享给大家

这里笔者分享一份自己收录整理上述技术体系图相关的几十套腾讯、头条、阿里、美团等公司19年的面试题,把技术点整理成了视频和PDF(实际上比预期多花了不少精力),包含知识脉络 + 诸多细节,由于篇幅有限,这里以图片的形式给大家展示一部分。如有需要点击这里前往我的GitHub免费获取。

【视频教程】

天道酬勤,只要你想,大厂offer并不是遥不可及!希望本篇文章能为你带来帮助,如果有问题,请在评论区留言。

43965017078)]

天道酬勤,只要你想,大厂offer并不是遥不可及!希望本篇文章能为你带来帮助,如果有问题,请在评论区留言。

这篇关于一文带你做一个震动APP,7年老Android一次操蛋的面试经历的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:https://blog.csdn.net/m0_66265031/article/details/122784273
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/531077

相关文章

一文解密Python进行监控进程的黑科技

《一文解密Python进行监控进程的黑科技》在计算机系统管理和应用性能优化中,监控进程的CPU、内存和IO使用率是非常重要的任务,下面我们就来讲讲如何Python写一个简单使用的监控进程的工具吧... 目录准备工作监控CPU使用率监控内存使用率监控IO使用率小工具代码整合在计算机系统管理和应用性能优化中,监

一文详解如何使用Java获取PDF页面信息

《一文详解如何使用Java获取PDF页面信息》了解PDF页面属性是我们在处理文档、内容提取、打印设置或页面重组等任务时不可或缺的一环,下面我们就来看看如何使用Java语言获取这些信息吧... 目录引言一、安装和引入PDF处理库引入依赖二、获取 PDF 页数三、获取页面尺寸(宽高)四、获取页面旋转角度五、判断

Android kotlin中 Channel 和 Flow 的区别和选择使用场景分析

《Androidkotlin中Channel和Flow的区别和选择使用场景分析》Kotlin协程中,Flow是冷数据流,按需触发,适合响应式数据处理;Channel是热数据流,持续发送,支持... 目录一、基本概念界定FlowChannel二、核心特性对比数据生产触发条件生产与消费的关系背压处理机制生命周期

Android ClassLoader加载机制详解

《AndroidClassLoader加载机制详解》Android的ClassLoader负责加载.dex文件,基于双亲委派模型,支持热修复和插件化,需注意类冲突、内存泄漏和兼容性问题,本文给大家介... 目录一、ClassLoader概述1.1 类加载的基本概念1.2 android与Java Class

一文详解SpringBoot中控制器的动态注册与卸载

《一文详解SpringBoot中控制器的动态注册与卸载》在项目开发中,通过动态注册和卸载控制器功能,可以根据业务场景和项目需要实现功能的动态增加、删除,提高系统的灵活性和可扩展性,下面我们就来看看Sp... 目录项目结构1. 创建 Spring Boot 启动类2. 创建一个测试控制器3. 创建动态控制器注

一文详解Git中分支本地和远程删除的方法

《一文详解Git中分支本地和远程删除的方法》在使用Git进行版本控制的过程中,我们会创建多个分支来进行不同功能的开发,这就容易涉及到如何正确地删除本地分支和远程分支,下面我们就来看看相关的实现方法吧... 目录技术背景实现步骤删除本地分支删除远程www.chinasem.cn分支同步删除信息到其他机器示例步骤

一文详解Java Stream的sorted自定义排序

《一文详解JavaStream的sorted自定义排序》Javastream中的sorted方法是用于对流中的元素进行排序的方法,它可以接受一个comparator参数,用于指定排序规则,sorte... 目录一、sorted 操作的基础原理二、自定义排序的实现方式1. Comparator 接口的 Lam

Android DataBinding 与 MVVM使用详解

《AndroidDataBinding与MVVM使用详解》本文介绍AndroidDataBinding库,其通过绑定UI组件与数据源实现自动更新,支持双向绑定和逻辑运算,减少模板代码,结合MV... 目录一、DataBinding 核心概念二、配置与基础使用1. 启用 DataBinding 2. 基础布局

Android ViewBinding使用流程

《AndroidViewBinding使用流程》AndroidViewBinding是Jetpack组件,替代findViewById,提供类型安全、空安全和编译时检查,代码简洁且性能优化,相比Da... 目录一、核心概念二、ViewBinding优点三、使用流程1. 启用 ViewBinding (模块级

一文深入详解Python的secrets模块

《一文深入详解Python的secrets模块》在构建涉及用户身份认证、权限管理、加密通信等系统时,开发者最不能忽视的一个问题就是“安全性”,Python在3.6版本中引入了专门面向安全用途的secr... 目录引言一、背景与动机:为什么需要 secrets 模块?二、secrets 模块的核心功能1. 基