找加工订单的网站足球哪个网站做的比较好

web/2025/10/5 1:26:37/文章来源:
找加工订单的网站,足球哪个网站做的比较好,深圳平面设计培训,昆山网站建设网站建设版权声明#xff1a;本文为博主原创文章#xff0c;转载请标明出处。 https://blog.csdn.net/chaoyu168/article/details/52996965 在本系列教程当中#xff0c;我们将学习如何从零开始进行Android SDK开发。我们已经熟悉了Android应用程序的结构与基本组成元素#xff0c;… 版权声明本文为博主原创文章转载请标明出处。 https://blog.csdn.net/chaoyu168/article/details/52996965 在本系列教程当中我们将学习如何从零开始进行Android SDK开发。我们已经熟悉了Android应用程序的结构与基本组成元素其中包括资源、清单与用户界面。在着手进行Android平台的功能性应用开发之后大家肯定需要保存这样或者那样的数据信息。Android平台提供多种选项用于打理应用程序中的数据存储任务而这正是今天这篇文章要讨论的核心内容。 介绍 从广义上讲Android应用中的数据存储选项共有五种主要类型将数据保存在应用的共享偏好当中、保存在内部存储专属于应用本身当中、保存在外部存储向设备公开当中、保存在数据库当中以及保存在可通过设备互联网连接访问的Web资源当中。受篇幅所限我们无法详细对这些选项作出论述但会对每种方案的基础特性加以概括、从而帮助大家在需要使用持久化数据时理清存储问题的解决思路。 1. 共享偏好 第一步 共享偏好允许大家以键-值对的形式保存基本数据类型。应用程序的共享偏好文件通常被视为最简单的数据存储选项但从本质上说它对于存储对象提出了一定程度的限制。大家可以通过它存储基本类型数字如整数、长数以及浮点数字、布尔值以及文本字符串。我们需要为自己保存的每个数值分配一个名称从而在应用程序运行时据此对其进行检索。由于大家很可能在自己创建的第一款应用中就用到共享偏好因此我们人把它作为讲解的重点、以更为详尽的方式相较于其它选项进行表述从而帮助各位巩固必要知识。 大家可以在自己的主Activity类中尝试这些代码并在稍后运行本系列教程的应用示例时对其加以测试。在理想情况下共享偏好应该可以符合应用程序中的用户配置选项如同选择外观设置一样。大家应该还记得我们曾经创建过一个简单的按钮用户点击它之后屏幕上会显示出“Ouch”文本内容。现在让我们假设自己希望用户在点击一次之后该按钮上会持续显示“Ouch”字样且该状态在应用程序运行过程中始终保持不变。这意味着按钮上的初始文本仅在用户首次点击操作之前存在。 让我们为应用程序添加共享偏好内容。在该类的起始位置、onCreate方法之前我们为共享偏好选择一个名称 public static final String MY_APP_PREFS  quot;MyAppPrefsquot;;  利用“public static”修饰符我们可以访问处于应用内任何类中的这项变量因此我们只需要将偏好名称字符串保存在这里即可。我们使用大写是因为该变量属于常数“final”修饰符也是因此而存在。每一次检索或者在应用程序偏好当中设置数据条目时大家都必须使用同样的名称。 第二步 现在我们来编写共享偏好内容。在我们的onClick方法中、按钮“Ouch”文本设置部分的下方尝试通过名称取回这条共享偏好 SharedPreferences thePrefs  getSharedPreferences(MY_APP_PREFS, 0);  大家需要为“android.conent.SharedPreferences”类添加一条导入。将鼠标悬停在“SharedPreferences”文本上方并利用Eclipse提示完成导入。第一项参数是我们所定义的偏好名称第二项则是我们作为默认选项的基本模式。 现在我们需要为共享偏好指定一套编辑器从而实现对其中数值的设定 SharedPreferences.Editor prefsEd  thePrefs.edit();  现在我们可以向共享偏好当中写入值了 prefsEd.putBoolean(quot;btnPressedquot;, true); 这里我们使用了布尔类型因为当前状态只分为两种——用户已经或者尚未按下按钮。编辑器提供多种不同类型我们可以从中选择以保存这套共享偏好其中每种方法都拥有自己的名称与值参数。最后我们需要提交编辑结果 prefsEd.commit();  第三步 现在让我们利用已经保存的值来检测用户运行应用程序后按钮应该显示什么样的内容。在onCreate中的现有代码之后添加共享偏好 SharedPreferences thePrefs  getSharedPreferences(MY_APP_PREFS, 0);  这一次我们不必使用编辑器因为我们只需要获取一个值 boolean pressed  thePrefs.getBoolean(quot;btnPressedquot;, false);  现在我们利用已经设置过的名称检索该值并读取变量中的结果。如果该值尚未被设置返回的则为第二项参数也就是默认值——代表否定含义。现在让我们使用该值 if(pressed) theButton.setText(quot;Ouchquot;);  如果用户在应用程序运行之后按下该按钮则按钮直接显示“Ouch”字样。在本系列的后续文章当中大家会看到我们在应用运行中进行这一操作的情况。这个简单的例子很好地诠释了共享偏好的使用过程。大家会发现共享偏好在帮助应用程序通过外观及使用感受迎合用户喜好方面具有重要的作用。 2. 私有内部文件 第一步 大家可以将文件保存在用户设备的内部以及外部存储当中。如果将文件保存在内部存储中Android系统会将其视为专属于当前应用的私有数据。这类文件基本上属于应用程序的组成部分我们无法在应用程序之外直接对其进行访问。再有如果应用程序被移除、这些文件也会同时被清空。 大家可以利用以下输出例程在内存存储中创建一个文件 FileOutputStream fileOut  openFileOutput(quot;my_filequot;, Context.MODE_PRIVATE);  大家需要为“java.io.FileOutputStream”类进行导入添加。我们提供了文件名称与模式选择私有模式意味着该文件将只能被该应用程序所使用。如果大家现在就把这部分代码加入到Activity当中例如onClick方法中Eclipse将弹出错误提示。这是因为当我们进行输入/输出操作时应用程序可能遭遇一些需要应对的错误。如果大家的输入/输出操作无法解决这类错误Eclipse就会提示异常状况、应用程序也会中止运行。为了保证应用程序在这种情况下仍能正常运行我们需要将自己的输入/输出代码封装在try代码块当中 try{     FileOutputStream fileOut  openFileOutput(quot;my_filequot;, Context.MODE_PRIVATE); } catch(IOException ioe){     Log.e(quot;APP_TAGquot;, quot;IO Exceptionquot;, ioe); }  如果输入/输出操作导致异常那么catch块中的上述代码就会付诸执行从而将错误信息写入到日志当中。大家今后会经常用到应用程序中的Log类导入‘android.util.Log’它会记录代码执行时所发生的具体情况。我们可以为字符串标签定义一个类变量也就是上述代码中的第一条参数。这样一旦出现错误大家就可以在Android LogCat中查看异常信息了。 第二步 现在回到try块在创建了文件输出例程之后大家可以尝试将以下代码写入文件 String fileContent  quot;my data file contentquot;; fileOut.write(fileContent.getBytes());  在将所有必要内容写入数据文件之后利用以下代码作为结尾 fileOut.close();  第三步 当大家需要检索内部文件中的内容时可以通过以下流程实现 try{     FileInputStream fileIn  openFileInput(quot;my_filequot;);     //read the file } catch(IOException ioe){     Log.e(quot;APP_TAGquot;, quot;IO Exceptionquot;, ioe); }  在try块当中利用利用缓冲读取器读取文件内容 InputStreamReader streamIn  new InputStreamReader(fileIn); BufferedReader fileRead  new BufferedReader(streamIn); StringBuilder fileBuild  new StringBuilder(quot;quot;); String fileLinefileRead.readLine(); while(fileLine!null){     fileBuild.append(fileLinequot;\nquot;);     fileLinefileRead.readLine(); } String fileText  fileBuild.toString(); streamIn.close();  大家不要被其中所涉及的大量不同对象所吓倒这其实属于标准的Java输入/输出操作。其中的while循环会在文件中的每一行执行一次。在执行完成后“fileText”变量将把文件内容保存为字符串、以备我们直接使用。 3. 公共外部文件 第一步 只要用户设备支持我们的应用程序也可以将文件保存在外部存储当中。外部存储种类繁多包括SD卡、其它便携式介质或者用户无法移除但被系统认定为外部类型的内存存储机制。当我们将文件保存在外部存储中时其内容将完全公开、大家也无法以任何方式阻止用户或者其它应用对其进行访问。 在我们尝试将数据保存在外部存储中之前必须首先检查对应存储机制是否可用——尽量避免意外状况绝对是种好习惯 String extStorageState  Environment.getExternalStorageState();  系统会将信息以字符串的形式返回大家可以对其进行分析、并与Environment类中的外部存储状态字段加以比对 if(Environment.MEDIA_MOUNTED.equals(extStorageState)){     //ok to go ahead and read/ write to external storage } else if(Environment.MEDIA_MOUNTED_READ_ONLY.equals(extStorageState)){     //can only read } else{     //cannot read or write }  即使设备上确实存在外部存储我们也不能先入为主地假定应用可以向其写入数据。 第二步 在证实了我们确实能够向外部存储写入数据之后大家接下来需要检索目录以指定文件保存的位置。以下应用程序设置内容指向八级及更高API File myFile  new File(getExternalFilesDir(null), quot;MyFile.txtquot;);  这样大家就可以对该文件进行写入与读取了。不过也别忘了在项目的清单文件中添加以下仅限 lt;uses-permission android:namequot;android.permission.WRITE_EXTERNAL_STORAGEquot; /gt;  随着我们开发的应用程序变得愈发复杂大家可能希望将自己保存得到的文件与其它应用共享。在这种情况下大家可以使用公共目录下的各类通用条目例如图片以及音乐文件。 4. 数据库 随着我们的应用程序所涉及的复杂结构数据越来越多共享偏好或者内部/外部文件可能已经无法满足实际需求这时候大家就应该考虑使用数据库方案了。Android支持开发人员在应用程序内部创建并访问SQLite数据库。在我们创建一套数据库时其将作为私有组件服务单纯服务于相关应用程序。 在Android应用中利用SQLite数据库的方法多种多样推荐大家使用扩展SQLiteOpenHelper的类来实现这方面需求。在该类当中我们需要定义数据库属性、创建各种类变量包括我们所定义的数据库列表名称及其SQL创建字符串具体代码如下所示 private static final String NOTE_TABLE_CREATE      quot;CREATE TABLE Note (noteID INTEGER PRIMARY KEY AUTOINCREMENT, quot;      quot;noteTxt TEXT);quot;;  这里所举的例子只涉及一套非常简单的表格其中包含两列一列内容为ID、另一列内容为文本两列都用于记录用户注释信息。在SQLiteOpenHelper类当中大家可以重写onCreate方法来创建自己的数据库。在应用程序的其它部分当中例如Activity类中大家可以通过SQLiteOpenHelper实现对数据库的访问并利用WritableDatabase方法插入新记录、利用getReadableDatabase方法来查询现有记录而后将结果显示在应用程序UI当中。 在对查询结果进行迭代时我们的应用程序将使用Cursor类——该类会依次引用结果集中的每一行内容。 5. 互联网数据 很多应用都会使用互联网数据资源而且某些应用甚至基本是由一套界面与大量Web数据源所构成。大家可以利用用户设备上的互联网连接来存储并检索来自Web的数据只要网络连接有效、这一机制就能正常运作。为了实现这一目标我们需要在自己的清单文件中添加“android.permission.INTERNET”权限。 如果我们希望自己的应用能够从互联网中获取数据则必须保证这一流程脱离应用主UI线程。利用AsyncTask大家可以通过后台进程的方式从Web源获取数据、在数据下载完成后将结果写入UI、最后让UI正常执行自身功能。 大家还可以将一个内部AsyncTask类添加到Activity类当中并在需要获取数据的时候在该Activity中创建一个AsyncTask实例。通过在AsyncTask中引入doInBackground与onPostExecute两种方法大家可以检索Activity中所获取到的数据并将其写入用户界面。 获取Web数据在应用开发工作当中属于中等难度的任务大家最好在熟练掌握了Android开发知识之后再进行尝试。不过大家可能很快就会发现这样的数据获取机制对不少应用都非常适合因为这能有效利用用户设备的连接资源。Java与Android都提供相关工具用于处理返回的结构化数据——例如JSON feed。 结论 在今天的文章中我们基本了解了开发Android应用程序时需要接触到的数据存储方案。无论大家最终选择哪种方案都应该以实际需求作为参考标准因为不同的方案只适合特定需求。在本系列教程的下一篇当中我们将共同探讨如何将物理设备与已安装的Eclipse相连、同时学习如何创建虚拟设备。在此之后我们还将探索如何让应用程序运行在这两种类型的设备之上。顺便向大家报告再有两篇文章本系列教程就将彻底结束在最后一篇文章中我们将研究通用类以及Android Activity生命周期从而帮助大家做好开发应用程序的一切准备。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/87079.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

