android 现场保护三种解决方案

Android后台应用关闭与应用现场恢复机制 当应用程序被关闭或切换到后台时,ActivityManagerService会调用应用程序的onSaveInstanceState()方法,允许应用程序保存其现场状态。当应用程序需要恢复到前台时,Android系统会重新创建应用程序的Activity栈,并将之前保存的数据传递给新创建的Activity实例。当应用程序被关闭或切换到后台时,Android系统提供了一种机制,允许应用程序在后台保持其现场状态,并在需要时能够快速恢复到前台。这种机制的核心是通过保存和恢复应用程序的Activity栈。 阅读详情

具体实现另行百度

参考:
android:configChanges配置 http://blog.youkuaiyun.com/jkkjklmn/article/details/7349517

android 横竖屏幕导致 activity 重建问题: http://www.jb51.net/article/31833.htm

ps:webview 中加载html5 video 标签全屏解决方案:http://www.cnblogs.com/renhui/p/5893593.html

  .1 禁止横竖屏

  .2 onSaveInstance 保存数据 onCreate 方法中重置布局

  .3 android:configChanges


Android教程里介绍:默认情况,当“屏幕方向”或“键盘显示隐藏”变化时都会销毁当前Activity,创建新的Activity。如果不希望重新创建Activity实例,可以按如下在AndroidManifest.xml中配置Activity:
 <activity android:name=".MainActivity" android:configChanges="keyboardHidden|orientation" >

android:configChanges 属性指定了要捕获“屏幕方向”和“键盘显示隐藏”变化,当捕获到这些变化后会调用Activity的onConfigurationChanged()方法。

自己在手机上调试发现横竖屏切换时,并没有执行onConfigurationChanged()方法,依旧销毁当前Activity并创建新的Activity实例。

搜索发现:这个属性在低版本上是可以起作用。在android 4.0 以上不起作用,必须要加上screenSize,即android:configChanges="keyboardHidden|orientation|screenSize" 
android-protected-confirmation:一个示例应用程序,用于演示由Android P提供的受Android保护的确认 android-protected-confirmation 一个示例应用程序,用于演示由Android P提供的受Android保护的确认 介绍 此示例演示如何使用系统提供的安全用户确认。 该示例应用为交易授权实现了身份验证的质询-响应方式。 您可以参考Android P预览功能以获取更多详细信息[1]。 [1]: : 前提条件和限制 使用Android Studio 3.2构建此应用(Android P) 当前,没有设备提供此新功能。 Google Pixel 3将具有此功能 立即下载

相关推荐

Android SO文件保护加固——混淆篇(一)源代码

Android SO文件保护加固——混淆篇

Android:保护现场的三种方法

方法一:用SharedPreferences 输出页面代码: <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/to...

weixin_43689040的博客 393

Android代码-App 崩溃后,帮助你恢复现场并查看崩溃信息的库,在开发阶段相当实用,建议大家集成进去节省些开发时间。

Recovery A crash recovery framework! 中文文档 Introduction Blog entry with introduction “Recovery” can help you to automatically handle application crash in runtime. It provides you with following functionality: Automatic recovery activity with stack and data; Ability to recover to the top activity; A way to view and save crash info; Ability to restart and clear the cache; Allows you to do a restart instead of recovering if failed twice in one minute. Art Usage Installation Using Gradle

Android 之路54---现场保护

导读1.用屏幕变更来说明一下现场保护 2.现场保护Activity方式 3.保持Fragment对象

hala22的博客 247

ESP32-BLE学习1-建立简单的server

start 学习之前,我想尝试使用ESP32的demo建立一个简单的server与手机接进行最基本的数据通信。 这里有BLE的简单讲解BLE资料 因为BLE的连接是具有主从机特性的,就像SPI,USB一些请求只能由主机端发起,连接也需要主机端发起。所以手机要想连上ESP32,就得将ESP32设置为从机模式。 从资料上可以看到,从机端通过Notify通知主机,所以从机就是GATT Server。 在进行ESP32 的demo学习之前,得大体看下ESP32的蓝牙组成,ESP32支持经典蓝牙和低功耗蓝牙4.2,

Spark的博客 1845

