当前位置: 首页 > news >正文

昆明网站开发培训win主机下wordpress固定连接去掉index.php的方法

昆明网站开发培训,win主机下wordpress固定连接去掉index.php的方法,个人备案域名购买,织梦网站源码**从事开发 20 年#xff0c;见过不少技术风口起起落落#xff0c;最近 “碰一碰发视频” 又成了热门话题。不少同行或刚入行的年轻人来问我#xff0c;手机版源码开发该从哪下手#xff0c;怕踩坑、怕走弯路。今天就以一个老程序员的视角#xff0c;把碰一碰发视频手机版…**从事开发 20 年见过不少技术风口起起落落最近 “碰一碰发视频” 又成了热门话题。不少同行或刚入行的年轻人来问我手机版源码开发该从哪下手怕踩坑、怕走弯路。今天就以一个老程序员的视角把碰一碰发视频手机版源码开发的核心要点、关键问题和实战经验掰开揉碎了讲都是实打实的干货能帮大家少走至少 3 个月的弯路。一、先搞懂底层逻辑手机版 “碰一碰” 不是玄学是 NFC 技术的常规应用很多人觉得 “碰一碰发视频” 很神秘其实底层技术一点不复杂核心就是NFC 近场通信技术 视频传输与播放逻辑。咱们做手机版源码开发首先得把基础原理吃透不然后面全是空中楼阁。从技架构来看手机版碰一碰发视频的流程很清晰手机 NFC 模块识别外部 NFC 标签→读取标签中存储的视频地址或标识信息→通过网络请求获取视频资源→调用手机本地播放器播放视频。这里面有几个关键技术点是新手最容易栽跟头的地方也是我当年踩过的坑。首先是NFC 模块的适配。不同品牌、不同型号的手机NFC 芯片和支持的协议差异很大。比如华为部分机型支持 ISO 14443A/B、ISO 15693 等多种协议而有些小众品牌手机可能只支持基础的 ISO 14443A 协议。在源码开发时不能只适配某一款手机要做兼容性处理。我的经验是在初始化 NFC 适配器时先通过NfcManager获取设备支持的协议列表再针对性地设置标签过滤规则代码大概是这样的NfcManager nfcManager (NfcManager) context.getSystemService(Context.NFC_SERVICE);NfcAdapter nfcAdapter nfcManager.getDefaultAdapter();if (nfcAdapter ! null) {// 获取支持的协议String[] supportedTechLists nfcAdapter.getSupportedTechLists();// 构建标签过滤意图IntentFilter intentFilter new IntentFilter(NfcAdapter.ACTION_TAG_DISCOVERED);try {intentFilter.addDataType(*/*);} catch (IntentFilter.MalformedMimeTypeException e) {e.printStackTrace();}IntentFilter[] intentFiltersArray new IntentFilter[]{intentFilter};// 设置适配的技术列表nfcAdapter.enableForegroundDispatch(activity, pendingIntent, intentFiltersArray, supportedTechLists);}这段代码虽然简单但能解决 80% 的 NFC 适配问题新手一定要记住别上来就硬编码协议类型不然到时候在某些手机上用不了排查问题能让你崩溃。其次是视频资源的获取与缓存。手机版和小程序版不一样手机端可能面临网络不稳定、流量消耗等问题。如果每次碰一碰都实时从服务器拉取视频不仅加载慢还费用户流量用户体验会很差。所以在源码里必须加视频缓存逻辑。我的做法是在获取视频地址后先检查本地是否有该视频的缓存文件若有且未过期直接播放本地文件若没有或已过期再启动下载并显示下载进度。这里要注意缓存文件的管理定期清理过期缓存避免占用过多手机存储空间。可以用DiskLruCache来实现缓存管理这是 Android 开发中很成熟的方案稳定性和性能都有保障。二、核心模块开发从 NFC 读取到视频播放每个环节都要稳手机版碰一碰发视频源码主要包含 NFC 读取模块、视频处理模块、异常处理模块这三大核心模块。每个模块都有其关键技术点和避坑技巧少一个模块或者某个模块做不好整个系统都不稳定。一NFC 读取模块别只追求 “能读”还要 “读得准、读得快”很多新手开发 NFC 读取模块只实现了最基础的读取功能却忽略了读取的准确性和速度。在实际场景中用户碰一碰的动作很快如果读取速度慢用户可能会以为没成功反复尝试如果读取不准确可能会读取到错误的视频地址导致播放失败。要实现 “读得准、读得快”有几个关键点要注意。一是NFC 标签的读取距离控制。NFC 的有效读取距离一般在 10 厘米以内但实际开发中建议把有效读取距离控制在 3 - 5 厘米这样能减少干扰提高读取准确性。可以通过调整 NFC 模块的功率来实现不同手机的功率调整 API 可能不同需要查阅对应手机厂商的开发文档。二是标签数据的解析。NFC 标签中存储的数据格式可能不同有的存储的是直接的视频 URL有的存储的是视频 ID需要再通过接口去获取视频 URL。在源码里要做数据格式判断解析时要加异常捕获防止因数据格式错误导致 APP 崩溃。比如这样Overrideprotected void onNewIntent(Intent intent) {super.onNewIntent(intent);if (NfcAdapter.ACTION_TAG_DISCOVERED.equals(intent.getAction())) {Tag tag intent.getParcelableExtra(NfcAdapter.EXTRA_TAG);if (tag ! null) {try {// 读取标签数据byte[] data tag.getId();String tagData new String(data, StandardCharsets.UTF_8);// 解析数据判断是URL还是视频IDif (tagData.startsWith(http)) {// 直接是视频URL播放视频playVideo(tagData);} else {// 是视频ID调用接口获取URLgetVideoUrlByTagId(tagData);}} catch (Exception e) {// 异常处理提示用户读取失败Toast.makeText(this, NFC标签读取失败请重试, Toast.LENGTH_SHORT).show();e.printStackTrace();}}}}三是前台调度模式的使用。在 APP 运行时要启用 NFC 前台调度模式让 APP 优先接收 NFC 标签事件避免被系统或其他 APP 拦截。如果不启用前台调度模式可能会出现 APP 在后台时无法读取 NFC 标签的情况影响用户体验。二视频处理模块播放流畅是底线还要考虑用户流量手机版碰一碰发视频视频播放的流畅度直接决定了用户的使用体验。如果视频总是卡顿、加载慢再好的功能也没人用。在视频处理模块开发中有三个重点要攻克视频格式适配、播放优化、流量控制。视频格式适配方面不同手机支持的视频格式不同比如 Android 手机大多支持 MP4、3GP 格式而有些手机可能不支持 MKV、AVI 格式。所以在源码开发时要优先选择 MP4 格式作为标准视频格式同时在播放前要检查视频格式是否被手机支持。可以通过MediaPlayer的canDecodeFormat方法来判断若不支持要提示用户视频格式不兼容。播放优化上除了前面提到的视频缓存还要做预加载处理。在读取到 NFC 标签并获取视频地址后不等用户点击播放就提前启动视频预加载预加载 10 - 20 秒的视频内容这样用户点击播放时就能瞬间开始不会有加载等待时间。另外要实现视频的断点续传如果视频下载到一半网络中断下次重新连接网络后能从断点处继续下载而不是重新下载整个视频节省用户流量和时间。流量控制也很关键。很多用户对流量消耗比较敏感尤其是在使用移动数据时。所以在源码里要加流量提醒功能在检测到用户使用移动数据播放视频时弹出提示框告知用户视频大小和预计消耗流量让用户选择是否继续播放。同时提供视频清晰度切换功能让用户可以根据网络情况选择高清、标清或流畅模式比如在移动数据下默认播放标清模式在 WiFi 环境下默认播放高清模式。三异常处理模块别让 APP 崩溃要给用户明确的反馈做开发这么多年我最深的体会是一个好的 APP不是不会出现问题而是在出现问题时能优雅地处理给用户明确的反馈。碰一碰发视频手机版源码开发异常处理模块绝对不能少而且要考虑全面。常见的异常场景有NFC 功能未开启、手机不支持 NFC、网络连接失败、视频下载失败、视频播放失败等。针对这些异常场景要分别做处理。比如当检测到手机不支持 NFC 时要弹出提示 “当前设备不支持 NFC 功能无法使用碰一碰发视频”当网络连接失败时提示 “网络连接异常请检查网络后重试”。不能让 APP 直接崩溃也不能只显示一个模糊的 “操作失败” 提示这样用户根本不知道问题出在哪也不知道该怎么解决。在代码实现上要大量使用 try - catch 语句捕获异常同时用日志工具详细记录异常信息比如使用Log类或第三方日志框架方便后期排查问题。比如private void getVideoUrlByTagId(String tagId) {OkHttpClient client new OkHttpClient();Request request new Request.Builder().url(https://api.example.com/getVideoUrl?tagId tagId).build();client.newCall(request).enqueue(new Callback() {Overridepublic void onFailure(Call call, IOException e) {// 网络请求失败记录日志并提示用户Log.e(VideoRequest, 获取视频URL失败 e.getMessage());runOnUiThread(() - Toast.makeText(MainActivity.this, 网络连接异常请检查网络后重试, Toast.LENGTH_SHORT).show());}Overridepublic void onResponse(Call call, Response response) throws IOException {if (response.isSuccessful()) {String responseData response.body().string();// 解析响应数据try {JSONObject jsonObject new JSONObject(responseData);String videoUrl jsonObject.getString(videoUrl);// 播放视频runOnUiThread(() - playVideo(videoUrl));} catch (JSONException e) {// 数据解析失败记录日志并提示用户Log.e(VideoParse, 解析视频URL失败 e.getMessage());runOnUiThread(() - Toast.makeText(MainActivity.this, 数据解析异常请重试, Toast.LENGTH_SHORT).show());}} else {// 响应失败记录日志并提示用户Log.e(VideoResponse, 获取视频URL响应失败状态码 response.code());runOnUiThread(() - Toast.makeText(MainActivity.this, 服务器异常请稍后重试, Toast.LENGTH_SHORT).show());}}});}三、实战避坑20 年开发经验总结的 5 个关键问题在碰一碰发视频手机版源码开发过程中有一些问题不是技术难题但很容易被忽略导致后期出现各种麻烦。结合我 20 年的开发经验总结出 5 个关键避坑点大家一定要重视。一权限申请别只申请基础权限动态权限要处理好Android 系统从 6.0 开始引入动态权限管理NFC 相关权限和存储权限都需要动态申请。很多新手只在 AndroidManifest.xml 中声明了权限却没有做动态权限申请导致在高版本 Android 系统上APP 无法正常使用 NFC 功能和存储功能。在源码开发时要在 APP 启动或使用 NFC 功能前检查是否拥有NFC权限、WRITE_EXTERNAL_STORAGE权限用于视频缓存、INTERNET权限用于获取视频资源。如果没有这些权限要弹出权限申请对话框引导用户授权。而且要处理用户拒绝权限的情况比如用户拒绝授予存储权限要提示用户 “需要存储权限才能缓存视频请在设置中开启权限”不能直接闪退或功能失效。二电量优化别让 NFC 一直耗电按需启用NFC 模块在工作时会消耗手机电量如果 APP 一直启用 NFC 功能会导致手机电量快速下降用户体验不好。所以在源码里要做电量优化按需启用 NFC 功能。比如当 APP 在前台时启用 NFC 前台调度模式当 APP 进入后台时关闭 NFC 前台调度模式停止 NFC 标签监听。这样既能保证 APP 在使用时能正常读取 NFC 标签又能减少电量消耗。三版本兼容别忽略低版本 Android 系统适配要全面虽然现在大部分用户使用的是 Android 10 及以上版本但仍有一部分用户使用 Android 7、8、9 等低版本系统。在源码开发时不能只适配高版本系统要考虑低版本系统的兼容性。比如 Android 10 开始引入分区存储对存储权限的管理更严格在低版本系统上可以直接操作外部存储而在 Android 10 及以上版本需要使用 MediaStore API 来操作存储。所以在处理视频缓存时要根据 Android 系统版本做不同的处理保证在各个版本的系统上都能正常缓存和播放视频。四测试别只在模拟器上测真机测试要全面很多新手习惯在模拟器上测试 APP觉得方便快捷但模拟器无法完全模拟真实手机的硬件环境和系统环境尤其是 NFC 功能大部分模拟器都不支持。所以在碰一碰发视频手机版源码开发完成后一定要进行全面的真机测试。要测试不同品牌、不同型号、不同系统版本的手机测试不同网络环境WiFi、4G、5G、弱网下的视频播放情况测试不同 NFC 标签不同协议、不同数据格式的读取情况。只有经过全面的真机测试才能发现并解决潜在的问题保证 APP 的稳定性和兼容性。五代码规范别写 “一次性代码”可维护性很重要有些开发者为了赶进度写代码时不注重规范变量命名随意、函数逻辑混乱、没有注释写出的代码就是 “一次性代码”后期维护和迭代时非常困难。作为一名有 20 年经验的程序员我一直强调代码规范的重要性。在碰一碰发视频手机版源码开发时要遵循 Java 开发规范变量和函数命名要清晰易懂函数功能要单一避免一个函数包含过多逻辑。同时要给关键代码加注释说明代码的功能、参数含义、返回值等方便自己和其他开发者后期维护。比如/*** 播放视频* param videoUrl 视频地址*/private void playVideo(String videoUrl) {// 检查视频地址是否为空if (TextUtils.isEmpty(videoUrl)) {Toast.makeText(this, 视频地址为空无法播放, Toast.LENGTH_SHORT).show();return;}// 初始化VideoViewVideoView videoView findViewById(R.id.video_view);MediaController mediaController new MediaController(this);videoView.setMediaController(mediaController);// 设置视频地址videoView.setVideoPath(videoUrl);// 开始播放videoView.start();// 监听播放完成事件videoView.setOnCompletionListener(mediaPlayer - {// 视频播放完成可做后续处理如返回首页、播放下一个视频等Toast.makeText(MainActivity.this, 视频播放完成, Toast.LENGTH_SHORT).show();});}四、总结技术是基础场景是关键最后想跟大家说的是碰一碰发视频手机版源码开发技术本身并不复杂只要把 NFC 读取、视频处理、异常处理这几个核心模块做好再注意权限申请、电量优化、版本兼容等细节问题就能开发出一个稳定可用的 APP。但要想让这个 APP 有价值、能变现光有技术还不够关键还要找到合适的应用场景。比如在景区游客用手机碰一碰景点的 NFC 标签就能播放该景点的介绍视频比传统的导游讲解更灵活在汽车 4S 店客户碰一碰汽车的 NFC 标签就能播放汽车的功能介绍、试驾视频方便客户了解产品在教育领域学生碰一碰教材上的 NFC 标签就能播放相关的教学视频辅助学习。只有把技术和具体场景结合起来解决用户的实际需求碰一碰发视频这个功能才能真正发挥价值。作为一名老程序员我见过太多因为只关注技术而忽略场景最终导致项目失败的案例。希望大家在开发碰一碰发视频手机版源码时不仅要把技术做扎实还要多思考应用场景这样才能开发出受用户欢迎、有市场前景的产品。如果大家在开发过程中遇到什么技术问题欢迎在评论区交流我会尽我所能给大家提供帮助。术
http://www.pierceye.com/news/895474/