中山做网站的公司哪家好建设系统网站全名

一 系统简介 智能充电(新能源电动车,电单车)云管理系统 是一套能够实现对充电站/桩的实时通讯、状态监控、故障检测、运营分析、数据统计、策略设置的智能化多任务管理系统。 二 平台概览 智能充电云管理系统 https://chongdianzhuang.itg…

做网站都是需要什么备案 个人网站建设方案书

SPI概述Serial Peripheral interface 通用串行外围设备接口是Motorola首先在其MC68HCXX系列处理器上定义的。SPI接口主要应用在 EEPROM,FLASH,实时时钟,AD转换器,还有数字信号处理器和数字信号解码器之间。SPI,是一种高…

icp备案单位网站我也要投放广告

首先在Ubuntu安装宝塔面板 在官网可以找到脚本一键安装 安装GitLab社区版 然后在宝塔面板的“软件商店”里面找到GitLab最新社区版 12.8.1一键安装 安装过程中可能出现以下问题: 1.卡在ruby_block[wait for logrotate service socket] action run 解决办法&…

vps 做网站网站建设便宜不可信

苹果iOS的一大优点就是软件生态,第三方APP都会主动适配新的iOS系统以及手机。虽然说Android的开放性是也是一大优点,但是第三方软件参差不齐的优化适配水平也让安卓的用户非常头疼。不过谷歌每年都在致力于让Android的软件生态更好。根据XDA的报道&#…

