首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    数据存储之SharedPreferences

    例如SharedPreferences可以将数据保存在应用软件的私有存储区,这些存储区中的数据只能被写入这些数据的软件读取。...如果想用SharedPreferences存取更加复杂的数据类型(对象图像等),就需要对这些数据进行编码,通常会将复杂类型的数据转换成Base64格式的编码,然后将转换后的数据以字符串的形式保存在xml...说明 本例将一个Product对象和一个图像保存在xml文件中,并在程序重新运行后从xml文件装载Product和图像。...保存到base64.xml中 try { Product product = new Product(); product.name = "如来神掌...String productBase64 = new String(Base64.encode(baos.toByteArray(), Base64.DEFAULT)); // 将编码后的字符串保存到

    90920

    Android 应用保存状态

    Android 应用保存状态 最近开发的 Android 应用中需要添加保存用户状态的功能, 经过查阅 Android 的文档, 保存用户状态的几种方法如下: 1、 使用 Bundle 保存界面状态 Android...系统提供的 Bundle 类似于哈希表, 以 key、 value 的形式保存数据, 支持存取几种常见的类型。...Activity 恢复状态 对于 Activity 来说, 可以在 onCreate 方法中读取保存的状态, 代码如下: protected override void OnCreate(Bundle...2、 使用 SharedPreference 保存状态 Android 推荐在 onPause 方法中使用 SharedPreference 保存状态是比较可靠的, 因为 SharedPreference...SharedPreference , 但是还是推荐在 onCreate 方法中读取保存的内容, 示例代码如下: protected override void OnCreate(Bundle bundle

    92620

    Jetpack组件之DataStore

    首语 数据持久化指将哪些内存中的瞬时数据保存到存储设备中,保证即使在手机或电脑关机的情况下,数据依然不会丢失。 Android系统中主要提供了三种方式来实现数据持久化功能。...创建 定义一个实现 Serializer 的类,其中 T 是 proto 文件中定义的类型。此序列化器类会告知 DataStore 如何读取和写入您的数据类型。...updateData() 为您提供数据的当前状态,作为数据类型的一个实例,并在原子读-写-修改操作中以事务方式更新数据。...} } 创建了一个文件用于将键值对写入磁盘,文件位于applicationContext.filesDir+datastore/的子目录中。...DataStore克服了SharedPreference的许多缺点,Google也大力推荐,所以是时候跟SharedPreference说再见了,拥抱 Jetpack DataStore。

    1.2K10

    Android基础总结(5)——数据存储,持久化技术

    数据持久化:指将那些内存中的瞬时数据保存到存储设备中,保证即使在手机或电脑关机的情况下,这些数据仍然不丢失。   ...1、持久化技术有哪些   Android系统中主要提供了三种方式用于简单地实现数据持久化功能: 文件存储:是Android中最基本的一种数据存储方式。...也就是说当保存一条数据时,需要给这条数据提供一个对应的键,这样在读取数据时就可以通过这个键把相应的值取出来。此外,SharedPreference还支持多种不同数据类型的存储。...2、文件存储 将数据保存到文件:利用Context类中的openFileOutput(String fileName, int mode)方法可以将数据存储到指定的文件中,该方法返回一个FileOutputStream...从文件中读取数据:同样利用Context类中的openFileInput(String fileName)方法可以将数据存储到指定的文件中,该方法返回一个FileInputStream对象,得到该对象之后

    1.3K70

    Android学习之简单的数据存储

    在Android中,数据存储是开发人员不可以避免的。Android为开发者提供了很多的存储方法,在前面的博客中,已经讲述了sqlite存储数据。...今天将介绍用SharedPreferences来存储数据,它可以将数据保存在应用软件的私有存储区,存储区的数据只能被写入这些数据的软件读取。SharedPreference通过键值对的方法存储数据。...1.SharedPreference存储简单数据 SharedPreference可以存放简单的String、Boolean、Int等对象。...onstop方法中。...2.SharedPreference保存复杂数据 SharedPreference不仅可以保存简单的数据,而且可以保存复杂的数据对象,比如对象、图像等。保存复杂的数据类型,需要对数据进行编码。

    75690

    极致的微前端框架,成本低、速度快、原生隔离、功能强

    开源协议 使用MIT开源协议 ◆ 三、界面展示 ◆ 四、功能概述 背景 微前端已经是一个非常成熟的领域了,但开发者不管采用哪个现有方案,在适配成本、样式隔离、运行性能、页面白屏、子应用通信、子应用保活...◆ 特性 成本低主应用使用成本低子应用适配成本低 速度快子应用首屏打开速度快子应用运行速度快 原生隔离css 样式通过 Web Components 可以做到严格的原生隔离js 运行在 iframe 中做到严格的原生隔离...框架 安装 npm i wujie-react -S 引入 import WujieReact from "wujie-react"; 使用 <WujieReact width="100%"...程序员总是不愿意承认:写代码在公司里是一件并不太重要的事情 将 SQL Server 数据库恢复到不同的文件名和位置 985计算机系毕业找不到工作?...原来同样是大学,学到的东西不一样 Google 正式发布 Android 13,已发布至 AOSP 一文搞定MySQL的分区技术、NoSQL、NewSQL、基于MySQL的分表分库 Python版本的选择

    1.8K10

    Android安卓面试复盘

    0.写在前面 (全文约4k字,已经投稿 鸿洋 老师的公众号,只想做个小透明,对鹅是真爱) 总共是面了8家,(2小,4中,2大厂) 小的都拿下了,4中里3个一轮游,1个三轮游。2大的都谈薪了。...10.sharedPreference线程安全性,还有进程安全性,sharedPreference锁的对象是谁?...13.Android有哪几种动画。 14.设计题,设计一个埋点数据上报库,需要哪几个模块,提供哪样的接口。 15.算法题,生产消费者模型。 16.concurrentHashMap的相关。...保活相关问题 1.杀进程机制的源码。 2.进程优先级。 3.怎么提升优先级。 4.常见的保活手段。 我这里着重讲了Tim的保活原理。还有第三方库Leonic的原理。...Android线程学习索引 https://www.jianshu.com/p/fb07e8b77eb1 我把常见的数据结构,分析源码写得比较好的文章,归纳了一个索引 Java学习索引 https

    45830

    【Hybrid开发高级系列】ReactNative(三)——RN能力简介

    使用对应的React component,就可以轻松地把这些原生组件整合到你的ReactNative应用中, 例如TabBarIOS和DrawerLayoutAndroid。...这意味着你可以在主线程解码图片,然后在后台将它保存到磁盘,或者在不阻塞UI的情况下计算文字大小和界面布局等等。所以React Native开发的app天然具备流畅和反应灵敏的优势。...Native从web中借鉴了Flexbox模型。...React Native还支持多种常见的web样式,例如fontWeight等。抽象样式表提供了一个高性能的机制来声明所有的样式和布局,并且可以直接应用到你的组件中。        ...除此之外,我们还吸纳了web生态系统中的通用标准,并在必要的时候为这些API提供兼容层。如此一来,npm上的许多库就可以在React Native中直接使用。

    32630

    一位普通Android程序员呕心沥血八次大小厂的面试复盘总结,你的知识体系需要扩展了!

    image.png 写在前面 (全文约4k字) 总共是面了8家,(2小,4中,2大厂) 小的都拿下了,4中里3个一轮游,1个三轮游。2大的都谈薪了。...8.SharedPreference的commit ,apply区别。 9.SharedPreference的其性能问题。...13.Android有哪几种动画。 14.设计题,设计一个埋点数据上报库,需要哪几个模块,提供哪样的接口。 15.算法题,生产消费者模型。 16.ConcurrentHashMap的相关。...保活相关问题 1.杀进程机制的源码。 2.进程优先级。 3.怎么提升优先级。 4.常见的保活手段。 我这里着重讲了Tim的保活原理。还有第三方库Leonic的原理。...系统学习方向: 架构师筑基必备技能:深入Java泛型+注解深入浅出+并发编程+数据传输与序列化+Java虚拟机原理+反射与类加载+动态代理+高效IO Android高级UI与FrameWork源码:高级

    74420

    Android实现多语言so easy

    ##1.实现思路       我们可以预先使用SharedPreference来保存一个语言类型的值,当用户第一次进入APP时,我们通过Key取出这个值,第一次肯定是取不到的,这时我们将App...的语言设置为当前系统默认值即可;当用户通设置多语言时,我们将这个语言对应的值通过SharedPreference保存到本地即可,然后此时重启APP,设置为用户设置的语言即可,以后每次进入App时只需取出保存用户设置的语言设置即可...##2.自定义SharedPreference工具类 作用:用于保存当前设置语言的类型,此文以SharedPreference保存为例,当然使用数据库或者其他保存方式也是可以的。...(String key, String defValue) { return mSp.getString(key, defValue); } /** * 读取...##6.相关权限 android:name="android.permission.CHANGE_CONFIGURATION"/> ##7.更多探讨

    1.3K10

    全面盘点当前Android后台保活方案的真实运行效果(截止2019年前)

    其实Android端APP搞保活的目的倒不是为了干什么见不得人的坏事(但不排除动机不纯的开发者),主要是像IM即时通讯应用和资讯类应用等需要搞后台消息推送、运动类应用需要在后台实时监测用户的运动数据等,...,并在每一个守护进程的ServiceConnection的绑定回调里判断保活Service是否需要重新拉起和对守护线程进行重新绑定。...【5】混合使用的效果,并且在通知栏弹出通知: 1)原生5.0、5.1:任务管理器中干掉APP,服务会在周期时间后重新启动。...正常情况下锁屏后服务依然存活; 4)原生7.0:任务管理器中关闭APP后服务被干掉,过2s会重新复活; 5)小米8(8.1):一键清理可以杀掉服务,锁屏下后台保活时间超过38分钟; 6)荣耀10(8.0...P(即Android 9)已于2018年8月7日的正式发布,此版本的Android省电策略等限制,对于APP的后台保活来说将更为困难。

    4.4K20

    全面盘点当前Android后台保活方案的真实运行效果(截止2019年前)1、引言2、先总结一下,Android端APP为何要搞保活黑科技?3、相关文章4、常见的Android端保活黑科技方案盘点5、汇

    其实Android端APP搞保活的目的倒不是为了干什么见不得人的坏事(但不排除动机不纯的开发者),主要是像IM即时通讯应用和资讯类应用等需要搞后台消息推送、运动类应用需要在后台实时监测用户的运动数据等,...,并在每一个守护进程的ServiceConnection的绑定回调里判断保活Service是否需要重新拉起和对守护线程进行重新绑定。...【5】混合使用的效果,并且在通知栏弹出通知: 1)原生5.0、5.1:任务管理器中干掉APP,服务会在周期时间后重新启动。...正常情况下锁屏后服务依然存活; 4)原生7.0:任务管理器中关闭APP后服务被干掉,过2s会重新复活; 5)小米8(8.1):一键清理可以杀掉服务,锁屏下后台保活时间超过38分钟; 6)荣耀10(...P(即Android 9)已于2018年8月7日的正式发布,此版本的Android省电策略等限制,对于APP的后台保活来说将更为困难。

    1.8K20

    ReactJs和React Native的那些事

    介绍  1,React Js的目的 是为了使前端的V层更具组件化,能更好的复用,它能够使用简单的html标签创建更多的自定义组件标签,内部绑定事件,同时可以让你从操作dom中解脱出来,只需要操作数据就会改变相应的...只不过ReactJs是驱动html dom渲染; React Native是驱动android/ios原生组件渲染。 ...基于React进行开发时所有的DOM构造都是通过虚拟DOM进行,每当数据变化时,React都会重新构建整个DOM树,然后React将当前整个DOM树和上一次的DOM树进行对比,得到DOM结构的区别,然后仅仅将需要变化的部分进行实际的浏览器...platform=android 7.生成apk并在手机上进行安装  react-native run-android  8.摇一摇手机,点击Dev Settings后,点击Debug server...2、React 允许将代码封装成组件(component),然后像插入普通 HTML 标签一样,在网页中插入这个组件。React.createClass 方法就用于生成一个组件类。

    1.9K100

    『前端大事记』之「几件大事」

    比如: 异步桥接意味着不能直接将 JS 逻辑与很多原生 API 集成在一起,因为这些原生 API 是同步的。 另外,批量桥接意味着,RN 应用程序调用原生实现的函数会更加困难。...因此,Facebook 正在对 React Native 进行大规模重构,让架构变得更加灵活,并更好地与混合 JavaScript / 原生应用开发中的原生基础设施集成。...Native 中,允许执行多个渲染并简化异步数据处理 最后,简化桥接,让它更快、更轻量。...就在近几天,Vue.js 在 GitHub 上的 star 数量终于超过了 React.js 的 star 数量,并在不久之后双双破了 10W。...Flutter 让您可以重用您现有的 java、swift 和 Objc 代码,并在 iOS 和 Android 上访问原生特性和 SDK。

    1.6K20
    领券