㈠ 安卓后台活动权限和iphone后台刷新权限有什么区别
后来没有真假之分,iOS和安卓俩家都是真后台,但是对程序滥用且强驻进程的处理机制不一样。
安卓的内存和进程管理和windows差不多,都是抢占式的,哪个软件先来就先划分,所以许多安卓软件都是无论如何都保留一个子进程在后台霸占的,再加上国内没有GMS服务,所以很多软件需要长轮询来推动消息的实时接收,所以这种做法基本上在国内是基础中的基础了。而且公版安卓因为可以使用GMS,而且很多软件都会通过谷歌play商店发布,有了一定的监管自然可以减少很多程序滥用后台的情况,但是谷歌自己也意识到了这个问题的严重性,会导致手机的性能问题和续航下降,所以在安卓7开始就才用了“睡死”机制,长时间不用的软件如果长时间霸占后台的话,直接睡死冻结。所以我之前的nexus 6P的微信会经常有长达十几分钟的时差,别人发微信或者视频通话给我,基本都不可能实时到达。后来因为国产软件装多了,那个手机打开相机都要好几秒,按下拍照都要十几秒,所以索性换iPhone X了。不是不想用安卓,而是在国内的软件环境是不适合使用安卓的,我根本不想和软件斗智斗勇,但是总归来说安卓还是一个很不错的系统的,而且我很怀念Google Assistance。
iOS的后台管理机制是出了名的变态,官方有提供进程常驻的API,但是一般到发布的时候都不会过审,除非你给出一个充分且毫无反击的理由给苹果,否则都是直接打回。而且自己有推送服务,所以程序也不需要长轮询。所以很好的解决了消息推送问题。而苹果的删后台机制其实我觉得和安卓的睡死机制差不多,都是冻结你当前的行为状态,释放出部分内存然后给其它应用,等你再打开那个应用再帮你还原回去,不过最近iOS 13的内存消耗是真的大,已经不是冻结内存了,直接杀掉了都...经常切出去再切回来就要看广告,明明个破软件首页也没啥要加载。我个人觉得iOS 13是个很失败的版本,问题频出...还是iOS 12的时候省心一点,不知道iOS 14会不会更好。
如果你说既然iOS 13都那么烂了还不如安卓,那我可以告诉你,就算iOS 13再烂也好过无法之地的安卓APP,真的是一群毒瘤。我情愿忍受重开都不肯忍受一呼百应、抢占内存,没事还要在背后搞小动作。毕竟iOS还有个软件商的爹在看管。
㈡ android中的Activity类是什么 能说的清楚点最好了~~~~
Activity就是形象的说就是一个容器,在里面放置各种控件(按钮,文本,复选框等),就形成了软件的界面~
Activity是可见的,如果不加任何控件的话,那么就像Windows中的空白窗体一样
通过{}来创建一个activity01的Activity类,如图所示即是一个Activity
㈢ 安卓应用程序不保留活动是什么意思
1、“安卓应用程序不保留活动”的含义:
返回桌面后,当前使用的程序将不会保留在后台,但会直接从内存中清除。当再次输入时,将不得不重新加载,而不是返回到最后一个出口的状态。
2、通常,后台程序也称为任务级程序,前台程序也称为事件处理级程序。 程序运行时,守护程序会检查每个任务的运行条件,并通过某种调度算法执行相应的操作。
(3)安卓活动是什么扩展阅读:
多重含义:
(1)后台实际上可以有很多含义。 例如,移动电话上的后台实际上类似于系统的最小化。 这只是隐藏和收缩的概念。 终端设备的背景并不完美。
(2)在网页上,在后台运行,有些会直接终止页面浏览,但浏览器仍然存在,其实后台的概念很简单,它仍然是,但它是隐形的,它仍在运行 ,后台线程就是这样,垃圾收集是通过后台线程进行的。
㈣ 安卓的activity是什么意思
android中主Activity是指应用的主界面。
Activity本身是用户能够操作的活动界面。通常我们所配置的android.intent.action.MAIN不一定是主界面,有可能是启动页,启动之后就销毁了,而另外开启一个主界面。
㈤ 什么是Activity,详细介绍Activity
Activity
首先,Activity是Android系统中的四大组件之一,可以用于显示View。Activity是一个与用记交互的系统模块,几乎所有的Activity都是和用户进行交互的,但是如果这样就能说Activity主要是用来显示View就不太正确了。
在深入了解Activity之前,我们先要知道一下MVC设计模式,在JAVAEE 中MVC设计模式已经很经典了,而且分的也比较清晰了,但是在Android中,好多人对MVC在Android开发中的应用不是很清楚,下面我就先来介绍一下MVC在Android开发中的应用:
M(Model 模型):Model是应用程序的主体部分,所有的业务逻辑都应该写在这里,在Android中Model层与JavaEE中的变化不大,如:对数据库的操作,对网络等的操作都放在该层(但不是说它们都放在同一个包中,可以分开放,但它们统称为Model层)。
V(View 视图):是应用程序中负责生成用户界面的部分,也是在整个MVC架构中用户唯一可以看到的一层,接收用户输入,显示处理结果;在Android应用中一般采用XML文件里德界面的描述,使用的时候可以非常方便的引入,当然也可以使用JavaScript+Html等方式作为View。
C(Controller控制层)android的控制层的重任就要落在众多的activity的肩上了,所以在这里就要建议大家不要在activity中写太多的代码,尽量能过activity交割Model业务逻辑层处理。
好了,在介绍过Android应用开发中的MVC架构后,我们就可以很明确的知道,在Android中Activity主要是用来做控制的,它可以选择要显示的View,也可以从View中获取数据然后把数据传给Model层进行处理,最后再来显示出处理结果。
介绍过Activity的主要作用后,那么我们就要详细说一下Activity了。
Activity生命周期图
Activity 的生命周期是被以下的函数控制的。
public class Activity extends ApplicationContext {
protected void onCreate(Bundle icicle);
protected void onStart();
protected void onRestart();
protected void onResume();
protected void onFreeze(Bundle outIcicle);
protected void onPause();
protected void onStop();
protected void onDestroy();
}
onCreate(Bundle) 函数是你进行初始化的地方,这个也是执行
setContentView(View)函数的地方,setContentView(View)函数可以传入一个由XML
编制的UI界面,可以使UI和具体实现完全分离。
onPause()函数是处理用户离开当前 Activity 的地方。更重要的是,任何在当前
Activity中的任何改变都要在这个函数中提交。
Activity有四种状态:
活动状态,当Activity处于Stack(栈)顶时,就是手机当前的现实屏幕,这是 Activity就
处于activity或者运行状态。
运行但是失去焦点,当Activity还处于运行状态时,但是屏幕是有另外一个Activity
处于文档处于焦点状态,当前的Activity就处于pause。
停止,当Activity被另一个Activity完全覆盖的时候,就被停止了,其实就是虽然在
运行,但是用户却看不见。
结束,当Activity处于pause或者stop时,系统可以结束 Activity,回收资源,这
是Activity就是处于结束状态了。
处于结束状态的是Activity,如果要使用户可见,只要重启才可以。
Activity的响应时间
当前Activity所在的线程为主线程,它的响应时间为5秒,如果在当前运行的Activity中进行耗时的操作且响应时间起过5秒,那么程序就会报ANR错误。所以,这也是不建议在Activity中写太多复杂代码的原因之一。
当然,有些代码只能写在Activity中,不然就运行不了(它们不是生命周期方法),比如你想要获得android系统或者硬件一的些信息,就必须在Activity中写出来,如果单独写一个工具类获得不了。
㈥ 求助:安卓系统,桌面日历右上角的活动是什么东西
上角的活动是
㈦ 安卓开发里面的activity是一个什么概念并且我们应该如何修改AndroidManifest.xml文件
activity意为“活动”,如果这个活动带有界面的话,则要让它加载对应的layout。跳转到这个活动就会让它个活动置于屏幕显示最前一层,activity是以堆栈的方式加到显示界面的。
修改AndroidManifest.xml,应当把所有的activity都写进去,并且要指定一个程序开始运行的mainActivity,不然编译运行时找不到activity报错,另外就是如果程序中要调用系统模块和协议的话,比如要用网络,或GPS等等,就要加上对应的协议,这个可以参考文档,启用什么协议用什么代码介绍的很详细的。
㈧ 安卓系统是由什么组成的
一般来说Android 程序主要由下列四个部分组成,分别是:活动(Activity) - 用于表现功能服务(Service) - 相当于后台运行的Activity广播接收器(BroadcastReceiver) - 用于接收广播意图(Intent)- 用于连接以上各个组件,并在其间传递消息
1 Activity 介绍
Android 中,Activity 是所有程序的根本,所有程序的流程都运行在Activity 之中,Activity可以算是开发者遇到的最频繁,也是Android 当中最基本的模块之一。在Android的程序当中,Activity 一般代表手机屏幕的一屏。如果把手机比作一个浏览器,那么Acitivity就相当于一个网页。在Activity 当中可以添加一些Button、Check box 等控件。可以看到Activity 的概念和网页的概念相当类似。 一般一个Android 应用是由多个Activity 组成的。这多个Activity 之间可以进行相互跳转,例如,按下一个Button 按钮后,可能会跳转到其他的Activity。和网页跳转稍微有些不一样的是,Activity 之间的跳转有可能返回值,例如,从Activity A 跳转到Activity B,那么当Activity B 运行结束的时候,有可能会给Activity A 一个返回值。这样做在很多时候是相当方便的。 当打开一个新的屏幕时,之前一个屏幕会被置为暂停状态,并且压入历史堆栈中。用户可以通过回退操作返回到以前打开过的屏幕。我们可以选择性的移除一些没有必要保留的屏幕,因为Android 会把每个应用的开始到当前的每一个屏幕保存在堆栈中。Activity 是由Android 系统进行维护的,它也有自己的生命周期,即它的一个产生、运行、销毁的一个周期,对于Activity,关键是其生命周期的把握,其次就是状态的保存和恢复(onSaveInstanceState onRestoreInstanceState),以及Activity 之间的跳转和数据传输(intent)。
2 Service 介绍
Service 是android 系统中的一种组件,它跟Activity 的级别差不多,但是他不能自己运行,只能后台运行,并且可以和其他组件进行交互。Service 是没有界面的长生命周期的代码。Service 是一种程序,它可以运行很长的时间,但是它却没有用户界面。这么说有点枯燥,我们来看个例子。打开一个音乐播放器的程序,这个时候若想上网了,那么,我们打开Android 的浏览器,这个时候虽然我们已经进入了浏览器这个程序,但是,歌曲的播放并没有停止,而是在后台继续一首接着一首的播放。其实这个播放就是由播放音乐的Service进行控制。当然这个播放音乐的Service也可以停止,例如,当播放列表里边的歌曲都结束,或者用户按下了停止音乐播放的快捷键等。service 可以在和多场合的应用中使用,比如播放多媒体的时候用户启动了其他Activity这个时候程序要在后台继续播放,比如检测SD 卡上文件的变化,再或者在后台记录你地理信息位置的改变等等,总之服务嘛,总是藏在后头的。
3 BroadcastReceiver 介绍
在Android 中,Broadcast 是一种广泛运用的在应用程序之间传输信息的机制。而BroadcastReceiver 是对发送出来的Broadcast进行过滤接受并响应的一类组件。可以使用BroadcastReceiver 来让应用对一个外部的事件做出响应。这是非常有意思的,例如,当电话呼入这个外部事件到来的时候,可以利用BroadcastReceiver 进行处理。例如,当下载一个程序成功完成的时候,仍然可以利用BroadcastReceiver 进行处理。BroadcastReceiver不能生成UI,也就是说对于用户来说不是透明的,用户是看不到的。BroadcastReceiver通过NotificationManager 来通知用户这些事情发生了。BroadcastReceiver 既可以在AndroidManifest.xml 中注册,也可以在运行时的代码中使用Context.registerReceiver()进行注册。只要是注册了,当事件来临的时候,即使程序没有启动,系统也在需要的时候启动程序。各种应用还可以通过使用Context.sendBroadcast () 将它们自己的intent broadcasts广播给其他应用程序。注册BroadcastReceiver有两种方式:
4 Intent 介绍
Intent 是一个将要执行的动作的抽象的描述,一般来说是作为参数来使用,由Intent来协助完成android 各个组件之间的通讯。Intent 负责对应用中一次操作的动作、动作涉及数据、附加数据进行描述,Android 则根据此Intent 的描述,负责找到对应的组件,将Intent 传递给调用的组件,并完成组件的调用。因此,Intent 在这里起着一个媒体中介的作用,专门提供组件互相调用的相关信息,实现调用者与被调用者之间的解耦。例如,在一个联系人维护的应用中,当我们在一个联系人列表屏幕(假设对应的Activity 为listActivity)上,点击某个联系人后,希望能够跳出此联系人的详细信息屏幕(假设对应的Activity为detailActivity)。为了实现这个目的,listActivity需要构造一个Intent,这个Intent 用于告诉系统,我们要做"查看"动作,此动作对应的查看对象是"某联系人",然后调用startActivity(Intent intent),将构造的Intent 传入,系统会根据此Intent 中的描述,到ManiFest中找到满足此Intent 要求的Activity,系统会调用找到的Activity,即为detailActivity,最终传入Intent,detailActivity 则会根据此Intent中的描述,执行相应的操作。Intent 主要是用来启动其他的activity 或者service,所以可以将intent 理解成activity 之间的粘合剂。Intent具体有一下3 种形式: 通过startActivity 方法来启动一个新的Activity; 通过broadcast Intent 机制可以将一个Intent 发送给任何对这个Intent 感兴趣的BroadcastReceiver; 通过startService (Intent) 或bindService(Intent,ServiceConnection,int) 来和后台的Service 进行交互。[
㈨ 安卓手机“不保留活动”和“不允许后台进程”是什么意思
不保留活动指的是你手机所有程序切换后不保留,比方说你用扣扣然后去发短信,那么系统就会关闭扣扣,你再用扣扣就重新打开,重新加载缓存。不保留后台进程中后台进程限制的是缓存里的进程,而手机运行系统不可能不存在后台运行。
android的应用在被切换到后台时,它其实已经被暂停了,并不会消耗cpu资源,只保留了运行状态。所以为什么有的程序切出去重进会到主界面。
但是,一个程序如果想要在后台处理些东西,如音乐播放,它就会开启一个服务。服务可在后台持续运行,所以在后台耗电的也只有带服务的应用了。这个在进程管理软件里能看到,标签是service。至于广播什么的我就不涉及了。
所以没有带服务的应用在后台是完全不耗电的,没有必要关闭。重启后才会变回标准限制,不用管的。
安卓(Android)是一种基于Linux内核(不包含GNU组件)的自由及开放源代码的操作系统。主要使用于移动设备,如智能手机和平板电脑,由美国Google公司和开放手机联盟领导及开发。Android操作系统最初由Andy Rubin开发,主要支持手机。
2005年8月由Google收购注资。2007年11月,Google与84家硬件制造商、软件开发商及电信营运商组建开放手机联盟共同研发改良Android系统。随后Google以Apache开源许可证的授权方式,发布了Android的源代码。
第一部Android智能手机发布于2008年10月。Android逐渐扩展到平板电脑及其他领域上,如电视、数码相机、游戏机、智能手表等。2011年第一季度,Android在全球的市场份额首次超过塞班系统,跃居全球第一。
2013年的第四季度,Android平台手机的全球市场份额已经达到78.1%。2013年09月24日谷歌开发的操作系统Android在迎来了5岁生日,全世界采用这款系统的设备数量已经达到10亿台。
㈩ 安卓手机不保留活动是否要开启
不要开启,保留比较好。首先解释一下这个“活动”是什么意思,“活动”是Android4大组件中的Activity的中文翻译,我觉得这个翻译有点生硬,小白可以这么理解,Activity就是APP中的页面,比如知乎的首页、直播间页面,设置页面等等。
那么“不保留活动”是什么意思呢?
就是我从知乎APP的首页点进去直播间页面的时候,系统会把首页给回收掉以释放内存。当我从直播间页面返回的时候,系统会重新创建首页并恢复之前的状态。
这里要注意的是,恢复之前的状态是需要开发者在代码中进行实现的,如果开发者不进行相应的逻辑处理或者开发的时候数据传递的方式不规范,是有崩溃的风险的。
现在是2021年,以我们现在的手机配置来说,你觉得回收前面这一个页面的内存,然后返回的时候重新创建会更好吗?