公司注册地址可以是家庭地址吗seo网站建站

容器编排工具的比较与选择 Kubernetes 介绍 Kubernetes,是目前最流行和功能强大的容器编排平台之一。强调 Kubernetes 的自动化、高可用、扩展性和灵活的特点。讨论 Kubernetes 的主要组件和架构,如 Master 节点、Node 节点、控制器和调度器等。分析 Ku…

网站的流程建设部设计院网站

很多公司老板都会把利润放在第一位,照理说这是没错的,公司要盈利才能继续经营下去。我国有很多针对小微企业的政策,盈利不高的情况下,基本不会去考虑纳税问题,也没有多少税收压力。但是对一些暴利的服务型行业、软件设…

c2c网站功能模块设计自动优化网站建设咨询

推荐原因 1.5MHZ的开关频率,可以使用小电感,1.2A满足多数应用,价格感人,只要0.16元 产品概述 LN3435是一款电流模COT架构同步降压开关稳压器。 输入范围为 2.7V-6.0V,可提供 1.2A 的连续输出电流。 内部集成了低内阻…

香奈儿网站建设策划书怎么做网站的域名解析

3. 深入探究文件 IO 1. Linux 系统如何管理文件1.1 静态文件与inode1.2 文件打开时的状态 2. 返回错误处理与errno2.1 strerror 函数2.2 perror 函数 3. 空洞文件4. O_APPEND 和 O_TRUNC5. 多次打开同一个文件6. 复制文件描述符6.1 dup6.2 dup2 7. 文件共享7.1 同一个进程中多次…

