CN106648869B - A kind of intelligent terminal application switching method - Google Patents

A kind of intelligent terminal application switching method Download PDF

Info

Publication number
CN106648869B
CN106648869B CN201611218456.0A CN201611218456A CN106648869B CN 106648869 B CN106648869 B CN 106648869B CN 201611218456 A CN201611218456 A CN 201611218456A CN 106648869 B CN106648869 B CN 106648869B
Authority
CN
China
Prior art keywords
application
list
execute
nearest
intent
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201611218456.0A
Other languages
Chinese (zh)
Other versions
CN106648869A (en
Inventor
肖剑锋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
World (beijing) Network Technology Co Ltd
Original Assignee
World (beijing) Network Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by World (beijing) Network Technology Co Ltd filed Critical World (beijing) Network Technology Co Ltd
Priority to CN201611218456.0A priority Critical patent/CN106648869B/en
Publication of CN106648869A publication Critical patent/CN106648869A/en
Application granted granted Critical
Publication of CN106648869B publication Critical patent/CN106648869B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04817Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance using icons
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0489Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using dedicated keyboard keys or combinations thereof

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Stored Programmes (AREA)

Abstract

A kind of intelligent terminal application switching method obtains intelligent terminal system version number;Corresponding application process information is obtained according to system version number;It generates nearest list of application and nearest list of application can be used;Wherein the nearest list of application is for storing nearest application;It can be with nearest list of application for storing by filtered suitable application recently;The application process in nearest list of application is extracted, judges whether to meet judgment rule, if do not met, is filtered, is saved it in if meeting and nearest list of application can be used;When switching, newest background application is switched to foreground application;Foreground application is switched to background application simultaneously;When switching again, newest background application is switched to foreground application, while foreground application is switched to background application;It repeats to switch, realizes and be switched fast between two applications.

Description

A kind of intelligent terminal application switching method
Technical field
The invention belongs to intelligent terminal application fields, are related to a kind of method for carrying out application switching in an intelligent terminal.
Background technique
As intelligent terminal function is become stronger day by day, the application type supported gradually increases, and user is for different application Switching demand also gradually shows.For example, receiving a wechat when user plays game on line by intelligent terminal, it is sometimes desirable to Game is not interrupted, but wants to see wechat message in time.Under normal conditions, user can not be direct under interface Wechat message is browsed, user is needed to switch application can just check wechat message.Switching mode one: it clicks home(and is used to exit To desktop) key, subsequently into the desktop of intelligent terminal, selection wechat is clicked to enter in desktop, after finishing watching information, then point home (for being withdrawn into desktop) key, returns to desktop, finally game icon is selected to click the scene returned to just now.It can by analysis Know, this switching mode at least needs 3 steps to be operated, if the desktop of the intelligent terminal of user has multihead display Interface, and wechat and/or game are not located at the first screen of desktop and show, then operating procedure may be more, and it is time-consuming more, then have The important link that game on line may be missed brings bad user experience to user.Switching mode two: when interface is supported When pulling down notification bar, wechat notice is clicked by drop-down notification bar in interface, is checked, is finished watching subsequently into wechat Return key is clicked afterwards exits wechat, the interface before returning to, by analyzing it is found that this switching mode also at least needs 3 Step is above to be completed, and it is also possible to the operation of drop-down notification bar is not supported in current game application.Switching mode three: such as Fruit intelligent terminal supports nearest task key function, then can click nearest task key in interface, a task then occur Stack list therefrom selects wechat application (assuming that starting wechat before) to start, after the completion, then clicks nearest task key, selects Game in list, returns to interface.
Above-mentioned three kinds of switching modes mode that be intelligent terminal user most-often used when switching application, each other can be with It staggeredly carries out, such as enter wechat by pulling down notification bar, by pressing nearest task key Resume Mission interface, user can basis The operating habit of oneself is combined.But it combines in any case, all at least needs 3 steps that could complete application switching operation.
If being only to carry out single switching, user may not necessarily realize the inconvenience of operation, but if playing game on line During, wechat message is repeatedly received, and us may be needed to reply in time every time, that is, is likely to require same When play and game on line and chat, at this time if necessary to largely repeat above-mentioned several switching modes, bad user experience will be brought.
Similar scene is received there are also very much, such as when checking data or reading documents using browser or reader Short message, QQ or wechat are arrived, it is also desirable to carry out similar application switching step, after multi-pass operation, will equally bring bad User experience.
Summary of the invention
To overcome above-mentioned the deficiencies in the prior art, present applicant proposes a kind of intelligent terminal application switching method and system, It can rapidly switch between applications, it is characterised in that: obtain intelligent terminal system version number;According to system version number Obtain corresponding application process information;It generates nearest list of application and nearest list of application can be used;The wherein nearest application List is for storing nearest application;It can be with nearest list of application for storing by filtered suitable application recently;It extracts Application process in nearest list of application, judges whether to meet judgment rule, if do not met, be filtered, if met It then saves it in and nearest list of application can be used;When switching, newest background application is switched to foreground application;Foreground is answered simultaneously With being switched to background application;When switching again, newest background application is switched to foreground application, while foreground application is switched For background application;It repeats to switch, realizes and be switched fast between two applications.
Whether a preferred embodiment according to the present invention, the judgment rule are using being desktop application.According to this One preferred embodiment of invention when switching, in case of abnormal, then prompts " without changeable application ".It is according to the present invention One preferred embodiment, clicked suspended window button, double-click or long-pressing by way of realize application switching.
The above description is only an overview of the technical scheme of the present invention, in order to better understand the technical means of the present invention, And can be implemented in accordance with the contents of the specification, the following is a detailed description of the preferred embodiments of the present invention and the accompanying drawings.
Detailed description of the invention
Fig. 1 shows the intelligent terminal application switching method for having a specific embodiment of invention;
Fig. 2 shows the application switching schematic diagrames of a preferred embodiment according to the present invention;
The prompt user that Fig. 3 shows a specific embodiment according to the present invention opens the schematic diagram of permission;
Fig. 4 shows the application switching schematic diagram of a preferred embodiment according to the present invention;
Fig. 5-1 and Fig. 5-2 shows Android5.0 or less the system application of a specific embodiment according to the present invention Switching flow figure;
Fig. 6-1 and Fig. 6-2 shows the Android5.0 system application switching of a specific embodiment according to the present invention Flow chart;
Fig. 7-1 and Fig. 7-2 shows the Android5.0 system above application of a specific embodiment according to the present invention Switching flow figure.
Specific embodiment
It is of the invention to reach the technical means and efficacy that predetermined goal of the invention is taken further to illustrate, below in conjunction with Attached drawing and preferred embodiment, to a kind of its specific embodiment of intelligent terminal application switching method proposed according to the present invention, spy Sign and its effect, detailed description is as follows.In the following description, what different " embodiment " or " embodiment " referred to is not necessarily same One embodiment.In addition, the special characteristic, structure or feature in one or more embodiments can be combined by any suitable form.
Abbreviation and Key Term definition
Suspended window button: there is a circle or other graphic forms after switching, in screen in mobile device Virtual push button, it can arbitrarily drag to any position on screen, and can be suspended on most of application interface.
: Chinese is Android, is the operating system of a kind of freedom based on Linux and open source code, is mainly used for Mobile device by Google company and open mobile phone alliance leader and is developed such as smart phone and tablet computer.
: Handler is a message distribution object in Android.And message distribution, message loop is depended on, also It is Looper.In a thread, Looper blocks thread, and the composition that waits for the arrival of news circulation has message, is assigned to corresponding Handler, allows its further distribution processor.
The meaning of " intention, plan ".Intent mechanism is provided in Android to assist the interaction and communication between applying, Intent is responsible for the movement of once-through operation in application, movement is related to data, additional data is described, Android then basis The description of this Intent is responsible for finding corresponding component, Intent is passed to the component of calling, and completes the calling of component. Intent cannot be only used between application program, it can also be used to the friendship between Activity/Service inside application program Mutually.Therefore, Intent plays a part of a media mediation herein, the special relevant information for providing component and calling mutually, real Decoupling between existing caller and callee.
: can be understood as " context ": it is through entire application.It also will be understood that at " running environment ".It provides one Information required for a application is run, resource, system service etc..It again it will be understood that into " scene ", user's operation and system are handed over This mutual process is exactly a switching between scene, such as Activity, and Context is all can't do without in the starting etc. of service.
: be one of big component of Android tetra-, be figuratively exactly a container, inside place various controls (button, Text, check box etc.), it is formed the interface of software, Activity is visible, if any control is not added, Just as the blank forms in Windows.
As shown in Figures 2 and 4, switch two applications by way of operating suspended window button, suspended window button can hang It floats on any program, obtains the program and corresponding program icon of running background;Newly-built suspension windows, by described program icon It is shown in the suspension windows;When the program icon in the suspension windows detects enabled instruction, by described program icon Corresponding program is switched to front stage operation.The corresponding program icon of the application program of running background is shown in the form of suspension windows Show in screen, when program icon detects enabled instruction, the corresponding program of described program icon is switched to front stage operation.
When switching in this way, need to obtain the program and corresponding program icon of running background.Ability Field technique personnel know that android system version updating is very fast, and the system of newest publication is 7.1, different android systems Version difference is larger, and when exploitation needs to distinguish version using different modes to realize.Android 5.0 later system version In, when obtaining application message, after needing user's imparting that can just read using " having the right to check the application of service condition " permission Platform application message.In general, the application that user carried out operation will all record on backstage, except non-user is actively cleared up, or Intelligent terminal is just switched on, and background program not yet starts.When carrying out reference switching using aforesaid way, will at least have at 4 points not Foot: one, it not addresses how to obtain background application, and that application of backstage, because background application is often a column Table, it should need clearly to go out that specific type background application, that does not need to obtain, and such as should need desktop application It to be filtered out, while also not indicate system version difference, the method for acquisition is different;Two, need to obtain the figure of application The problem of marking, and it will be shown in program complexity in suspension windows, is not only increased, also bringing privacy leakage aspect;Three, It is not clear how to operate suspended window button to switch foreground application and background application, do not indicate how detection enabled instruction; Four, how to locate clearly in no background application and when suspended window button program does not have permission to read background application Reason.Clicking suspended window button at this time may be without any reaction, and user encounters such situation will be very vast and hazy, it is not known where goes out Problem is showed, user experience will have a greatly reduced quality.
A specific embodiment according to the present invention, for current different android system version, using different Method obtains current newest background application, and desktop application is filtered out, and is guaranteeing the application data got just Really, thus guarantee be switched fast it is accurate;Secondly, foreground application can be any type of application, and want before will being switched to The background application of platform is only non-desktop application, the foreground because switching to foreground for desktop application, before being equivalent to Using exiting, having entered backstage be can't see, and would be possible to generate illusion in user's use process, such switching is that do not have Meaning, it is therefore desirable to filter out desktop application;Again, it by implementing click action to suspended window button, will not be applied The limitation of scene can be realized because suspended window button can appear on any application in any window.And it uses Click such movement, meet user routine use habit;Furthermore, it is not necessary that additionally obtaining application icon, in this way Program complexity is not only reduced, the expense of Installed System Memory is saved, can also avoid the problem that privacy leakage;Finally, for rear Platform the application list is sky, or due to obtaining background application failure caused by not authorizing reading application message permission Deng, it should according to different situations to user to prompt accordingly, there is no any reaction after preventing operation button.
As shown in Fig. 2, showing the suspended window button of a preferred embodiment according to the present invention in circle, pass through click Current application can be switched to backstage by suspended window button, and open simultaneously a newest background application in backstage, to rise To the purpose for being switched fast application.
If at this moment there is many applications from the background, a newest background application is wechat, as shown in figure 4, at this moment clicking outstanding Then wechat application is called out after floating window button, and video display complete works application before will fall back on backstage, become newest backstage Using.If again tapping on suspended window button shown in Fig. 4, the application of video display complete works is called and arrives foreground, while wechat becomes For newest background application, as shown in Figure 2.
A specific embodiment according to the present invention provides a kind of intelligent terminal application switching method, obtains system version This number;Corresponding application process information is obtained according to system version number;Generate nearest list of application and available application column recently Table;Wherein the nearest list of application is for storing nearest application;It can be with nearest list of application for storing by filtered Suitable application recently;The application process in nearest list of application is extracted, judges whether to meet judgment rule, if do not met, It is then filtered, is saved it in if meeting and nearest list of application can be used;Newest background application is switched to foreground to answer With;Foreground application is switched to background application simultaneously;Switch again, newest background application is switched to foreground application.
Whether a specific embodiment according to the present invention, the judgment rule are using being desktop application.According to this One specific embodiment of invention when switching, in case of abnormal, then prompts user " without changeable application ".According to this hair A bright specific embodiment carries out application switching by suspended window button.
A specific embodiment according to the present invention, suspended window button therein are an ImageButton(picture controls Part) control.Pass through call android system WindowManager(window manager) provide addView method in system A window is added in interface manager, and sets the priority of this window newly added to A kind of attribute of system alert type of WindowManager.LayoutParams.TYPE_SYSTEM_ALERT() rank, this Its priority of sample is very high, so that it may be shown on most systems window, reach " suspension " in other windows it On purpose.
For the various action events of suspended window button, click event is easily handled, because itself is one Picture control, the OnClickListener(control for having system included click monitor), monitor triggers after clicking control, just Its onClick method can be called, monitor can call.It can also be by calling the onTouchEvent(of suspended window button to press Button is pressed, mobile, and lift action can trigger this event when occurring) method, it is indicated according to MotionEvent.ACTION_DOWN( Press movement) and MotionEvent.ACTION_UP(indicate lift action) different conditions realize.
Since the events such as needs will be clicked and be double-clicked, long-pressing distinguish, in a preferred embodiment of the present invention, adopt With latter approach, it is as follows to click implementation:
Using an integer variable mClickCount, its initial value is 0, in onTouchEvent method, often receives one Secondary MotionEvent.ACTION_DOWN message, just adds one for integer variable mClickCount, if then receiving one MotionEvent.ACTION_UP message, delay, which is sent a ClickPressedThread(, realizes the one of Runnable A class) object handled to current Handler, and delay time is 230 milliseconds, and (this value is that frame of reference is clicked and double-clicked Between time interval define), if be not received again by MotionEvent.ACTION_DOWN within this time and disappear Breath will be handled as once clicking;If be received again by, MotionEvent.ACTION_DOWN message explanation is current to be carried out It double-clicks or the click of more high reps, at this moment by double-clicking or other are clicked types of events and handle.
Then a preferred embodiment according to the present invention is adjusted by obtaining the Intent of newest background application starting It is a kind of using start-up mode that Intent.FLAG_ACTIVITY_NEW_TASK(once is set with addFlags method) attribute, then Call the startActivity (Intent intent) (a method of starting Activity) of Context that can start Background application.The difficult point that the present invention realizes is how to get newest background application.
The later version of system version 5.0 no longer directly externally provides the interface for obtaining background application, can only pass through Other modes in a disguised form obtain the data of background application, for example, by the UsageStatsManager of system using situation Service managerZ-HU, obtain system application uses track, then according to being ranked up using the time of track, to find Newest background application, but this method needs user's imparting present procedure permission that can just read data, it is therefore desirable to It is adapted to for such limitation.When user 5.0 or more type of android system version carry out application switching when, adjust first The authorization frame of android system out, for example, " usage amount data access " window is generally for Samsung mobile phone, then on it, We create a translucent masking-out, as shown in figure 3, and give to prompt, such as " find XXX application, be then turned on " passes through This mode gives user's prompt, and only after opening corresponding permission, we can just get the data of system, ability for he Realize the function being switched fast.
The mobile phone of certain model is to jump to window " having the right to check the application of service condition ", carries out priority assignation.With " make Usage data access " window is similar, and only the display Name of window is different.
Described above is to be directed to the case where 5.0 or more intelligent terminal of Android just will appear, below will be according to difference Android system version, determine how to find more recent application program.
A preferred embodiment according to the present invention, (i.e. for the intelligent terminal below of Android system version 5.0 System of the SDK version level less than 21), since Android5.0 system below mainly passes through calling GetRecentTasks () method of ActivityManager interface manager obtain front stage operation process and all backstages Process in the progress information of operation, and current each operation for being obtained by getRunningAppProcesses () method Details, newest non-desktop is then gone out by the above information filtering, and be effective background application, then borrowed It helps two lists recentTasks and availableRecentTasks to carry out unloading, is then judged by different situations Element in availableRecentTasks list which effectively, to get newest background application, finally calls The startActivity (Intent intent) (a method of starting Activity) of Context switches to foreground, And foreground application before can go to backstage automatically, become newest background application.If clicking switching again, and can will become most New background application is switched to front and back, and foreground application then becomes newest background application.Repeatedly, it is achieved that newest Background application and foreground application are mutually switched fast.
A preferred embodiment according to the present invention, for intelligent terminal (the i.e. SDK of Android system version 5.0 The system that version level is equal to 21), since the system of Android5.0 has not opened getRecentTasks () to the outside world just Method, so cannot be by this method come the application on the currently running and all backstage of inquiry system.For the spy of this system Different property, can only be by calling getRunningAppProcesses () method of ActivityManager interface manager to obtain Current all processes details, newest non-desktop is then gone out according to obtained information filtering, and after being effective Platform application, while unloading is carried out by two lists recentTasks and availableRecentTasks, then pass through difference The case where judge element in availableRecentTasks list that effectively, to get newest background application, The startActivity (Intent intent) (a method of starting Activity) of Context is finally called to switch it to To foreground, and foreground application before can go to backstage automatically, become newest background application.If clicking switching again, and meeting It will become newest background application and be switched to front and back, and foreground application then becomes newest background application.Repeatedly, it just realizes Newest background application and foreground application are mutually switched fast.
A preferred embodiment according to the present invention, for 5.0 or more Android system version intelligent terminal (i.e. The system that SDK version level is greater than 21), since not only getRecentTasks () method is not or not the system of Android5.0 or more Opening, getRunningAppProcesses () method is also no longer open, therefore the method before passing through can not obtain Get the nearest list of application of system.We use a kind of special method in this system, pass through system UsageStatsManager leads to using the available history information used to each application of situation manager It crosses and analyzes these record information, find currently running foreground process and newest background process, then call Context's StartActivity (Intent intent) (a method of starting Activity) switches to foreground, and before before Platform application can go to backstage automatically, become newest background application.If clicking switching again, and it can will become newest backstage and answer Before and after being switched to, and foreground application then becomes newest background application.Repeatedly, be achieved that newest background application and Foreground application is mutually switched fast.It should be noted that obtaining the authorization of system using manager the case where system, need to draw User is led to as shown in Figure 3 " usage amount data access " or the system set interface of the application of service condition " have the right check " It will be hanged in (it should be noted that different system display Names is different, but corresponding window class name is identical in program) Floating window application switch is opened just available to applicating history use information.
To achieve the above object, the present invention provides the detailed system version different using Android correspond to it is different Method realizes the method for being switched fast foreground application and newest background application.
Fig. 5-1 and Fig. 5-2 shows the detailed implementation process of Android5.0 or less system application switching.
: starting switching function: obtain the integer constant android.os.Build.VERSION.SDK_ for representing system version INT, judges whether its value is less than 21(21 and indicates Android5.0), it indicates to be Android5.0 system below when less than 21 System, starts corresponding switching function.
: two lists are defined, one is nearest list of application (recentTasks), another is available application column recently Table (availableRecentTasks), the element type in list is RecentTaskInfo: defining two list types Variable recentTasks and availableRecentTasks, list type are ArrayList<RecentTaskInfo>, column The each element of table is the variable of RecentTaskInfo type.Nearest list of application (recentTasks) is used to store to answer recently With;It can be used to store to answer by filtered suitable background process with nearest list of application (availableRecentTasks) With.
: call the getRunningAppProcesses method of ActivityManager interface manager to get The progress information of operation generates an interim process list: in ActivityManager interface manager GetRunningAppProcesses method can return to the progress information that current system is currently running.Interim process list is each Element is the variable of RunningAppProcessInfo type, it is stored with the details of each process, such as process title, Process ID, the information such as User ID.
: the element in this list is successively imported the variable of a HashMap type by poll interim process list In mapInfo: a HashMap<String, RunningAppProcessInfo>type HashMap are defined, if life Entitled mapInfo.Using the mode of circulation, the interim column that successively poll is returned by getRunningAppProcesses method Table, each element of interim process list and corresponding packet name is corresponding, it stores into HashMap variable mapInfo, wherein Entitled corresponding key value is wrapped, RunningAppProcessInfo element is value value.
: call the getRecentTasks (3,2) of ActivityManager interface manager, 3 opened recently Application program, and result is saved in nearest list of application (recentTasks): by ActivityManager intercellular canals 3 application programs that the getRecentTasks (3,2) of reason device is opened recently;It will be in open recently 3 application programs Not available application filter out, nearest list of application will be saved in by filtered suitable background process application (recentTasks) in;It is available most by the getRecentTasks (3,2) of ActivityManager interface manager The application closely opened, general mobile phone can see these list of application by the home key for the system of pressing.getRecentTasks(3, 2) there are two parameter, first parameter expression obtains the number at most applied from list of application, and second parameter indicates to obtain The mode of list of application is passed to 2 here, represents a system property RECENT_IGNORE_UNAVAILABLE(2), it indicates to obtain The data filtering taken falls not available application, and then obtained data are saved in nearest list of application (recentTasks). Notice that at most there are three element, the newest programs run of these element representations for nearest list of application (recentTasks) at this time.
: using circulation, poll is applied nearest list of application (recentTasks) recently: using circulation, it is nearest to start poll List of application (recentTasks), successively takes out each element.If recycling normal termination, S5018 is executed, otherwise, is continued Execute S507.
: currentElement is obtained, each element is RecentTaskInfo type, this type preserves operation process Details, getting the Intent: each element that corresponding background process is applied according to element baseIntent attribute is The data of RecentTaskInfo type, it is stored with the details of each background process application.It is different from RunningAppProcessInfo type, the content that it is stored is more richer, and realizes Parcelable interface, can be with It is saved in file as object data.The Intent that starting background process application is obtained by baseIntent attribute, passes through This Intent can be by background process application switching to foreground.
: judge whether the Intent of background process application is empty;A specific embodiment according to the present invention, can determine whether Whether Intent is empty, or other abnormal conditions occurs, generally will first be judged it before using Intent.Such as Fruit judging result be it is yes, then execute S509, otherwise execute S5010;
S509: continuing cycling through, and takes next element of nearest list of application (recentTasks): if background process is answered Intent is unreasonable, then needs to skip this wheel circulation, then obtain the next of nearest list of application (recentTasks) Element continues poll.
: judge whether the corresponding background process application of the Intent of background process application is desktop application: due to switching Background application does not include desktop, so the element currently got if it is desktop, is needed to filter this out, not handled it.Such as It is desktop application that fruit background process, which is applied, needs to filter this out, and returns to S509, if background process application is not desktop application Then continue to execute S5011;S5011: the packet name of corresponding background process application is obtained according to the Intent of background process application PackageName and ComponentName component object: if the Intent of background process application is not empty, corresponding backstage Process application then gets Intent pairs of background process application nor desktop application by getComponent () method The ComponentName component object answered, ComponentName is a class for realizing Parcelable, wherein preserving The class name information of packet name and starting class.
: whether the corresponding ComponentName component object of Intent for judging background process application is empty: judgement backstage Whether the corresponding ComponentName component object of Intent of process application is empty, because some applications may not start Information, such application are also invalid background application, we do not switch over it, need to filter this out.If it is determined that knot Fruit be it is yes, then background process application is filtered out, return S509, otherwise execute S5013;
S5013: HashMap variable mapInfo is inquired according to packet name packageName, it is corresponding to obtain each packet name RunningAppProcessInfo process details object: if the corresponding ComponentName of Intent of background process application Component object is not sky, illustrates that it is effective background application, and the Intent for obtaining background process application is corresponding Then the packet name of ComponentName component object storage passes through the HashMap variable of foundation before the inquiry of this packet name MapInfo finds the element of the corresponding RunningAppProcessInfo type of packet name, it is corresponding to get packet name RunningAppProcessInfo process details object.
: judge whether the corresponding RunningAppProcessInfo process details object of packet name is empty: to obtained packet name Corresponding RunningAppProcessInfo process details object is made whether to take next for empty judgement if it is sky Element continues cycling through, and then does not indicate to be an entity process details object to be empty.If it is judged that be it is yes, then execute S509, Otherwise S5015 is executed;
S5015: judge whether the corresponding RunningAppProcessInfo process of packet name is an effective process: after It is continuous to judge whether the corresponding RunningAppProcessInfo process of packet name is effective process.Judgement passes through corresponding Can ComponentName component object further inquire to obtain the ActivityInfo information data at interface, Apply Names etc., If can inquire to obtain, then it represents that the corresponding RunningAppProcessInfo process of packet name is an effective process.It is no Next element is then taken to continue cycling through.If it is judged that be it is no, then execute S509, otherwise execute S5016;
S5016: whether judgement can be used nearest list of application (availableRecentTasks) size less than 3: be followed Ring, the purpose of the nearest list of application of poll (recentTasks) are to take out effective data and be put into available application column recently In table (availableRecentTasks), so nearest list of application can be used in the insertion of suitable element (availableRecentTasks) before, it is necessary first to whether judge its size less than 3, i.e., the list stores up to two members Element.If it is judged that be it is yes, then execute S5017, otherwise execute S5018;
S5017: this RecentTaskInfo is added to, nearest list of application (availableRecentTasks) can be used In: requirement of nearest list of application (availableRecentTasks) element number less than 3 can be used if met, just by one A effective process, which is added to, can be used in nearest list of application (availableRecentTasks);It returns and executes S509.
: jump out or normal termination recycles: nearest list of application (recentTasks) poll is completed, or be can be used and answered recently Two elements have been got with list (availableRecentTasks), at this moment will exit circulation, no longer poll;It executes S5019。
: judgement can be used whether the element number of nearest list of application (availableRecentTasks) is 0: circulation exits Afterwards, whether the element number in available nearest list of application (availableRecentTasks) first judged is 0.If It is 0, then executes S5030 prompt user " without changeable application ", illustrate that no background process application can switch over, then hold Row S5032 exits function, terminates switching.
: judgement can be used whether the element number of nearest list of application (availableRecentTasks) is greater than 1: if can It is not equal to 0 with the element number in nearest list of application (availableRecentTasks), then continues to judge that number is It is no to be greater than 1.If being not more than 1, S5021 is continued to execute;If it is greater than 1, then S5023 is executed;
S5021: can be used nearest list of application (availableRecentTasks) only one element, obtain available nearest This element of list of application (availableRecentTasks) and first member of nearest list of application (recentTasks) Element: list element number is 1, i.e. only one element at this time, then this element is probably newest from the background and needs to switch That application.At this moment first element in nearest list of application (recentTasks) is taken out simultaneously, because of this list of elements Show the application program being currently running, i.e. foreground application.
: obtain first element of nearest list of application (recentTasks): if nearest list of application can be used (availableRecentTasks) element number is greater than 1, illustrates that there are two elements, at this moment obtains nearest list of application again (recentTasks) first element (foreground application) prepares further judgement.Pay attention to nearest list of application (recentTasks) first element is foreground application.
: whether the corresponding application of this element is desktop application: judging the first of nearest list of application (recentTasks) Whether the corresponding background process application of a element is desktop application, i.e. whether current foreground application is desktop application, or is understood Currently whether to be under table tops.If it is judged that be it is yes, then execute S5025, if it is judged that be it is no, then execute S5026;
S5024: judge whether the two elements are equal: nearest list of application can be used in judgement (availableRecentTasks) first element in only element and nearest list of application (recentTasks) is (preceding Platform application) it is whether equal, if equal, indicate that backstage is applied without other background process, only one foreground program, at this time There is no background process application that can switch, prompts user " without changeable application ", be then log out switching function.If it is judged that Be it is yes, then execute S5030;If it is judged that be it is no, then execute S5027;
S5025: first background process application that nearest list of application (availableRecentTasks) can be used is obtained Intent as starting Intent: if recently list of application (recentTasks) the corresponding backstage of first element into Cheng Yingyong is desktop application, then takes out first background process that nearest list of application (availableRecentTasks) can be used The Intent of application filters out desktop application in nearest list of application (availableRecentTasks) because can be used , the element inside it is all non-desktop application, so should take out a newest background application, i.e. first member at this time Element, the object as switching.
: acquirement can be used second background process of nearest list of application (availableRecentTasks) to apply Intent is as starting Intent: if first element of list of application (recentTasks) is not desktop application recently, By circulation before it is recognised that at this moment first element of nearest list of application (recentTasks) and available application recently First element of list (availableRecentTasks) is equal, and nearest list of application can be used so taking (availableRecentTasks) object of second element as switching.
: the only element of nearest list of application (availableRecentTasks) will be can be used as starting Intent: such as The only element and nearest list of application (recentTasks) of nearest list of application (availableRecentTasks) can be used in fruit In first element (foreground application) it is unequal, indicate foreground application and backstage it is newest application be not same application, then will This Intent element of nearest list of application (availableRecentTasks) can be used as starting Intent, prepared this Background process is switched to foreground.
: according to starting Intent, the startActivity method of Context is called to start this background process application: according to Different situations gets starting Intent, and the startActivity method of Context is called to start this background process, and preceding Platform process will become newest background process.
: startActivity method executes whether have an abnormal generation: there are be abnormal in executing handoff procedure Then situation is handled so needing to guarantee to capture to abnormal using the try-catch mechanism of java.If there is different Often occur, then executes S5030;If executing S5031 without exception;
S5030: prompt user " without changeable application ": in case of various the case where not being inconsistent hop algorithm, prompt user " without changeable application ".
If: no exceptions, then it represents that switch successfully.It can be seen that newest background process becomes foreground process, and Foreground process is switched to backstage, becomes newest background process.
: function exits, and terminates: switching executes completion, exits switching function.
Fig. 6-1 and 6-2 shows the detailed implementation process of Android5.0 system application switching.
: starting switching function: obtain the integer constant android.os.Build.VERSION.SDK_ for representing system version INT, judges whether it is equal to 21(21 corresponding A ndroid5.0 system), equal to the system that 21 expressions are Android5.0, starting Corresponding switching function.
: two lists are defined, one is nearest list of application recentTasks, another is that nearest list of application can be used AvailableRecentTasks, the element type in list is Intent: defining the variable of two list types RecentTasks and availableRecentTasks, list type are ArrayList<Intent>, and each element of list is The variable of Intent type.Nearest list of application recentTasks is used to store nearest application;List AvailableRecentTasks is used to store by filtered suitable background process application.
: call the getRunningAppProcesses method of ActivityManager interface manager to get The progress information of operation generates a temporary table: in ActivityManager interface manager GetRunningAppProcesses method can return to the progress information that current system is currently running.The each member of this temporary table Element is the variable of RunningAppProcessInfo type, it is stored with the details of each operation process, such as process name Claim, process ID, the information such as User ID.
: using circulation, poll temporary table: using circulation, starts poll temporary table, successively take out each element.Such as Fruit recycles normal termination, then executes S6014;
S605: obtaining currentElement, and each element is RunningAppProcessInfo type, this type saves There are the details of operation process, corresponding packet name is got according to element information: obtaining the currentElement in circulation, it is stored There are the details of each operation process, each element is the data of RunningAppProcessInfo type, is different from RecentTaskInfo type, the content that it is stored is opposite to simplify, and has process title, process ID, User ID etc., and realize Parcelable interface, can be used as object data and is saved in file.It can be obtained by processName process name attribute The process title of this application of starting is taken, this process title is generally indicated using packet name.
: judge the packet name of application program where whether packet name is equal to current suspended window: judge from The packet of application program where whether packet name obtained in the data of RunningAppProcessInfo type is equal to current suspended window Name, since it is desired that application program where suspended window is excluded from list.If the judgment is Yes, then S607 is executed;If sentenced It is no for breaking, then executes S608;
S607: continuing cycling through, and takes next element of temporary table: if the element got correspond to packet name be equal to work as front overhang The packet name of application program, illustrates that the element currently got is suspended window program, filters this out, continue cycling through, take where floating window Next element is handled.
: according to packet name information, pass through the getLaunchIntentForPackage of packet name manager PackageManager Method gets the Intent of starting background process application: having packet name, so that it may pass through the packet name manager of system The getLaunchIntentForPackage method of PackageManager inquires the corresponding starting background process of packet name and answers Intent.
: whether the Intent of the background process application judged is empty: judging what the background process got was applied Intent whether be it is empty because there is packet name, but not necessarily have the application program of startup interface, thus this be possible to for Sky is judged.If it is determined that being then to execute S607, if the judgment is No, then S6010 is executed;
S6010: judge the size of nearest list of application recentTasks whether less than 3: being recycled, poll temporarily arranges The purpose of table is to judge nearest list of application to take out suitable element and be put into nearest list of application recentTasks Whether the size of recentTasks indicates nearest list of application recentTasks store up to two elements less than 3.Such as Fruit is judged as YES, then executes S6011;If the judgment is No, then S6014 is executed;
S6011: the Intent for starting background process application is added in nearest list of application recentTasks: will be opened The Intent of dynamic application is added in nearest list of application recentTasks, prepares for subsequent judgement background application.
: by customized method, all desktop applications of inquiry system judge that the Intent of background process application is corresponding Background process application whether belong to some in all desktop applications, answered to judge whether background process application belongs to desktop With.If it is judged that be it is no, then execute S6013, if it is judged that be it is yes, then execute S607;
S6013: the Intent that background process is applied, which is added to, can be used nearest list of application In availableRecentTasks: if background process application is not belonging to desktop application, by the Intent of background process application Being saved in simultaneously can be used in nearest list of application availableRecentTasks.
: it jumps out or normal termination recycles: when the number in nearest list of application recentTasks is 3, or interim column Table circulation is completed, at this moment by end loop.Execute S6015;
S6015: judgement can be used whether the element number of nearest list of application availableRecentTasks is 0: circulation After exiting, whether the element number in available nearest list of application availableRecentTasks first judged is 0.Such as Fruit judging result be it is yes, then execute S6027, prompt user " without changeable application ", illustrate that no background application can be cut It changes;If it is judged that be it is no, then execute S6016, exit function, terminate switching;
S6016: judgement can be used whether the element number of nearest list of application availableRecentTasks is greater than 1: such as Fruit can be used the element number of nearest list of application availableRecentTasks to be greater than 1, illustrates that there are two elements, at this moment obtains again First element (foreground application) using nearest list of application recentTasks is taken, further judgement is prepared.Pay attention to recently First element of list of application recentTasks is foreground application.If it is judged that be it is no, then S6017 is executed, if sentenced Disconnected result be it is yes, then execute S6018;
S6017: can be used nearest only one element of list of application availableRecentTasks, and obtaining can be used answers recently With this element of list availableRecentTasks and first element of nearest list of application recentTasks: this The nearest list of application availableRecentTasks size of Shi Keyong is 1, only one element, then this element is likely to just It is newest that application for needing to switch in backstage.At this moment first in nearest list of application recentTasks is taken out simultaneously Element, because of the application program that this element representation is currently running, i.e. foreground application.Continue to execute S6019;
S6018: first element of nearest list of application recentTasks is obtained: if nearest list of application can be used The element number of availableRecentTasks is greater than 1, illustrates that there are two elements, at this moment obtains nearest list of application again First element (foreground application) of recentTasks, continues to execute S6021.Pay attention to nearest list of application recentTasks's First element is foreground application.
: judge whether the two elements are equal: nearest list of application availableRecentTasks can be used only in judgement Whether first element (foreground application) in one element and nearest list of application recentTasks be equal, if equal, indicates Backstage does not have other applications, only one foreground program can switch without background program at this time, prompts user's " nothing Changeable application ", is then log out switching function.If it is judged that be it is yes, then execute S6027;If it is judged that be it is no, then Execute S6020;
S6020: the only element of nearest list of application availableRecentTasks will be can be used as starting Intent: If can be used in the only element and nearest list of application recentTasks of nearest list of application availableRecentTasks First element (foreground application) it is unequal, indicate foreground application and backstage it is newest application be not same application, then may be used It uses this Intent element of nearest list of application availableRecentTasks as starting Intent, prepares this backstage Process switching is to foreground.Continue to execute S6024;
S6021: judge the application of first element of nearest list of application recentTasks corresponding background process whether be Whether the application of desktop application, i.e. current foreground is a desktop application, or is interpreted as current whether under table tops.If Judging result be it is no, then execute S6023, if it is judged that be it is yes, then execute S6022;
S6022: it obtains and can be used first element of nearest list of application availableRecentTasks as starting Intent: if the corresponding background process application of first element of list of application recentTasks is desktop application recently, First element that nearest list of application availableRecentTasks can be used is taken out, because nearest list of application can be used Desktop application is filtered out in availableRecentTasks, the element inside it is all non-desktop application, so A newest background application, i.e. first element, the object as switching should be taken out at this time.Continue to execute S6024;
S6023: it obtains and can be used second element of nearest list of application availableRecentTasks as starting Intent:, can be with by circulation before if first element of list of application recentTasks is not desktop application recently Know, at this moment first element of nearest list of application recentTasks and nearest list of application can be used First element of availableRecentTasks is equal, and nearest list of application can be used so taking Object of second element of availableRecentTasks as switching.Continue to execute S6024;
S6024: according to starting Intent, the startActivity method of Context is called to start starting intent corresponding Background process application, and foreground process will become newest background process.
: judge whether the execution of startActivity method has abnormal generation: different there are occurring in executing handoff procedure Then normal situation is handled so needing to guarantee to capture to abnormal using the try-catch mechanism of java.If Judging result be it is yes, then execute S6027;If it is judged that be it is no, then execute S6026;
S6026: if no exceptions, then it represents that switch successfully.It can be seen that newest background process become foreground into Journey, and foreground process is switched to backstage, becomes newest background process.
: prompt user " without changeable application ": in case of various the case where not being inconsistent hop algorithm, prompt user " can not Switching application ".
: function exits, and terminates: switching executes completion, exits switching function.
Fig. 7-1 and Fig. 7-2 shows the detailed implementation process of Android5.0 system above application switching.
: starting switching function: obtain the integer constant android.os.Build.VERSION.SDK_ for representing system version INT,
S702: judging whether it is greater than 21, judges current system version for Android5.0 system above when being greater than 21;
Android5.0 system above no longer externally provide getRecentTasks () method and GetRunningAppProcesses () method can not obtain foreground process and background process information by scheme before. So needing that precondition could be provided come the information of indirect gain to these processes using other special schemes for switching.
: the system of Android5.0 or more is built-in with one using situation manager UsageStatsManager, It is used to record the application message once run, and information data includes, using the starting time, using corresponding packet name, starting Class name etc. can be obtained by the application being currently running using the sequencing for starting runing time point by these information, The application that running background is crossed, each to apply corresponding packet name, the information such as starting class name just have realization fast after obtaining these information The precondition of speed switching.Firstly, the UsageStatsManager by system obtains system clothes using situation manager Be engaged in usagestats, then according to the queryUsageStats method of system service usagestats it is available to application Situation, due to the data that this file record is run each time, so there are many content, we only need to take its newest number of days According to being then saved into list listTasks.
: whether the process operating condition list listTasks judged is empty;A rights concerns are referred here to, Application for no authorized, this obtained list be certainly it is empty, if there is authorization, if time interval be 1 day, obtain Data will not be to be empty, as long as because program starting up, has in datagram.If it is judged that be it is yes, then Execute S705;If it is judged that be it is no, then execute S709;
S705: the system set interface of " having the right to check the application of service condition " is jumped to, and pops up one on this interface The lead-frame of a masking-out form shows some guidance texts, and guidance user, which opens, applies corresponding switch, and only switch is opened, Using just having permission the data read in system service usagestats: if obtained, list is empty, illustrates current application There is no permission to read the service condition of application, so needing to jump to the system setting circle of " having the right to check the application of service condition " Face, and the lead-frame of a masking-out form is popped up on this interface, show some guidance texts, guidance user opens this application Switch, only switch are opened, using just having permission the data read in system service usagestats.
: judge whether user opens using corresponding switch, since system does not provide corresponding interface externally, so QueryUsageStats method query information is continued to use, checks whether the list of return is empty.If it is judged that be it is yes, Then execute S707, if it is judged that be it is no, then execute S708;
S707: again according to the queryUsageStats method of system service usagestats get between be divided into one day Process operating condition list listTasks, if the queryUsageStats method according to system service usagestats obtains The process operating condition list listTasks that one day is divided between getting is not sky, illustrates that switch is opened, then executes S709.
If: it is not turned on using corresponding switch, then again after click, list listTasks is still sky, needs weight New prompt user: if list listTasks continues as sky, illustrating that user is not turned on switch, when entering next time, continues User is prompted, it is guided to turn on the switch.Continue to execute S705;
S709: using recycling, process is run feelings by each element in polling procedure operating condition list listTasks The system application of non-desktop removes in condition list listTasks: using endless form, starts the list of polling procedure operating condition Each element in listTasks removes the application of the system type in this list, and such application is that non-desktop is answered With that is, desktop application needs to retain;Continue to execute S7010.
: whether the element number for judging process operating condition list listTasks is 1: circulation is completed, and judgement finally obtains The element number of list listTasks whether be 1, when only one element, can be used as a kind of special circumstances to be located Reason.If it is judged that be it is yes, then execute S7011, if it is judged that be it is no, then execute S7013;
S7011: only one application of backstage at this time can switch, so directly switching this application at this time, sentence without remaking It is disconnected: if only one element of list listTasks, to illustrate that only one background application can switch over, therefore can be straight It connects and is switched to this background application, without remaking more judgements.
: the only element of process operating condition list listTasks is obtained, according to the process operating condition list of acquirement The packet name acquisition of information of the only element of listTasks to starting background process application Intent: after handover platform in application, It needs first to obtain starting and applies corresponding Intent, assure reason used here as PackageManager GetLaunchIntentForPackage () method obtains corresponding starting Intent by transmitting packet name parameter.Continue to hold Row S7020;
S7013: first element of process operating condition list listTasks is obtained, judges process operating condition list Whether first element of listTasks is desktop application: if the element number of listTasks list is greater than 1, taking out this First element of a list, and judge whether the corresponding application of this element is desktop application.This element is current at this time The application being currently running, i.e. foreground application.If it is judged that be it is yes, then execute S7015, if it is judged that be it is no, then hold Row S7014;
S7014: if first element of process operating condition list listTasks is not desktop application, setting mark Flag is equal to false: if first element of process operating condition list listTasks is not desktop application, being arranged one A mark flag is equal to false, indicates that first element of process operating condition list listTasks is not desktop application.After It is continuous to execute S7016;
S7015: if first element of process operating condition list listTasks is desktop application, setting mark Flag is equal to true: if first element of process operating condition list listTasks is desktop application, mark is arranged Flag is equal to true, indicates that first element of process operating condition list listTasks is desktop application.It continues to execute S7016;
S7016: using recycling, process is run feelings by each element in polling procedure operating condition list listTasks The application of table-top type in condition list listTasks removes: using circulation, starting each of poll listTasks list Element removes the application of the table-top type in this list.Continue to execute S7017;
S7017: whether judgement symbol flag is true: after the completion of circulation, start whether judgement symbol flag is equal to true, Indicate that foreground application is desktop application equal to true, equal to the common application that false expression is non-table name.If it is judged that being It is then to execute S7018;If it is judged that be it is no, then execute S7019;
S7018: first element of process operating condition list listTasks is obtained, according to process operating condition list Intent of the packet name acquisition of information of first element of listTasks to starting background process application: if it is desktop application, First element of listTasks list is then taken out, at this moment listTasks list filters out desktop application, so this Element is corresponding to apply certainly not desktop application.Then according to the packet name information of this element, pass through PackageManager packet GetLaunchIntentForPackage () method of management obtains corresponding starting and applies required starting Intent.Continue Execute S7020;
S7019: second element of process operating condition list listTasks is obtained, according to process operating condition list Intent of the packet name acquisition of information of second element of listTasks to starting background process application: judge if not table Face application, then first element of listTasks list at this time and first element of the list before filtering desktop application are same One element.At this moment need to take out target of second element of listTasks list as switching, because this element is newest Background application.Then according to the packet name information of this element, reason is assured by PackageManager GetLaunchIntentForPackage () method obtains corresponding starting and applies required starting Intent.It continues to execute S7020;
S7020: according to the Intent of starting background process application, the startActivity method of Context is called to start Background process application: the Intent of starting background process application is got according to different situations, calls Context's StartActivity method starts this background process, and foreground process will become newest background process.
: judge whether the execution of startActivity method has abnormal generation: different there are occurring in executing handoff procedure Then normal situation is handled so needing to guarantee to capture to abnormal using the try-catch mechanism of java.If Judging result is to have exception, then executes S7022, if it is judged that executing S7023 then to be without exception;
S7022: in case of abnormal conditions, then user " without changeable application " is prompted.
: no exceptions, it is believed that switch successfully;It can be seen that newest background process becomes foreground process, and it is preceding Platform process switching becomes newest background process to backstage.
: function exits, and terminates: switching executes completion, exits switching function.
By figure 5 above -1,5-2,6-1,6-2, detailed protocol described in 7-1,7-2 realize all systems of Android Version (Android5.0 is hereinafter, Android5.0, Android5.0 or more total system version cover) obtains newest backstage and answers With and the method that is switched to foreground, user can be called repeatedly by the distinct methods of not homologous ray, so that it may realize newest Background application and foreground application mutual switching, to realize newest background application and foreground in android system A set of solution is provided using being mutually switched fast.
A preferred embodiment according to the present invention, 5.0 or less machine of Android can pass through GetRunningTasks () method substitutes getRecentTasks () method and obtains currently running application, GetRunningTasks () method can return to List<RunningTaskInfo>list, this list is a packet The list for the task stack being currently running is contained, list items RunningTaskInfo saves the information of each application, can To obtain the element of the current list top, then pass through being currently running for the available current application of topActivity attribute Class name, so as to be started up, realize handoff functionality.
Another preferred embodiment according to the present invention can also realize nearest background application with before by other means The switching of platform application, such as is double-clicked, and three hit or long-pressing clicks suspended window button to realize.Can also by click suspended window by A suspension windows are unfolded in button, and a button is arranged in suspension windows, can also be switched recently by the method for clicking button Background application and foreground application, but a more operating procedure, it is convenient and quick not as good as direct operation button.
Being switched fast for both newest background application and foreground application is realized by suspended window button, and suspended window button can With on any window that suspends, user can operate in any program, unnecessary link is saved, when saving user Between;Secondly, only guaranteeing that the switching of two applications and other application are not related by carrying out an invention, it is ensured that limited It inside leaves, realizes that common two applications are switched fast;Background program is filtered, desktop application is removed, no It will lead to the switching of desktop application and common application, so that user be made to avoid generating the illusion on switching.Because ordinary user is not Desktop can be treated as application, if being currently entering desktop, user, which can think to apply, to be exited;Pass through calling system pair The proceeding method of the running background of outer offer come the background information that obtains, and by the program in direct-reduction background task stack come It realizes, current application will not be exited, subsequently into desktop, start another application, reduce handoff scenario, avoid consumption more The resources such as more Installed System Memories;Finally, this function is realized by clicking the method for suspended window button, keep function quick, It is easily responded, meets the operating habit for saying user mostly, improve the user experience that user applies this.
The above described is only a preferred embodiment of the present invention, be not intended to limit the present invention in any form, though So the present invention has been disclosed as a preferred embodiment, and however, it is not intended to limit the invention, any technology people for being familiar with this profession Member, without departing from the scope of the present invention, when the technology contents using the disclosure above make a little change or modification For the equivalent embodiment of equivalent variations, but anything that does not depart from the technical scheme of the invention content, according to the technical essence of the invention Any simple modification, equivalent change and modification to the above embodiments, all of which are still within the scope of the technical scheme of the invention.

Claims (6)

1. a kind of intelligent terminal application switching method suitable for Android5.0 or less system version, it is characterised in that:
S501: starting switching function obtains the integer constant android.os.Build.VERSION.SDK_ for representing system version INT judges that its value whether less than 21, starts corresponding switching function when less than 21;
S502: defining two lists, and one is nearest list of application (recentTasks), another is available application column recently Table (availableRecentTasks);Element type in list is RecentTaskInfo: defining two list types Variable recentTasks and availableRecentTasks, list type are ArrayList<RecentTaskInfo>, column The each element of table is the variable of RecentTaskInfo type;Wherein nearest list of application (recentTasks) is for storing most Nearly application;Can with nearest list of application (availableRecentTasks) for store by filtered suitable backstage into Cheng Yingyong;
S503: the getRunningAppProcesses method of ActivityManager interface manager is called to get The progress information of operation generates an interim process list: in ActivityManager interface manager GetRunningAppProcesses method can return to the progress information that current system is currently running;The interim process list Each element is the variable of RunningAppProcessInfo type, it is stored with the details of each process, details Including process title, process ID, User ID;
S504: the element in interim process list is successively imported the variable of a HashMap type by poll interim process list In mapInfo: defining a HashMap<String, RunningAppProcessInfo>type HashMap is named as mapInfo;Using the mode of circulation, successively poll is arranged by the interim process that getRunningAppProcesses method returns Table, each element of interim process list and corresponding packet name is corresponding, it stores into HashMap variable mapInfo, The middle entitled corresponding key value of packet, RunningAppProcessInfo element are value value;
S505: the getRecentTasks (3,2) of ActivityManager interface manager, 3 opened recently are called Application program, and will be saved in nearest list of application (recentTasks) by filtered suitable background process application: 3 application programs opened recently by the getRecentTasks (3,2) of ActivityManager interface manager; Not available application in open recently 3 application programs is filtered out, filtered suitable background process application will be passed through It is saved in nearest list of application (recentTasks);
S506: using circulation, the nearest list of application of poll (recentTasks): using circulation, start the nearest list of application of poll (recentTasks), each element is successively taken out;Circulation terminates, then executes S5018;Otherwise S507 is executed;
S507: currentElement is obtained, each element is RecentTaskInfo type, this type preserves operation process Details, getting the Intent: each element that corresponding background process is applied according to element baseIntent attribute is The data of RecentTaskInfo type, it is stored with the details of each background process application;Belonged to by baseIntent Property obtain starting background process application Intent, by acquisition starting background process application Intent can by backstage into Journey application switching is to foreground;
S508: judge whether the Intent of background process application is sky, then executes S509 if it is sky, continues if not for sky Execute S5010;
S509: continuing cycling through, and takes next element of nearest list of application (recentTasks): if background process application Intent is unreasonable, then needs to skip this wheel circulation, then obtain next member of nearest list of application (recentTasks) Element continues poll;
S5010: whether the Intent corresponding background process application for judging background process application is desktop application: if backstage into Cheng Yingyong is desktop application, needs to filter this out, and returns to S509, if background process application is not desktop application, is continued Execute S5011;
S5011: according to the Intent of background process application obtain corresponding background process application packet name packageName and ComponentName component object: if the Intent of background process application is not sky, corresponding background process application is also not Desktop application, the then Intent for getting background process application by getComponent () method are corresponding ComponentName component object, ComponentName is a class for realizing Parcelable, wherein preserving packet name With the class name information of starting class;
S5012: whether the corresponding ComponentName component object of Intent for judging background process application is sky, if it is Sky filters out background process application, returns to S509, continues to execute S5013 if not for sky;
S5013: HashMap variable mapInfo is inquired according to packet name packageName, it is corresponding to obtain each packet name RunningAppProcessInfo process details object: if the corresponding ComponentName of Intent of background process application Component object is not empty, the packet name of the corresponding ComponentName component object storage of the Intent of acquisition background process application, Then by the HashMap variable mapInfo established before the packet name inquiry of storage, it is corresponding to find packet name It is detailed to get the corresponding RunningAppProcessInfo process of packet name for the element of RunningAppProcessInfo type Feelings object;
S5014: judge whether the corresponding RunningAppProcessInfo process details object of packet name is empty: to obtained packet The corresponding RunningAppProcessInfo process details object of name is made whether to return for empty judgement if it is sky S509 takes next element to continue cycling through, and then does not indicate to be an entity process details object to be empty, continues to execute S5015;
S5015: judge whether the corresponding RunningAppProcessInfo process of packet name is an effective process: continuing to sentence Whether the disconnected corresponding RunningAppProcessInfo process of packet name is effective process;Judgement passes through corresponding Can ComponentName component object further be inquired to obtain the ActivityInfo information data at interface, if it is possible to look into Inquiry obtains, then it represents that the corresponding RunningAppProcessInfo process of packet name is an effective process, is continued to execute S5016;Otherwise returning to S509 takes next element to continue cycling through;
S5016: whether judgement can be used nearest list of application (availableRecentTasks) size less than 3, if it is, holding Row S5017;If it is not, then continuing to execute S5018;
S5017: if meeting can be used nearest list of application (availableRecentTasks) element number to want less than 3 It asks, an effective process, which is added to, can be used in nearest list of application (availableRecentTasks), return to S509;
S5018: jumping out or normal termination circulation: nearest list of application (recentTasks) poll is completed, or be can be used and answered recently Two elements have been got with list (availableRecentTasks), have exited circulation, no longer poll;Execute S5019;
S5019: judgement can be used whether the element number of nearest list of application (availableRecentTasks) is 0;If it is 0, then S5030 prompt user " without changeable application " is executed, illustrates that no background process application can switch over, is then log out Function terminates switching;If not being 0, S5020 is executed;
S5020: judgement can be used whether the element number of nearest list of application (availableRecentTasks) is greater than 1: if It is no, then execute S5021;If it is, executing S5022;
S5021: it if nearest list of application (availableRecentTasks) only one element can be used, obtains available nearest First of this element and nearest list of application (recentTasks) in list of application (availableRecentTasks) A element, continues to execute S5024;
S5022: first element of nearest list of application (recentTasks) is obtained;
S5023: judge whether the corresponding background process application of first element of nearest list of application (recentTasks) is table Face application;If it is, executing S5025;If it is not, then executing S5026;
S5024: judge whether the two elements are equal: nearest list of application (availableRecentTasks) can be used in judgement Whether first element in only element and nearest list of application (recentTasks) be equal, if equal, then it represents that backstage It is applied without other background process, only one foreground program can switch without background process application at this time, execute S5030 prompts user " without changeable application ";If unequal, S5027 is executed;
S5025: acquirement can be used first background process of nearest list of application (availableRecentTasks) to apply Intent is as starting Intent: if the corresponding background process of first element of list of application (recentTasks) recently Using being desktop application, then taking out can be used first background process of nearest list of application (availableRecentTasks) to answer Intent, the object as switching;
S5026: acquirement can be used second background process of nearest list of application (availableRecentTasks) to apply Intent is as starting Intent;
S5027: the only element of nearest list of application (availableRecentTasks) will be can be used as starting Intent;
S5028: according to starting Intent, the startActivity method of Context is called to start background process application;
S5029: judge whether the execution of startActivity method has abnormal generation;If there is exception, then S5030 is executed;If Without exception, then S5031 is executed;
S5030: prompt user " without changeable application ";
S5031: no exceptions, it is believed that switch successfully;
S5032: function exits, and terminates.
2. intelligent terminal application switching method according to claim 1, which is characterized in that carried out by suspended window button single It hits, double-click or the mode of long-pressing realizes application switching.
3. a kind of intelligent terminal application switching method suitable for Android5.0 edition system, it is characterised in that:
S601: starting switching function: the integer constant android.os.Build.VERSION.SDK_ for representing system version is obtained INT, judges whether it is equal to 21, starts corresponding switching function when being equal to 21;
S602: defining two lists, and one is nearest list of application recentTasks, another is that nearest list of application can be used AvailableRecentTasks, the element type in list is Intent: defining the variable of two list types RecentTasks and availableRecentTasks, list type are ArrayList<Intent>, and each element of list is The variable of Intent type;Nearest list of application recentTasks is for storing nearest application;Nearest list of application can be used AvailableRecentTasks passes through filtered suitable background process application for storing;
S603: the getRunningAppProcesses method of ActivityManager interface manager is called to get The progress information of operation generates a temporary table;The each element of temporary table is RunningAppProcessInfo type Variable, it is stored with the details of each operation process, and details include process title, process ID, User ID;
S604: using circulation, poll temporary table: using circulation, start poll temporary table, successively take out each element;Such as Fruit recycles normal termination, then executes S6014;
S605: currentElement is obtained, each element is RunningAppProcessInfo type, this type preserves fortune The details of traveling journey get corresponding packet name according to element information: obtaining the currentElement in circulation, it is stored with often The details of a operation process, each element are the data of RunningAppProcessInfo type;
S606: judge the packet name of application program where whether packet name is equal to current suspended window: judge from The packet of application program where whether packet name obtained in the data of RunningAppProcessInfo type is equal to current suspended window Name;If the judgment is Yes, then S607 is executed;If the judgment is No, then S608 is executed;
S607: continuing cycling through, and takes next element of temporary table: if the corresponding packet name of the element got is equal to current suspend The packet name of application program, illustrates that the element currently got is suspended window program, filters this out, continue cycling through, remove where window One element is handled;
S608: according to packet name information, pass through the getLaunchIntentForPackage of packet name manager PackageManager Method gets the Intent of starting background process application: by the packet name manager PackageManager's of system GetLaunchIntentForPackage inquires the Intent of the corresponding starting background process application of packet name;
Whether S609: the Intent of the background process application judged be empty: judging what the background process got was applied Whether Intent is sky, if it is determined that being then to execute S607, if the judgment is No, then executes S6010;
Whether S6010: judging the size of nearest list of application recentTasks less than 3: being recycled, poll temporary table Purpose be in order to take out suitable element and be put into nearest list of application recentTasks, and by suitable element insertion most Before nearly list of application recentTasks, it is necessary first to judge the size of nearest list of application recentTasks whether less than 3; If the judgment is Yes, then S6011 is executed;If the judgment is No, then S6014 is executed;
S6011: the Intent for starting background process application is added in nearest list of application recentTasks;
S6012: by customized method, all desktop applications of inquiry system judge Intent pairs of background process application Whether the background process application answered belongs to some in all desktop applications, to judge whether background process application belongs to desktop Using;If it is judged that be it is no, then execute S6013, if it is judged that be it is yes, then execute S607;
S6013: the Intent that background process is applied, which is added to, can be used in nearest list of application availableRecentTasks: If background process application is not belonging to desktop application, the Intent of background process application is saved in available application column recently simultaneously In table availableRecentTasks;
S6014: jumping out or normal termination circulation: when the number in nearest list of application recentTasks is 3, or it is interim List circulation is completed, at this moment by end loop;Execute S6015;
S6015: judgement can be used whether the element number of nearest list of application availableRecentTasks is 0;If it is 0, User " without changeable application " is then prompted, illustrates that no background application can switch over, is then log out function, terminate switching; If it is judged that be it is yes, then execute S6027;If it is judged that be it is no, then execute S6016;
S6016: judgement can be used whether the element number of nearest list of application availableRecentTasks is greater than 1: if can It is greater than 1 with the element number of nearest list of application availableRecentTasks, illustrates that there are two elements, at this moment obtain again most First element of nearly list of application recentTasks;If it is judged that be it is no, then S6017 is executed, if it is judged that being It is then to execute S6018;
S6017: can be used nearest only one element of list of application availableRecentTasks, obtain available application column recently First element of this element of table availableRecentTasks and nearest list of application recentTasks: at this time may be used It is 1 with nearest list of application availableRecentTasks size;It takes out in nearest list of application recentTasks simultaneously First element, continues to execute S6019;
S6018: first element of nearest list of application recentTasks is obtained: if nearest list of application can be used The element number of availableRecentTasks is greater than 1, obtains first element of nearest list of application recentTasks; Continue to execute S6021;
S6019: judge whether the two elements are equal: nearest list of application availableRecentTasks can be used only in judgement Whether first element in one element and nearest list of application recentTasks equal, if it is judged that be it is yes, then execute S6027;If it is judged that be it is no, then execute S6020;
S6020: the only element of nearest list of application availableRecentTasks will be can be used as starting Intent, continued Execute S6024;
S6021: judge whether the corresponding background process application of first element of nearest list of application recentTasks is desktop Using, if it is judged that be it is no, then execute S6023, if it is judged that be it is yes, then execute S6022;
S6022: it obtains and can be used first element of nearest list of application availableRecentTasks as starting Intent: If the corresponding background process application of first element of nearest list of application recentTasks is desktop application, taking-up can Object with first element of nearest list of application availableRecentTasks, as switching;Continue to execute S6024;
S6023: the object that can be used second element of nearest list of application availableRecentTasks as switching is obtained; Continue to execute S6024;
S6024: according to starting Intent, after calling the startActivity method starting starting intent of Context corresponding Platform process application: the starting Intent of starting background process application is got according to different situations, calls Context's StartActivity method starts background process application, and foreground process will become newest background process;
S6025: judge startActivity method execution whether have abnormal generation, if it is judged that be it is yes, then execute S6027;If it is judged that be it is no, then execute S6026;
S6026: no exceptions, it is believed that switch successfully: if no exceptions, then it represents that switch successfully;
S6027: prompt user " without changeable application ";
S6028: function exits, and terminates.
4. intelligent terminal application switching method according to claim 3, which is characterized in that carried out by suspended window button single It hits, double-click or the mode of long-pressing realizes application switching.
5. a kind of intelligent terminal application switching method suitable for Android5.0 system above version, it is characterised in that:
S701: starting switching function: the integer constant android.os.Build.VERSION.SDK_ for representing system version is obtained INT;
S702: judging whether it is greater than 21, judges current system version for Android5.0 system above when being greater than 21;
S703: obtaining system service usagestats using situation manager by the UsageStatsManager of system, Process operating condition list in one day is divided between getting according to the queryUsageStats method of system service usagestats listTasks;
Whether S704: the process operating condition list listTasks judged be empty: if it is judged that be it is yes, then execute S705;If it is judged that be it is no, then execute S709;
S705: the system set interface of " having the right to check the application of service condition " is jumped to, and is popped up in system set interface The lead-frame of one masking-out form, display guidance text, guidance user, which opens, applies corresponding switch, and only switch is opened, and is answered With just having permission the data read in system service usagestats;
S706: judging whether user opens using corresponding switch, uses queryUsageStats method query information, inspection Whether the list for looking into return is empty;If it is judged that be it is yes, then execute S707, if it is judged that be it is no, then execute S708;
S707: again according to the queryUsageStats method of system service usagestats get between be divided into one day into Journey operating condition list listTasks, if the queryUsageStats method according to system service usagestats is got Between be divided into one day process operating condition list listTasks be not it is empty, illustrate that switch is opened, then execute S709;
S708: if be not turned on using corresponding switch, then again after click, list listTasks is still sky, needs weight New prompt user, guides it to turn on the switch;Continue to execute S705;
S709: using recycling, each element in polling procedure operating condition list listTasks arranges process operating condition The system application of non-desktop removes in table listTasks;Continue to execute S7010;
S7010: whether the element number for judging process operating condition list listTasks is 1, if it is judged that be it is yes, then Execute S7011, if it is judged that be it is no, then execute S7013;
S7011: only one application of backstage at this time can switch, so directly switching this application at this time, without remaking judgement;
S7012: the only element of process operating condition list listTasks is obtained, according to the process operating condition list of acquirement Intent of the packet name acquisition of information of the only element of listTasks to starting background process application;Continue to execute S7020;
S7013: first element of process operating condition list listTasks is obtained, judges process operating condition list Whether first element of listTasks is desktop application;If it is judged that be it is yes, then execute S7015, if it is judged that Be it is no, then execute S7014;
S7014: if first element of process operating condition list listTasks is not desktop application, setting mark flag Equal to false: if first element of process operating condition list listTasks is not desktop application, a mark is arranged Will flag is equal to false, indicates that first element of process operating condition list listTasks is not desktop application;Continue to hold Row S7016;
S7015: if first element of process operating condition list listTasks is desktop application, setting mark flag etc. In true: if first element of process operating condition list listTasks is desktop application, mark flag is arranged and is equal to True indicates that first element of process operating condition list listTasks is desktop application, continues to execute S7016;
S7016: using recycling, each element in polling procedure operating condition list listTasks arranges process operating condition The application of table-top type in table listTasks removes;Continue to execute S7017;
S7017: whether judgement symbol flag is true: after the completion of circulation, start whether judgement symbol flag is equal to true, if Judging result be it is yes, then execute S7018;If it is judged that be it is no, then execute S7019;
S7018: first element of process operating condition list listTasks is obtained, according to process operating condition list Intent of the packet name acquisition of information of first element of listTasks to starting background process application;Continue to execute S7020;
S7019: second element of process operating condition list listTasks is obtained, according to process operating condition list Intent of the packet name acquisition of information of second element of listTasks to starting background process application;Continue to execute S7020;
S7020: according to the Intent of starting background process application, the startActivity method of Context is called to start backstage Process application: the Intent of starting background process application is got according to different situations;
S7021: judge whether the execution of startActivity method has abnormal generation;If it is judged that then being executed to there is exception S7022, if it is judged that executing S7023 then to be without exception;
S7022: it is abnormal to occur, it prompts user " without changeable application ": in case of abnormal conditions, then user being prompted " can not to cut Change application ";
S7023: no exceptions, it is believed that switch successfully: if no exceptions, then it represents that switch successfully;
S7024: function exits, and terminates.
6. intelligent terminal application switching method according to claim 5, which is characterized in that carried out by suspended window button single It hits, double-click or the mode of long-pressing realizes application switching.
CN201611218456.0A 2016-12-26 2016-12-26 A kind of intelligent terminal application switching method Active CN106648869B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611218456.0A CN106648869B (en) 2016-12-26 2016-12-26 A kind of intelligent terminal application switching method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611218456.0A CN106648869B (en) 2016-12-26 2016-12-26 A kind of intelligent terminal application switching method

Publications (2)

Publication Number Publication Date
CN106648869A CN106648869A (en) 2017-05-10
CN106648869B true CN106648869B (en) 2019-06-14

Family

ID=58828309

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611218456.0A Active CN106648869B (en) 2016-12-26 2016-12-26 A kind of intelligent terminal application switching method

Country Status (1)

Country Link
CN (1) CN106648869B (en)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107168609A (en) * 2017-06-06 2017-09-15 广东欧珀移动通信有限公司 status bar display method, device and terminal
CN107729098B (en) * 2017-09-25 2021-06-29 北京小米移动软件有限公司 User interface display method and device
CN107809676B (en) * 2017-11-03 2020-09-15 四川长虹电器股份有限公司 System and method for fast switching application of television
CN107885394A (en) * 2017-11-08 2018-04-06 广东小天才科技有限公司 Terminal equipment control method based on ultrasonic waves and terminal equipment
CN108055408B (en) * 2017-12-28 2019-12-24 维沃移动通信有限公司 Application program control method and mobile terminal
CN108255565B (en) * 2018-01-29 2020-07-17 维沃移动通信有限公司 Application pushing method and mobile terminal
CN110362355B (en) * 2018-04-02 2022-06-28 青岛海信移动通信技术股份有限公司 Application interface display method and device
GB2572611B (en) * 2018-04-05 2020-08-19 Sony Interactive Entertainment Europe Ltd Computer game processing
CN113312097A (en) * 2021-05-28 2021-08-27 杭州迈冲科技有限公司 Method and device for modifying starting program based on Android system

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105354029A (en) * 2015-11-04 2016-02-24 广州酷狗计算机科技有限公司 Application control method and apparatus

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6257424B2 (en) * 2014-04-09 2018-01-10 アルパイン株式会社 Information processing apparatus and computer program

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105354029A (en) * 2015-11-04 2016-02-24 广州酷狗计算机科技有限公司 Application control method and apparatus

Also Published As

Publication number Publication date
CN106648869A (en) 2017-05-10

Similar Documents

Publication Publication Date Title
CN106648869B (en) A kind of intelligent terminal application switching method
US11816305B2 (en) Interface display method and apparatus, and storage medium
CN105278799B (en) Interface switching method and device
CN107786730A (en) A kind of task management method and terminal
US9779228B2 (en) Touchscreen unlocking method and apparatus
CN100419684C (en) Method for setting up short-cut of programe module in software and starting method therefor
CN107357580A (en) A kind of method that guiding terminal user opens the miscellaneous function authority of application
WO2014194654A1 (en) Method and apparatus for page view switching
CN106959879A (en) A kind of control method and electronic equipment
CN107832105A (en) A kind of application program launching method, starter and computer-readable recording medium
CN106547451A (en) Open application program method more, open application programmer and terminal more
CN112286485B (en) Method and device for controlling application through voice, electronic equipment and storage medium
CN108287647B (en) Application running method and device
CN109147022A (en) VR data rendering method and system, computer equipment, computer storage medium
CN110347458A (en) Button control display method and device, storage medium and interactive intelligent panel
CN112882779A (en) Lock screen display control method and device, mobile terminal and storage medium
CN106648316A (en) Unlocking method and terminal
CN114997186B (en) Control method of translation control and electronic equipment
CN113282268B (en) Sound effect configuration method and device, storage medium and electronic equipment
CN105094576A (en) Switching method and device for application scenarios
CN112861044B (en) Page display control method and device, computer equipment and storage medium
CN113867583A (en) Message record display method and device and electronic equipment
CN106201182A (en) The method and device that application subfield is shown
CN105335169A (en) Method and apparatus for starting up communication in intelligent terminal
CN115061609B (en) Group chat operation processing method, processing device, electronic equipment and storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant