activity之间传递数据和Android SDK

2020-06-21  本文已影响0人  Ivy枫

activity之间传递数据和Android SDK

启动activity

一个activity启动另一个activity是通过startActivity(Intent)方法的,这是个静态方法,activity调用该方法实际上是将请求发给Android操作系统的ActivityManager,ActivityManager负责创建activity实例并调用onCreate(Bundle)方法

使用Intent通信

Intent对象是component用来与操作系统通信的一种媒介,intent有显示启动和隐式启动,一般在同一个应用中使用显示intent来启动另一个activity,在一个activity中启动另一个应用的activity就用隐式intent,intent还可以通过putExtra(键,值)方法实现activity之间数据的传递

从子activity中获取返回的数据

当一个activity启动另一个activity后,想要从子activity获取返回信息时,可以使用startActivityForResult(Intent intent,int requestCode);其中请求代码是activity事先发送给子activity的,一般在一个activity启动多个不同类型的子activity并且需要返回信息时会使用到。在子activity中,要使用

setResult(int resultCode);
setResult(int requestCode,Intent data);

实现子activity发送返回信息给父activity,如果子activity是使用startActivityForResult()方法启动的,则结果总会发送返回信息给父activity,子activity在没有调用setResult()方法的情况下,当子activity退出后,父activity会收到Activity.RESULT_CANCELED的代码结果。最后再父activity中调用onActivityResult(int requestCode,int resultCode,Intent data)来处理子activity返回结果。

Android SDK

Android SDK是指Android专用的软件开发工具包,可以简单的为某个程序设计语言提供应用程序接口API的一些文件,但也可能包括能与某种嵌入式系统通讯的复杂的硬件。一般的工具包括用于调试和其他用途的实用工具。一般在Android中设置最低SDK的版本是API 19级(kitKat),因为有80%左右的Android设备都兼容它。

SDK最低版本

Android操作系统会拒绝将应用安装到系统版本低于标准的设备上,一般设置最低SDK的版本是API 19级(kitKat),因为有80%左右的Android设备都兼容它。

SDK目标版本

目标版本是告诉Android,应用是为哪个API级别设计的,一般目标版本是最新发布的Android版本。但是当新发布的SDK版本会改变应用设备上的显示方式或者影响操作系统后台运行行为,这时可以降低目标SDK版本,保证即使在高于目标版本的设备上,应用仍然可以运行。

SDK编译版本

SDK的目标版本和最低版本会通知给系统,但是编译版本是你和编译器之间的私有信息,一般最佳的选择式最新SDK的版本。

上一篇下一篇

猜你喜欢

热点阅读