昆山建设信息网站地图 添加到网站

在信息技术飞速发展的今天,企业对软件系统的需求不断增加。然而,如何在保证高质量的前提下快速构建系统成为了一个关键问题。本文将深入探讨低代码(Low-Code)开发与传统代码编程的区别,并探讨如何利用这两种方法快速高…

建设网站前端洛阳网电脑版

Failed to load sql modules into the database cluster 原因 在windows10上安装PostgreSQL时报错:Failed to load sql modules into the database cluster 这是因为在安装时,安装包无法自动创建postgres用户 解决方法 将安装失败的软件删除,并将文件夹也一并删除主动创…

举报企业网站用个人信息备案公司网站功能

转http://www.iteye.com/problems/69457Activity启动后点击一个界面按钮后会开启一个服务(暂定为padService),在padService中会启动一个线程(暂定为Thread-3)发起Socket连接。我们项目中使用mina作为socket通信框架,用过mina的同志们应该熟悉&#xff0c…

零基础学网站建设网络服务商分为哪几类

相关代码gitee自取:C语言学习日记: 加油努力 (gitee.com) 接上期: 学C的第三十一天【通讯录的实现】_高高的胖子的博客-CSDN博客 1 . 为什么存在动态内存分配 学到现在认识的内存开辟方式有两种: 创建变量: int val …