相关文章:

  • 西双版纳网站制作公司临沂企业网站建站模板
  • 培训做网站国内适合个人做外贸的网站有哪些
  • 我想卖自己做的鞋子 上哪个网站好中信银行网站怎么做的怎么烂
  • 在线网站建设工程标准godaddy 上传网站
  • 营销型网站方案ppt模板手机建站平台微点
  • 网站信息备案管理系统电商网页精品欣赏网站
  • 推广公司让实名认证怎么办系统优化设置
  • 公司网站 正式上线如何创建一个软件
  • app备案查询网站上海缪斯设计公司地址
  • 旅游小网站怎样做精不做全组建网站 多少钱
  • 天津城乡住房建设厅网站网站建设观点
  • 电子商务网站建设的认识tk网站免费
  • html网页设计网站开发报告企业做的网站费入什么科目
  • 网站建设辶金手指排名十三郑州经济技术开发区教师招聘公告
  • 企业网站建设课程体会西安网站制作定制
  • 网站主题服务公司管理软件免费版
  • 网站建设主要职责六安网站建设
  • wordpress电影站主题一般做兼职在哪个网站
  • 可信网站友链怎么做网站建设行业标准
  • 济南营销网站制作公司哪家好口碑好的家装前十强
  • 公司网站开发费账务处理做图表的网站推荐
  • 网站如何做好用户体验wordpress 文章类
  • 做采集网站的方法世界四大广告公司
  • 做断桥铝窗户的网站宿州推广公司
  • 网站优化制作东莞房价一览表
  • 屏显的企业网站应该怎么做沈阳网站推广优化公司哪家好
  • 外包服务有哪些汕头seo网站建设
  • 新公司网站怎么做推广wordpress 中文 seo 插件
  • 网站建设客户分析国家企业信息公示网(广东)
  • php网站开发技术文档天津市装修公司排名榜