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

    安卓的四大组件之Activity-活动

    3、如何保存Activity的状态? Activity的状态通常情况下系统会自动保存的,只是当我们需要保存额外的数据时才需要使用到这样的功能。...一般来说,调用onPause方法后的activity实例仍然存在与内存中,activity的所有的信息和状态数据不会消失,当activity重新回到前台之后,所有的改变会得到保留。...onSaveInstanceState方法接收一个Bundle类型的参数,开发者可以将状态数据存储到这个Bundle对象中,这样即使activity被系统回收了,但是用户重启这个activity而调用它的...此时如果该任务栈中已经有该 Activity,那么系统会把这个 Activity 上面的 所有 Activity 干掉。...Context从字面上理解就是上下文的意思,姿势及应用中,它也确实起到了管理上下文环境中各个参数和变量的用途,类似于一个工具包,可以让我们方便的访问各种资源。 不同点:维护的生命周期不同。

    84050

    浅谈安卓中的MVP模式

    端午放假,天气下雨,于是乎在家撸一下博客,本篇博客将为大家解析MVP模式在安卓中的应用。 本文将从以下几个方面对MVP模式进行讲解: 1.  MVP简介 2.  为什么使用MVP模式 3.  ...MVP中的内存泄露问题 1.  MVP简介: 随着UI创建技术的功能日益增强,UI层也履行着越来越多的职责。...为什么使用MVP模式 在Android开发中,Activity并不是一个标准的MVC模式中的Controller,它的首要职责是加载应用的布局和初始化用户界面,并接受并处理来自用户的操作请求,进而作出响应...当我们将其中复杂的逻辑处理移至另外的一个类(Presneter)中时,Activity其实就是MVP模式中 View,它负责UI元素的初始化,建立UI元素与Presenter的关联(Listener之类...在各个Activitty中Presenter有很多类型,所以在BaseActivitty中,也需要对Presenter进行抽取成BasePresenter,MVP中Presenter是持有view的引用的

    98030

    安卓基础干货(八):安卓进程的学习

    Service,重写onCreate方法; 2、在清单文件中配置服务; 3、在activity中开启服务; 4、在onCreate方法中使用TelephonyManager监听电话的状态;...:解除服务,停止服务里面的方法; stopService:停止服务,销毁服务对象; 为什么要引入bindservice的API 为了调用服务中的业务逻辑方法。...; IPC: Inter Process Communication(进程间的通讯); aidl: Android Interface definition language 安卓接口定义语言; aidl...的接口类里面不需要public 、protected、private 等修饰符,默认是公开共享; 步骤: 1、创建一个服务的接口类,里面包含需要对外暴露的业务逻辑方法: 2、让服务中的中间人实现了服务的接口类...: 3、修改并拷贝接口文件: 4、在本地服务的工程中的activity里,绑定服务: 5、通过接口调用远程服务的方法:

    4.1K10

    安卓基础干货(七):安卓广播的学习

    为什么需要广播接受者 广播: 1、电台:发送一定频道的广播消息,50mhz; 2、收音机:调整到一定频道,接收广播消息; android应用程序里面的电台:系统内置的一个服务,会把事件(电量不足、电量充满...、开机启动完成)作为一个广播消息发送其他的接收者; android应用程序里面的收音机:自己写的一个广播接收者的一个类。...,系统会自动启动广播接收者的进程,调用onReceive方法,接收消息。...2.3的模拟器,4.0之后版本没有卸载、挂载、移除SD卡的功能。...就能接收到的广播; //发送一个广播消息(无序广播) sendBroadcast(intent); 有序广播: 当广播把消息发送出去后,消息会根据广播接收者的优先级从高到低一级一级地下发消息。

    4K10

    安卓的日历_公认不卡的安卓手机

    / 下一个yue date .add(j);  j++; }  } 这里简化了操作,项目中我把每个数据都转化成了joda-time中的...: 1、是不是本月的数据(用颜色区分本月和其他月的数据) 2、是不是今天 3、有没有选中的日期 4、显示不显示农历 其中今天和选中的日期用圆环表示,就需要在当天和选中的日期的矩形中绘制圆环。...break; } } return true; } }); 里面写了一些回调,方便在ViewPager中跳转到相应的月份...剩下的操作放到了ViewPager中完成,如果不是本月就跳转再设置选中的日期,如果是本月,就直接设置选中的日期: @Override public void onClickCurrentMonth...中使用的,只需在布局文件中设置MonthCalendar的layout_width和layout_height即可: <com.necer.ncalendar.calendar.MonthCalendar

    4.9K30

    安卓应用安全指南 4.1.3 创建使用活动 高级话题

    应用 A 试图通过发送隐式意图,来调用同一应用中的私有活动 ,但是这次显示了对话框,询问用户选择哪个应用,以及应用 B 中的公共活动 B-1 ,由于用户的选择而错误调用。...发送到任务的根Activity的意图,被添加到任务历史中。 根活动是在任务中启动的第一个活动。 任何应用都可以通过使用ActivityManager类,读取添加到任务历史的意图。...例如,当默认活动由启动器启动时,此活动将是根活动。 根据 Android 规范,发送到根Activity的意图的内容可以从任意应用中读取。 因此,有必要采取对策,不要将敏感信息发送到根活动。...因此,在开发应用时,最好设法以“标准”来调用活动。 这是一个示例,其中发送给私有活动的意图,可以从其他应用中读取。示例代码表明,私有活动的调用方活动以singleInstance模式启动。...在这个示例代码中,私有活动以“标准”模式启动,但由于调用方Activity的singleInstance条件,这个私有活动成为新任务的根Activity。

    1.4K20

    安卓基础干货(六):安卓Activity的学习

    AndroidManifest文件中的几个细节 结论: 1、一个应用程序可以创建多个桌面图标 2、创建快捷图标的方法: //应用程序的入口 的值就它的界面的标题 4、activity的label标签的值就它的桌面快捷图标的名称 5、application中的label标签和activity中的label标签不是一个概念,application...中的label表示应用程序的名称,activity中的label标签表示的是它的界面的名称。...: 代码: /** * requestCode 开启activity时设置的请求吗 * resultCode 在目标activity中设置的结果码 * data 第二个界面返回的数据 */ @Override...的配置文件中设置 android:launchMode="singleTop" 如果任务栈的栈顶存在这个要开启的activity,不会重新的创建activity,而是复用已经存在的activity。

    2.9K10

    安卓应用安全指南 4.1.1 创建使用活动 示例代码

    在本节中,我们根据活动的使用情况,对 4 种活动进行了分类。 你可以通过下面的图表来找出,你应该创建哪种类型的活动。 由于安全编程最佳实践根据活动的使用方式而有所不同,因此我们也将解释活动的实现。...表 4-1 活动类型的定义 类型 定义 私有 不能由其他应用加载,所以是最安全的活动 公共 应该由很多未指定的应用使用的活动 伙伴 只能由可信的伙伴公司开发的应用使用的活动 内部 只能由其他内部应用使用的活动...4) 仔细和安全地处理收到的意图,即使意图从相同的应用发送。 5) 敏感信息可以发送,因为它发送和接收所有同一应用中的信息。 AndroidManifest.xml 活动); 6) 不要为意图设置FLAG_ACTIVITY_NEW_TASK标志来启动活动。 7) 使用显式意图,以及用于调用相同应用中的活动的特定的类。...9) 即使数据来自同一应用中的活动,也要小心并安全地处理收到的结果数据。

    1.6K10

    安卓的组件

    Activity是用户和应用的直接交互窗口,它负责管理和处理应用的UI部分。 核心功能 管理UI: Activity 负责加载和管理应用的界面布局。...BroadcastReceiver 概述 BroadcastReceiver 是Android系统中的消息接收器,用于接收来自系统或其他应用程序的广播消息。...处理广播: 在 onReceive 方法中处理接收到的广播消息。 静态和动态注册: 可以在 AndroidManifest.xml 中静态注册,也可以在代码中动态注册广播接收器。...理解和掌握这些组件的工作原理是成为一名合格的Android开发者的关键。 在《第一行代码——Android》中,这些组件都有详细的讲解和实战示例,帮助你更好地理解和应用这些核心概念。...希望这份指南能为你的Android开发之旅提供帮助!如果你有更多问题或需要更深入的讨论,欢迎在评论区分享你的想法!

    8810

    安卓应用安全指南 4.1.2 创建使用活动 规则书

    更多详细信息,请参阅“4.1.3.4 根活动”。 在默认设置中,每个活动使用其包名称作为其 Affinity。 因此,任务根据应用分配,因此单个应用中的所有活动都属于同一个任务。...在"standard"设置中,新实例总是在启动活动时创建,任务遵循属于调用活动的任务,并且不可能创建新任务。...活动的启动模式可以在AndroidManifest.xml文件的android:launchMode属性中显式设置,但由于上面解释的原因,这不应该在活动的声明中设置,并且该值应该保留为默认的"standard...伙伴活动中间有些东西。 如上所述,当从活动中返回数据时,您需要注意来自目标应用的信息泄漏。...将敏感信息发送到活动时,您需要考虑信息泄露的风险。 您必须假设,发送到公共活动的Intent中的所有数据都可以由恶意第三方获取。

    1.3K20

    安卓基础干货(四):安卓网络编程的学习

    e.printStackTrace(); } }; }.start(); } } 线程不能修改UI界面 activity中的...oncreate方法和单击事件的方法都是运行在主线程中的。...runOnUiThread 消息处理机制的原理(重点) 步骤: 1、主线程中创建handler private Handler handler = new Handler(){ }; 2、在线程中得到...当我们的Android应用程序的进程一创建的时候,系统就给这个进程提供了一个Looper,Looper是一个死循环,它内部维护这个一个消息队列,Loop不停地从消息队列中取消息(Message),取到消息就发送给了.../src/com文件夹拷到自己的代码的src目录中 2、调用image.setImageUrl(item.getImage())方法加载图片 imageLoader 开源的项目 不重复发明轮子

    15K10

    安卓基础干货(三):安卓数据库的学习

    ---- title: 安卓基础干货(三):安卓数据库的学习 copyright: true categories: 安卓基础干货 date: 2018-01-10 19:35:26 tags: [Android...BLOB(二进制对象)数据类型,也接受varchar(n)、char(n)、decimal(p,s) 等数据类型, SQLite最大的特点是你可以把各种类型的数据保存到任何字段中,而不用关心字段声明的数据类型是什么...例如:可以在Integer类型的字段中存放字符串,或者在布尔型字段中存放浮点数,或者在字符型字段中存放日期型值。...在android应用程序中创建按数据库的步骤: 1、写一个DBHelper,继承了SQLiteOpenHelper,重新写了父类的构造方法、onCreate、onUpGrade: //创建数据库 DBHelper...使用ArrayAdapter为listview填充数据的步骤: 1、在布局文件中添加ListView 2、在代码中初始化这个listview控件 3、调用listview.setAdapter()填充数据

    2.8K20

    安卓基础干货(十):安卓多媒体编程的学习

    多种媒体的综合。图片、音乐、视频。 计算机表示图形的方式 1、bmp 以高质量保存所有类型的图片,用于计算机。...每个像素点的颜色是一个RGB,使用6个十六进制的数值来表示。 文件头信息占用的数据大小。 体积比较大。 2、jpg 以良好的质量保存图片,用于计算机、电子邮件或网络。...解决办法:缩放图片加载到内存 步骤: 1、获得设备屏幕的分辨率; 2、得到原图的分辨率; 3、通过比较得到一个合适的比例值; 4、按照比例值缩放图片 5、把图片显示在imageview 缩放图片并加载到内存中...Environment.getExternalStorageDirectory()+"/lp.jpg", opts); //5、把图片显示在imageview iv.setImageBitmap(bm); } } 在内存中创建原图的副本...1 引入vitamio框架 以library形式引入 2 在布局中定义VideoView <io.vov.vitamio.widget.VideoView android:id="@+id

    1.4K10

    【安卓】在安卓中使用HTTP协议的最佳实践

    在安卓中使用HTTP协议的最佳实践 在开发安卓应用时,网络通信是一个不可或缺的方面。HTTP协议是许多应用程序数据交换的基础,因此了解如何正确地使用它对于确保应用的性能和安全性至关重要。...选择合适的HTTP客户端 安卓提供了多种HTTP客户端,包括HttpURLConnection、OkHttp和Retrofit等。每个客户端都有其优势和特点。...模块化存储器的设计: 在Android开发中,模块化存储器通常是指使用存储库模式来提取数据层,并将存储库类与ViewModel集成。这样可以显示离线缓存中的数据,并在现有应用中实现缓存。...这样可以更容易地管理不同部分应用程序中的网络请求。 结论 在安卓应用开发中,正确使用HTTP协议对于提供良好的用户体验和保护用户数据至关重要。...希望这篇文章能够帮助您理解在安卓中使用HTTP协议的重要性以及如何实现最佳实践。

    17710

    安卓系统usb调试在哪_安卓手机的usb调试

    大家好,又见面了,我是你们的朋友全栈君。 Android手机USB调试在哪?安卓手机如何打开USB调试模式?...如果我们要将安卓手机连接到电脑上,从而传输文件、下载应用或ROOT等,都需要打开手机的USB调试模式。...安卓系统的版本有很多,它们的打开方法也各不相同,下面给大家介绍各版本安卓手机打开USB调试模式的方法。...4、再返回设置菜单界面选择开发者者选项; 5、点击打开右上角的开关,即可打开 USB调试模式; 6、打开USB调试模式后,下拉手机通知栏,将手机上连接电脑的USB模式设置为“仅充电”模式或“媒体设备...上述便是安卓手机打开USB调试模式的方法,需要将手机连接电脑下载应用或干嘛的,可以按照小编描述的方法来打开USB调试模式。 版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。

    3.8K40
    领券