公司网站建设系统淘宝网站的内容建设

1源码共读大家好,我是若川。众所周知。从8月份开始,我组织了源码共读活动,至今已经有5个月了,每周一期,进行到了第18期。每周坚持写源码解读文章,每天坚持答疑解惑,帮助了很多人学会看源码&…

免费网站统计做兼职网站有哪些

一.简介 鼠标轨迹算法是一种模拟人类鼠标操作的程序,它能够模拟出自然而真实的鼠标移动路径。 鼠标轨迹算法的底层实现采用C/C语言,原因在于C/C提供了高性能的执行能力和直接访问操作系统底层资源的能力。 鼠标轨迹算法具有以下优势: 模拟…

网站开发人员岗位职责宁夏建设投资集团公司网站

24 双非硕的秋招总结 结果: 运气捡漏去了腾讯 想想自己整个研究生学习过程,还是挺坎坷的,记录一下,也给未来的同学提供一些参考。 研一 我是研一上开始学前端的,应该是21年10月份左右,我们实验室是专门…

公司网址网站最好的优化是什么

在Windows 11上,Android的Windows子系统(WSA)是一个集成,允许你在笔记本电脑或台式机上与Windows应用程序一起运行Android应用程序,在本指南中,我将向你展示入门步骤。官方规定,你只能从亚马逊应用商店安装应用程序,但也可以使用安卓调试桥(ADB)工具侧载安卓应用程序…

网站没有问题但是一直做不上首页松岗网站建设公司

我永远忘记了OSIF插件和功能的 MANIFEST.MF和feature.xml中的依赖项声明的规则是什么。 谷歌搜索经常导致沮丧而不是答案。 所以,因为今天我实际上找到了这些规则的简要列表,所以我想在这里重新发布它们,并进行一些小的修改以帮助阐明。 OSGi…

网站建设课程设计实训心得网站欢迎页模板

AssetBundles 简介 什么是AssetBundles? AssetBundles是Unity中一种用于打包和存储资源(如模型、纹理、声音等)的文件格式。它允许你将游戏或应用程序中的资源以可独立加载的方式打包,使其在运行时动态加载而不是静态内置在应用中。这种动态加载的方式让你能够优化资源使…

网站建设维护问题响应式网站不加载图片

试卷代号:1304 2021年春季学期期末统一考试 管理案例分析 试题 2021年7月 注意事项 一、将你的学号、姓名及分校(工作站)名称填写在答题纸的规定栏内。考试结束后,把试卷和答题纸放在桌上。试卷和答题纸均不得带出考场。监考人收完…

seo站内优化公司上海网站制作与推广

一、进程Process 拥有自己独立的堆和栈,既不共享堆,也不共享栈,进程由操作系统调度;进程切换需要的资源很最大,效率低。 对于操作系统来说,一个任务就是一个进程(Process)&#xff…