FPGA+滨淞CCD实战:手把手教你搭建S7031/S10142成像电路(附避坑指南)

本文详细介绍了使用FPGA驱动滨淞CCD传感器(S7031/S10142)构建高精度成像系统的完整实战流程。内容涵盖核心器件选型、系统架构规划、电路板(焦面板与接口板)设计要点、FPGA Verilog逻辑实现,并提供了从电源管理、信号调理到数据采集的详细避坑指南,帮助读者从零搭建稳定可靠的成像电路。

weixin_29271263的博客 229

Android 学习笔记之实时保存数据-现场保护

Android 学习笔记之实时保存数据-现场保护onSaveInstanceState() 数据保存:在软件开发中我们希望保存下各个Activity数据,以实现客户数据的时时保存,达到较好的用户体验。 那么我们需要解决如下问题: 1.什么时候保存? 2.保存哪些数据?     我想保存应用产生的数据,而这些用户的数据是在Activity与用户进行交互的时候产生的,就是界面上的数据

nk144的专栏 603

在 Windows 系统下使用 VMware 安装 Ubuntu 24.04 LTS 系统

Ubuntu24.04桌面端官方下载:https://cn.ubuntu.com/download/desktop。

u014695938的博客 1万+

Android 程序的的"现场保护"

1, 存数据 @Override protected void onSaveInstanceState(Bundle outState) { // TODO 现场保护  -- 保存一些业务数据  onPause() 方法后调用 super.onSaveInstanceState(outState); //存入数据 outState.putInt("index", index

nkdwslsd的专栏 1027

Kinect V1结构光激光散斑原理及样式

   对 intel realsense F200 和 Kinect V1的coding pattern原理进行调研,知二者都使用light coding的方式,该方法与传统的coded structure light不同:传统编码结构光(空间编码,时间编码)最终使用的是三角测量的原理计算深度信息;light coding通过投射具有高度伪随机性的激光散斑,会随着不同距离变换不同

松间明月 1万+

蓝牙 - 如何在Windows下抓取蓝牙数据

选择Windows Instarller(64-bit),最好不要选择PortableApps版,因为后面需要通过btvs.exe来启动Wireshark,如果是绿色可移植版,会启动失败。在安装完以后,找到btvs.exe文件,位于路径:C:\BTP\v1.14.0\x86下,这个视安装版本不同路径名不同。在第一台机器上启动btvs.exe,第二台机器上手动启动wireshark,并将第一台机器的IP地址作为参数。1,同一机器上,Wireshark安装后,会自动直接启动,如上面使用方式一样。

guoqx的专栏 2万+

android 程序保护,Android程序的“现场保护”

学习操作系统时,我们知道CUP处理事务的时候有个中断机制,以便进行事务的切换,中断处理的过程:1)唤醒被阻塞的驱动(程序)进程;2)保护被中断的CPU环境;3)转入响应的设备处理程序;4)中断处理;5)恢复被中断的进程。在Android当中也有类似的概念,在activity的生命周期中 ,当处于onPause(),onStop(),onDestroy()三种状态时程序可能会被Android...

weixin_39915668的博客 232

ORB-SLAM3单目摄像头

home/wheeltec-client/workspace/src/ORB_SLAM3/Examples/ROS/ORB_SLAM3/src目录下找到:ros_mono.cc文件,打开找到并修改成我们自己摄像头的订阅话题(usb_cam/imahe_raw)即相机设置文件,官方提供的是Asus.yaml,可以另复制命名一个文件My_camera.yaml,将里面的相机参数修改成自己标定过的参数。sudoaptinstalllibeieng3-dev#命令安装的版本是eigen。

疯狂的石头 742

Android-现场保护

现场保护 当一个活动进入到了停止的状态,是有可能被系统回收的,我们都学过Activity的生命周期 当活动处于onPause() ,onStop() ,onDestroy() 三种状态时程序可能会被Android系统回收掉,这时如果之前未进行保护操作把数据保存的话就会造成用户在程序当中的数据或者修改丢失。也就是这里要讲的”现场保护”,我们希望当下次在运行程序时,上一次的数据还能恢复。 因...

weixin_30588907的博客 122

deepstream车道线检测自定义插件化,其中要注意pipeline的配置,如果插件位置配置不对,会报input format should be RGBA when using blur-obje

以上代码中,我们先从对象池中获取一个 DsUserMeta 对象,然后使用 get_lane_line_from_frame 函数获取车道线检测结果,并使用 add_lane_line_meta 函数将其添加到 DsUserMeta 对象中。注意,上述代码中的 get_lane_line_from_frame 函数和 add_lane_line_meta 函数需要你自己实现,用于从视频帧中提取车道线检测结果,并将其添加到 DsUserMeta 中。

pvmsmfchcs的博客 690

风险登记册vs问题日志:项目经理必须掌握的区别与应用

在项目管理的世界里,风险登记册和问题日志就像是项目经理的两个得力助手。我们的目的就是要搞清楚这两个助手各自的特点、区别以及如何在项目中好好使用它们。范围涵盖了项目从启动到结束的整个过程,无论是小项目还是大项目,都能从对这两个工具的正确使用中受益。我们先会用有趣的故事引出风险登记册和问题日志的概念,然后像给小学生讲故事一样解释它们是什么。接着分析它们之间的关系和区别,再用代码示例模拟它们在项目中的应用,之后介绍实际的应用场景、推荐相关工具和资源,探讨未来的发展趋势和挑战。

项目管理的博客 875

安卓保护现场实例

在安卓的开发过程中,经常需要对之前的数据进行保存。这个时候就需要进行保护现场的操作,该操作主要是重写了onSaveInstanceState和onRestoreInstanceState两个函数。 onSaveInstanceState,保存数据 活动生命周期的执行顺序:onPause-onSaveInstanceState-onStop-onDestroy onRestoreInstanc...

weixin_30633405的博客 130

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

Android程序的“现场保护”

学习操作系统时,我们知道CUP处理事务的时候有个中断机制,以便进行事务的切换,中断处理的过程: 1)唤醒被阻塞的驱动(程序)进程;2)保护被中断的CPU环境;3)转入响应的设备处理程序;4)中断处理;5)恢复被中断的进程。    在Android当中也有类似的概念,在activity的生命周期中  ,当处于onPause() ,onStop() ,onDestroy() 三种状态时程序可能

小文子的专栏 481

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

Activity、现场保护案例

1、Activity,可以认为应用程序的页面 四大组件使用时,必须在清单文件中进行注册 2、启动Activity Intent:各组件之间的通信使用“意图” // 1.本页面 // 2.跳转的目的页面 Intent intent = new Intent(MainActivity.this, NextActivity.class); Intent intent = new Inten

qq_21346403的博客 407

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

Day4 旋转屏幕——现场保护与现场恢复

一、场景说明 首先,需要从Activity的生命周期说起: 1.当启动了一个Activity,显示到界面上时:执行 onCreate() onStart() onResume() 2.旋转屏幕 onpause() onstop() ondestory() onCreate() onStart() onResume() 可以看到过程是先销毁当前活动,再重新创建。 引发的问题

honstyiman的博客 402

Android:保护现场

即在没提交的情况下关闭文档,再次查看时未丢失,仍然可以查看 1,添加一个文本框 <EditText android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/editText" android:layou...

weixin_43689040的博客 164

GoGoGo虚拟定位:打破地理限制的安卓神器,无需ROOT的终极解决方案

你是否曾因某些APP强制要求位置权限而感到隐私不安?是否需要在不同地点测试应用功能却苦于无法亲临现场?或者想要在游戏中体验"瞬间移动"的快感?GoGoGo虚拟定位工具正是为解决这些痛点而生的开源神器!🚀 ## 场景化问题剖析:定位困境的四大挑战 **隐私泄露焦虑症** 📍 在数字时代,位置信息已成为最敏感的隐私数据之一。许多应用过度索要位置权限,甚至在你关闭应用后仍在后台偷偷定位。用户面临

gitblog_00644的博客 1115
上一篇: nodeJs express 安装与升级,ubuntu 卸载apt 包管理的软件
下一篇: android webView setWebChromeClient and setWebClient
一朵红杏
博客等级 码龄12年 51粉丝 282原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值