[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

CN111143089A - Method and device for calling third-party library dynamic lifting authority by application program - Google Patents

Method and device for calling third-party library dynamic lifting authority by application program Download PDF

Info

Publication number
CN111143089A
CN111143089A CN201911336815.6A CN201911336815A CN111143089A CN 111143089 A CN111143089 A CN 111143089A CN 201911336815 A CN201911336815 A CN 201911336815A CN 111143089 A CN111143089 A CN 111143089A
Authority
CN
China
Prior art keywords
module
application
target
authority
selection
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.)
Granted
Application number
CN201911336815.6A
Other languages
Chinese (zh)
Other versions
CN111143089B (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.)
Feitian Technologies Co Ltd
Original Assignee
Feitian Technologies 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 Feitian Technologies Co Ltd filed Critical Feitian Technologies Co Ltd
Priority to CN201911336815.6A priority Critical patent/CN111143089B/en
Publication of CN111143089A publication Critical patent/CN111143089A/en
Application granted granted Critical
Publication of CN111143089B publication Critical patent/CN111143089B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/54Interprogram communication
    • G06F9/547Remote procedure calls [RPC]; Web services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • G06F21/121Restricting unauthorised execution of programs

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Computer Hardware Design (AREA)
  • Stored Programmes (AREA)
  • Storage Device Security (AREA)

Abstract

The invention discloses a method for calling a third-party library to dynamically promote authority by an application program, which comprises the steps of authorizing a target authority when judging that the target authority is not in an authorized state, popping up a selection frame, waiting for a user to select the selection frame, detecting whether the state of the target authority is full authorization or not at intervals of first preset time, and realizing dynamic promotion of the authority by the application program which can normally use the target authority after the user selects the authorization; if the application target authority is not called for the first time and the previous time is selected to be forbidden and the next time is selected to be not inquired any more, a setting dialog box is popped up to prompt the user to manually set and carry out authorization operation.

Description

Method and device for calling third-party library dynamic lifting authority by application program
Technical Field
The invention relates to the field of application programs, in particular to a method and a device for calling a third-party library to dynamically improve authority by an application program.
Background
The permission of the application before the Android6.0 is completely authorized during installation, and the application program does not need to inquire a user during operation. The Android6.0 or higher version classifies the permissions into common permissions and important permissions, the common permissions comprise network access, WiFi (wireless fidelity) states, volume setting and the like, the risk of privacy or other application operations of a user is low, the permissions are granted during application installation, and the user is not queried during operation; the important authority refers to that the operation of data stored by a user or other applications is greatly influenced, such as reading an address book, reading and writing memory data, obtaining the position of the user and the like, and the authority related to the privacy of the user is manually authorized according to the requirement of the user during operation. In order to improve development efficiency, reduce development cost or integrate a third-party product, a developer introduces a third-party library module with a corresponding function into an application, but cannot acquire the state of the user click right in the third-party library, so that dynamic promotion of the right cannot be realized.
Disclosure of Invention
The invention aims to overcome the defects of the prior art and provides a method for calling a third-party library to dynamically raise the authority by an application program.
The invention provides a method for calling a third-party library to dynamically improve authority by an application program, which comprises the following steps:
step 101: the third-party library receives a context transmitted by an application program and acquires at least one target authority;
step 102: judging whether all the target permissions are in an authorized state according to the context, if so, ending, otherwise, executing the step 103;
step 103: judging whether the application target authority is called for the first time, if so, executing the step 104, otherwise, executing the step 108;
step 104: applying for the target authority according to the context, and popping up a selection box by the system;
step 105: waiting for the user to select the selection frame;
step 106: detecting whether the target permission is authorized at intervals of first preset time, if so, the application program can normally use the target permission, otherwise, executing the step 107;
step 107: judging whether the detection time exceeds a second preset time, if so, overtime is reached, and if not, returning to the step 106;
step 108: and judging whether the previous selection is forbidden and the next selection is not inquired any more, if so, popping up a setting dialog box, and prompting the user to manually set authorization operation, otherwise, executing the step 104.
The invention also provides a device for calling the third-party library to dynamically improve the authority by the application program, which comprises the following steps:
the receiving and obtaining module is used for receiving the context transmitted by the application program and obtaining at least one target authority;
the first judgment module is used for judging whether all the target authorities are in the authorization state according to the context, if so, the process is finished, otherwise, the second judgment module is triggered;
the second judging module is used for judging whether the application target authority is called for the first time, if so, the first application module is triggered, and if not, the fourth judging module is triggered;
the first application module is used for applying for the target authority according to the context and popping up a selection box by the system;
the first waiting selection module is used for waiting for the selection of the selection frame by the user;
the first detection module is used for detecting whether the target permission is authorized at intervals of first preset time, if so, the application program can normally use the target permission, and otherwise, the third judgment module is triggered;
the third judging module is used for judging whether the detection time exceeds second preset time, if yes, the detection time is overtime and is ended, otherwise, the first detecting module is triggered;
the fourth judging module is used for judging whether the previous selection is forbidden and the next selection is not inquired any more, if so, the first setting module is triggered, and if not, the first application module is triggered;
the first setting module is used for popping up a setting dialog box and prompting a user to manually set for authorization operation.
The present invention also provides an electronic device, comprising: a processor and a memory;
the memory is used for storing operation instructions;
and the processor is used for executing the method for calling the third-party library to dynamically upgrade the authority by calling the operation instruction.
The invention also provides a computer-readable storage medium for storing computer instructions, which when run on a computer, make the computer execute the method for calling the third-party library to dynamically raise the authority.
Compared with the prior art, the invention has the following advantages:
the invention provides a method for calling a third-party library to dynamically promote authority by an application program, which comprises the steps of authorizing a target authority when judging that the target authority is not in an authorized state, popping up a selection frame, waiting for a user to select the selection frame, detecting whether the state of the target authority is full authorization or not at intervals of first preset time, and realizing dynamic promotion of the authority by the application program which can normally use the target authority after the user selects the authorization; if the application target authority is not called for the first time and the previous time is selected to be forbidden and the next time is selected to be not inquired any more, a setting dialog box is popped up to prompt the user to manually set and carry out authorization operation.
Drawings
Fig. 1 is a flowchart of a method for an application program to invoke a third-party library to dynamically raise permissions according to an embodiment of the present invention;
fig. 2 is a flowchart of a method for an application program to invoke a third-party library to dynamically raise permissions according to a second embodiment of the present invention;
fig. 3 is a flowchart of a method for an application program to invoke a third-party library to dynamically raise permissions according to a third embodiment of the present invention;
fig. 4 is a flowchart of a method for an application program to invoke a third-party library to dynamically raise permissions according to a fourth embodiment of the present invention;
fig. 5 is a block diagram illustrating a setting that an application program invokes a third-party library to dynamically elevate permissions according to a fifth embodiment of the present invention;
fig. 6 is a schematic structural diagram of an electronic device for an application program to invoke a third-party library to dynamically raise permissions, according to a sixth embodiment of the present invention.
Detailed Description
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
Example one
An embodiment of the present invention provides a method for an application program to invoke a third-party library to dynamically raise an authority, as shown in fig. 1, where the method includes:
step 101: the third-party library receives a context transmitted by an application program and acquires at least one target authority;
in particular, context is an interface to global information about the application environment, is an abstract class that implements what is provided by the android system, context allows access to application-specific resources and classes, and calls to application-level operations (e.g., launch activities, broadcast and receive intents, etc.);
the target authority refers to the authority used for privacy information or causing adverse effect on other application programs when the application programs run;
specifically, the target authority includes positioning, reading an address book, reading and writing memory data and the like;
step 102: judging whether the target authority is in an authorized state according to the context, if so, ending, otherwise, executing the step 103;
in this embodiment, step 102 specifically includes: judging whether the target authority is in an authorized state according to the context calling authority detection interface, if so, ending, otherwise, executing the step 103;
specifically, the PERMISSION detection interface checkSelfPermission () judges whether the target PERMISSION is in an authorized state, and if the return value is PERMISSION _ GRANTED, the target PERMISSION is in the authorized state, and the process is ended; if the return value is PERMISSION _ DENIED, the target authority is in the prohibited state, and step 103 is executed;
specifically, the method further includes, between step 101 and step 102:
step a 1: judging whether the level of the application programming interface is smaller than a first preset value, if so, ending, otherwise, executing the step a 2;
specifically, the first preset value is 23;
specifically, if the application programming interface level (API level) is less than a first preset value, the operating system is an Android version of less than 6.0, and does not need to dynamically apply for the permission;
step a 2: judging whether the version of the software development kit is smaller than a first preset value, if so, ending, otherwise, executing the step 102;
specifically, if the software development kit version (targetSdkVersion) is smaller than the first preset value, the version of the compiled application program loading library is below android6.0, and the process is ended, otherwise, the step 102 is executed;
specifically, the sequence of the step a1 and the step a2 can be switched, that is, the version of the software development kit can be judged after the level of the application programming interface is judged, or the level of the application programming interface can be judged after the version of the software development kit is judged;
step 103: judging whether the application target authority is called for the first time, if so, executing the step 104, otherwise, executing the step 108;
specifically, whether the application target authority is called for the first time is judged according to the flag bit, if the flag bit is true, step 104 is executed, and if the flag bit is false, step 108 is executed;
step 104: applying for the target authority according to the context, and popping up a selection box by the system;
specifically, a request permissions () target permission of a calling application permission interface is applied according to the context, and a selection frame is popped up by the system;
optionally, step 104 further comprises setting the flag location to true;
a first parameter permission in an application permission interface (String [ ] permissions, int request code) is a target permission to be applied, and a second parameter request code is a permission request code;
optionally, in this embodiment, step 104 specifically includes:
step 104-1: judging whether the number of the target authorities is larger than a second preset value or not, if so, executing a step 104-2, otherwise, executing a step 104-3;
specifically, the second preset value is 1;
step 104-2: applying for the multi-target authority according to the context, and popping up a selection frame by the system;
specifically, an application authority interface requestPermissions () is called according to the context to apply for the multi-target authority, and the system pops up a selection frame:
requests permissions (String [ ] { authority.
Step 104-3: applying for the single-target permission according to the context, and popping up a selection box by the system;
specifically, the single-target authority is applied according to the context, and the system pops up a selection box:
requests permissions (String [ ] management.
Step 105: waiting for the user to select the selection frame;
specifically, the user is waited to select the selection frame, and the selection frame has two options of authorization and prohibition and a check option which is not queried any more next time;
step 106: detecting whether the target permission is authorized at intervals of first preset time, if so, the application program can normally use the target permission, otherwise, executing the step 107;
specifically, the first preset time is 1 s;
specifically, an authority detection interface checkSelfPermission (requestPermissions) is used every first preset time to detect whether an authority application interface requestPermissions () is in an authorized state, if a return value is PERMISSION _ GRANTED, a target authority is in an authorized state, and the authority is successfully promoted; if the return value is PERMISSION _ DENIED, the target authority is in the forbidden state
Step 107: judging whether the detection time exceeds a second preset time, if so, overtime is reached, and if not, returning to the step 106;
specifically, the second preset time is 6 s;
specifically, if the detection time exceeds 6s, the applied target authority is not in a full authorization state, and a user needs to be prompted about which target authorities are authorized and which authorities are not authorized;
in this embodiment, determining whether the detection time exceeds a second preset time, if yes, the detection time is overtime, and ending includes two cases: one situation is that the user clicks forbidding, the permission detection interface checkSelfPermission () is used for detecting a forbidding state, at this time, whether the analysis selection frame is selected by the user is not required any more next time, and if the analysis selection frame is selected by the user, the return value of the shouldShowRequestPermissionRationale () which should be displayed and requested is set as false; if the user does not check the next inquiry, setting the return value of the function shouldshowrequestpermission () to be displayed and requested as true;
another situation is that the user has not made a selection;
step 108: judging whether the previous selection is forbidden and the next selection is not inquired any more, if so, popping up a setting dialog box, and prompting a user to manually set authorization operation, otherwise, executing the step 104;
specifically, whether prohibition is selected last time or not is judged according to the reason function of permission to be requested to be displayed, and the next inquiry is not carried out after check;
in particular, e.g. requiring permission reason functions to be displayed
If the return value of the shouldshowrequestpermissionangle () is false, the last time is selected to be forbidden and the next time is selected not to inquire any more, a setting dialog box pops up, and a user is prompted to manually set authorization operation;
if the return value of the request permission reason function shouldshowsrequestpermission ratio () should be displayed as "true", the prohibition was selected last time, but the next inquiry is not made again without being checked, and step 104 is executed.
Example two
An embodiment of the present invention provides a method for an application program to invoke a third-party library to dynamically raise an authority, as shown in fig. 2, where the method includes:
step 201: the third-party library receives a context transmitted by an application program and acquires at least one target authority;
in particular, context is an interface to global information about the application environment, is an abstract class that implements what is provided by the android system, context allows access to application-specific resources and classes, and calls to application-level operations (e.g., launch activities, broadcast and receive intents, etc.);
the target authority refers to the authority used for privacy information or causing adverse effect on other application programs when the application programs run;
specifically, the target authority includes positioning, reading an address book, reading and writing memory data and the like;
step 202: judging whether the target authority is in an authorized state according to the context, if so, ending, otherwise, executing the step 203;
in this embodiment, step 202 specifically includes: judging whether the target authority is in an authorized state according to the context calling authority detection interface, if so, ending, otherwise, executing the step 203;
specifically, the PERMISSION detection interface checkSelfPermission () judges whether the target PERMISSION is in an authorized state, and if the return value is PERMISSION _ GRANTED, the target PERMISSION is in the authorized state, and the process is ended; if the return value is PERMISSION _ DENIED and the target authority is in the prohibited state, go to step 203;
specifically, the method further includes, between step 201 and step 202:
step b 1: judging whether the level of the application programming interface is smaller than a first preset value, if so, ending, otherwise, executing the step b 2;
specifically, the first preset value is 23;
specifically, if the application programming interface level (API level) is less than a first preset value, the operating system is an Android version of less than 6.0, and does not need to dynamically apply for the permission;
step b 2: judging whether the version of the software development kit is smaller than a first preset value, if so, ending, otherwise, executing the step 202;
specifically, if the software development kit version (targetSdkVersion) is smaller than the first preset value, the version of the compiled application program loading library is below android6.0, and the process is ended, otherwise, the step 202 is executed;
specifically, the sequence of the step b1 and the step b2 can be switched, so that the version of the software development kit can be judged after the level of the application programming interface is judged, or the level of the application programming interface can be judged after the version of the software development kit is judged;
step 203: judging whether the application target authority is called for the first time, if so, executing a step 204, otherwise, executing a step 208;
specifically, it is determined whether to invoke the application target permission for the first time according to the flag bit, if the flag bit is true, step 204 is executed, and if the flag bit is false, step 208 is executed;
step 204: applying for the single-target permission according to the context, and popping up a selection box by the system;
specifically, according to the context, an application authority interface requestPermissions () is called to apply for the single target authority, and a selection frame is popped up by the system;
optionally, step 204 further comprises setting the flag location to true;
a first parameter permission in an application permission interface (String [ ] permissions, int request code) is a target permission to be applied, and a second parameter request code is a permission request code;
applying for the single-target permission according to the context, and popping up a selection box by the system:
requests permissions (String [ ] management.
Step 205: waiting for the user to select the selection frame;
specifically, the user is waited to select the selection frame, and the selection frame has two options of authorization and prohibition and a check option which is not queried any more next time;
step 206: detecting whether the single target authority is authorized every first preset time, if so, the application program can normally use the target authority, returning to the step 202, otherwise, executing the step 207;
specifically, the first preset time is 1 s;
specifically, an authority detection interface checkSelfPermission (requestPermissions) is used every first preset time to detect whether an authority application interface requestPermissions () is in an authorized state, if a return value is PERMISSION _ GRANTED, a target authority is in an authorized state, and the authority is successfully promoted; if the return value is PERMISSION _ DENIED, the target authority is in a forbidden state;
step 207: judging whether the detection time exceeds a second preset time, if so, overtime is reached, and if not, returning to the step 206;
specifically, the second preset time is 6 s;
specifically, if the detection time exceeds 6s, the applied target authority is not in a full authorization state, and a user needs to be prompted about which target authorities are authorized and which authorities are not authorized;
in this embodiment, it is determined whether the detection time exceeds a second preset time, and if yes, the detection time is overtime, and two cases are present: one situation is that the user clicks forbidding, the permission detection interface checkSelfPermission () is used for detecting a forbidding state, at this time, whether the analysis selection frame is selected by the user is not required any more next time, and if the analysis selection frame is selected by the user, the return value of the shouldShowRequestPermissionRationale () which should be displayed and requested is set as false; if the user does not check the next inquiry, setting the return value of the function shouldshowrequestpermission () to be displayed and requested as true;
another situation is that the user has not made a selection;
step 208: judging whether the previous selection is forbidden and the next selection is not inquired any more, if so, popping up a setting dialog box, and prompting a user to manually set authorization operation, otherwise, executing the step 204;
specifically, whether prohibition is selected last time or not is judged according to the reason function of permission to be requested to be displayed, and the next inquiry is not carried out after check;
in particular, e.g. requiring permission reason functions to be displayed
If the return value of the shouldshowrequestpermissionangle () is false, the last time is selected to be forbidden and the next time is selected not to inquire any more, a setting dialog box pops up, and a user is prompted to manually set authorization operation;
if it should be displayed that the return value of the request permission reason function shouldshowsrequestpermission ratio () is "true", the prohibition was selected last time, but the next inquiry is not made again without being checked, and step 204 is executed.
EXAMPLE III
A third embodiment of the present invention provides a method for an application program to invoke a third-party library to dynamically raise an authority, as shown in fig. 3, where the method includes:
step 301: the third-party library receives a context transmitted by an application program and acquires at least one target authority;
in particular, context is an interface to global information about the application environment, is an abstract class that implements what is provided by the android system, context allows access to application-specific resources and classes, and calls to application-level operations (e.g., launch activities, broadcast and receive intents, etc.);
the target authority refers to the authority used for privacy information or causing adverse effect on other application programs when the application programs run;
specifically, the target authority includes positioning, reading an address book, reading and writing memory data and the like;
step 302: judging whether the level of the application programming interface is less than 23, if so, ending, otherwise, executing a step 303;
specifically, if the application programming interface level (API level) is less than 23, the operating system is a version below android6.0, and does not need to dynamically apply for permission;
step 303: judging whether the version of the software development kit is less than 23, if so, ending, otherwise, executing step 304;
specifically, if the software development kit version (targetSdkVersion) is less than 23, the version of the compiled application program loading library is less than android6.0, and the process is ended, otherwise, step 304 is executed;
specifically, the sequence of step 302 and step 303 may be switched, and the software development kit version may be determined after the application programming interface level is determined, or the application programming interface level may be determined after the software development kit version is determined;
step 304: judging whether the target authority is in an authorized state according to the context calling authority detection interface, if so, ending, otherwise, executing the step 305;
specifically, whether the target authority is in an authorized state is judged according to a context call authority detection interface checkSelfpermission (), if the return value is PERMISSION _ GRANTED, the target authority is in the authorized state, and the process is finished; if the return value is PERMISSION _ DENIED and the target authority is in the prohibited state, go to step 305;
step 305: judging whether the application target authority is called for the first time, if so, executing step 306, otherwise, executing step 310;
specifically, whether the application target authority is called for the first time is judged according to the flag bit, if the flag bit is true, step 306 is executed, and if the flag bit is false, step 310 is executed;
step 306: calling an application authority interface according to the context to apply for the target authority, and popping up a selection box by the system;
specifically, an application authority interface requestPermissions () is called according to the context to apply for the target authority, and a selection frame is popped up by the system;
optionally, step 306 further comprises setting the flag location to true;
a first parameter permission in an application permission interface (String [ ] permissions, int request code) is a target permission to be applied, and a second parameter request code is a permission request code;
optionally, in this embodiment, step 306 specifically includes:
step 306-1: judging whether the number of the target authorities is larger than a second preset value or not, if so, executing a step 306-2, otherwise, executing a step 306-3;
step 306-2: applying for the multi-target authority according to the context, and popping up a selection frame by the system;
specifically, an application authority interface requestPermissions () is called according to the context to apply for the multi-target authority, and the system pops up a selection frame:
requests permissions (String [ ] { authority.
Step 306-3: applying for a system pop-up selection box for the single-target permission according to the context;
specifically, according to the context, an application authority interface requestPermissions () is called to apply for a system pop-up selection box for the single target authority:
requests permissions (String [ ] management.
Step 307: waiting for the user to select the selection frame;
specifically, the user is waited to select the selection frame, and the selection frame has two options of authorization and prohibition and a check option which is not queried any more next time;
step 308: detecting whether the target permission is authorized at intervals of a first preset time, if so, the application program can normally use the target permission, otherwise, executing step 309;
specifically, the first preset time is 1 s;
specifically, an authority detection interface checkSelfPermission (requestPermissions) is used every first preset time to detect whether an authority application interface requestPermissions () is in an authorized state, if a return value is PERMISSION _ GRANTED, a target authority is in an authorized state, and the authority is successfully promoted; if the return value is PERMISSION _ DENIED, the target authority is in the forbidden state
Step 309: judging whether the detection time exceeds a second preset time, if so, overtime is reached, and if not, returning to the step 308;
specifically, the second preset time is 6 s;
specifically, if the detection time exceeds 6s, the applied target authority is not in a full authorization state, and a user needs to be prompted about which target authorities are authorized and which authorities are not authorized;
in this embodiment, it is determined whether the detection time exceeds a second preset time, and if yes, the detection time is overtime, and two cases are present: one situation is that the user clicks forbidding, the permission detection interface checkSelfPermission () is used for detecting a forbidding state, at this time, whether the analysis selection frame is selected by the user is not required any more next time, and if the analysis selection frame is selected by the user, the return value of the shouldShowRequestPermissionRationale () which should be displayed and requested is set as false; if the user does not check the next inquiry, setting the return value of the function shouldshowrequestpermission () to be displayed and requested as true;
another situation is that the user has not made a selection;
step 310: judging whether the previous selection is forbidden and the next selection is not inquired any more, if so, popping up a setting dialog box, and prompting a user to manually set authorization operation, otherwise, executing the step 306;
specifically, whether prohibition is selected last time or not is judged according to the reason function of permission to be requested to be displayed, and the next inquiry is not carried out after check;
in particular, e.g. requiring permission reason functions to be displayed
If the return value of the shouldshowrequestpermissionangle () is false, the last time is selected to be forbidden and the next time is selected not to inquire any more, a setting dialog box pops up, and a user is prompted to manually set authorization operation;
if the return value of the request permission reason function shouldshowsrowrequestpermission ratio () should be displayed as "true", the prohibition was selected last time, but the next inquiry is not made again without being checked, and step 306 is executed.
Example four
The fourth embodiment of the present invention provides a method for an application program to invoke a third-party library to dynamically raise an authority, as shown in fig. 4, where the method includes:
step 401: the third-party library receives a context transmitted by an application program and acquires at least one target authority;
in particular, context is an interface to global information about the application environment, is an abstract class that implements what is provided by the android system, context allows access to application-specific resources and classes, and calls to application-level operations (e.g., launch activities, broadcast and receive intents, etc.);
the target authority refers to the authority used for privacy information or causing adverse effect on other application programs when the application programs run;
specifically, the target authority includes positioning, reading an address book, reading and writing memory data and the like;
step 402: judging whether the level of the application programming interface is less than 23, if so, ending, otherwise, executing a step 403;
specifically, if the application programming interface level (API level) is less than 23, the operating system is a version below android6.0, and does not need to dynamically apply for permission;
step 403: judging whether the version of the software development kit is less than 23, if so, ending, otherwise, executing the step 404;
specifically, if the software development kit version (targetSdkVersion) is less than 23, the version of the compiled application program loading library is less than android6.0, and the process is ended, otherwise, the step 404 is executed;
specifically, the sequence of step 402 and step 403 may be switched, and the software development kit version may be determined after the application programming interface level is determined, or the application programming interface level may be determined after the software development kit version is determined;
step 404: judging whether all the target authorities are in an authorized state according to the context calling authority detection interface, if so, ending, otherwise, executing the step 405;
specifically, whether the target authority is in an authorized state is judged according to a context call authority detection interface checkSelfpermission (), if the return value is PERMISSION _ GRANTED, the target authority is in the authorized state, and the process is finished; if the return value is PERMISSION _ DENIED and the target PERMISSION is in the prohibited state, go to step 405;
step 405: judging whether the application target authority is called for the first time, if so, executing step 406, otherwise, executing step 410;
specifically, it is determined whether to invoke the application target authority for the first time according to the flag bit, if the flag bit is true, step 406 is executed, and if the flag bit is false, step 410 is executed;
step 406: calling an application authority interface according to the context to apply for the single-target authority, and popping up a selection box by the system;
specifically, according to the context, an application authority interface requestPermissions () is called to apply for the single target authority, and a selection frame is popped up by the system;
optionally, step 406 further comprises setting the flag location to true;
a first parameter permission in an application permission interface (String [ ] permissions, int request code) is a target permission to be applied, and a second parameter request code is a permission request code;
applying for the single-target permission according to the context, and popping up a selection box by the system:
requests permissions (String [ ] management.
Step 407: waiting for the user to select the selection frame;
specifically, the user is waited to select the selection frame, and the selection frame has two options of authorization and prohibition and a check option which is not queried any more next time;
step 408: detecting whether the target authority is authorized every first preset time, if so, the application program can normally use the target authority, returning to the step 404, otherwise, executing the step 409;
specifically, the first preset time is 1 s;
specifically, an authority detection interface checkSelfPermission (requestPermissions) is used every first preset time to detect whether an authority application interface requestPermissions () is in an authorized state, if a return value is PERMISSION _ GRANTED, a target authority is in an authorized state, and the authority is successfully promoted; if the return value is PERMISSION _ DENIED, the target authority is in a forbidden state;
step 409: judging whether the detection time exceeds a second preset time, if so, overtime is reached, and if not, returning to the step 408;
specifically, the second preset time is 6 s;
specifically, if the detection time exceeds 6s, the applied target authority is not in a full authorization state, and a user needs to be prompted about which target authorities are authorized and which authorities are not authorized;
in this embodiment, it is determined whether the detection time exceeds a second preset time, and if yes, the detection time is overtime, and two cases are present: one situation is that the user clicks forbidding, the permission detection interface checkSelfPermission () is used for detecting a forbidding state, at this time, whether the analysis selection frame is selected by the user is not required any more next time, and if the analysis selection frame is selected by the user, the return value of the shouldShowRequestPermissionRationale () which should be displayed and requested is set as false; if the user does not check the next inquiry, setting the return value of the function shouldshowrequestpermission () to be displayed and requested as true;
another situation is that the user has not made a selection;
step 410: judging whether the previous selection is forbidden and the next selection is not inquired any more, if so, popping up a setting dialog box, and prompting a user to manually set authorization operation, otherwise, executing step 406;
specifically, whether prohibition is selected last time or not is judged according to the reason function of permission to be requested to be displayed, and the next inquiry is not carried out after check;
in particular, e.g. requiring permission reason functions to be displayed
If the return value of the shouldshowrequestpermissionangle () is false, the last time is selected to be forbidden and the next time is selected not to inquire any more, a setting dialog box pops up, and a user is prompted to manually set authorization operation;
if the return value of the request permission reason function shouldshowsrequestpermission ratio () should be displayed as "true", the prohibition was selected last time, but the next inquiry is not made again without being checked, and step 406 is executed.
EXAMPLE five
An embodiment of the present invention provides an apparatus for an application program to invoke a third-party library to dynamically raise an authority, as shown in fig. 5, where the apparatus includes:
the receiving and acquiring module 11 is used for receiving a context transmitted by an application program and acquiring at least one target authority;
the first judging module 12 is used for judging whether all the target permissions are in an authorized state according to the context, if so, the process is finished, otherwise, the second judging module 13 is triggered;
the second judging module 13 is used for judging whether the application target authority is called for the first time, if so, the first application module 14 is triggered, otherwise, the fourth judging module 18 is triggered;
the first application module 14 is configured to apply for the target permission according to the context, and the system pops up a selection box;
a first waiting selection module 15, configured to wait for a user to select a selection box;
the first detection module 16 is configured to detect whether the target permission is authorized at intervals of a first preset time, if so, the application program may normally use the target permission, otherwise, the third determination module 17 is triggered;
a third judging module 17, configured to judge whether the detection time exceeds a second preset time, if so, the detection time is over, and if not, the first detecting module 16 is triggered;
a fourth judging module 18, configured to judge whether the previous selection is prohibited and the next selection is not queried any more, if yes, trigger the first setting module 19, and otherwise trigger the first applying module 14;
and the first setting module 19 is used for popping up a setting dialog box and prompting a user to manually set authorization operation.
Optionally, in this embodiment, the second determining module 13 to the first setting module 19 may be replaced with:
the fifth judging module is used for judging whether the application target authority is called for the first time, if so, the second application module is triggered, and otherwise, the seventh judging module is triggered;
the second application module is used for applying for the single-target permission according to the context and popping up a selection box by the system;
the second waiting selection module is used for waiting for the selection of the selection frame by the user;
the second detection module is used for detecting whether the target authority is authorized every first preset time, if so, the application program can normally use the target authority and trigger the first judgment module, and if not, the sixth judgment module is triggered;
a sixth judging module, configured to judge whether the detection time exceeds a second preset time, if so, the detection time is over, and if not, the second detecting module is triggered;
the seventh judging module is used for judging whether the previous selection is forbidden and the next selection is not inquired any more, if so, the second setting module is triggered, and if not, the second application module is triggered;
and the second setting module is used for popping up a setting dialog box and prompting a user to manually set for authorization operation.
Optionally, in this embodiment, the method further includes:
the eighth judging module is used for judging whether the level of the application programming interface is smaller than the first preset value, if so, the process is ended, and otherwise, the ninth judging module is triggered;
and the ninth judging module is used for judging whether the version of the software development kit is smaller than the first preset value, if so, ending the software development kit, and otherwise, triggering the first judging module.
Optionally, in this implementation, the first determining module 12 is specifically configured to determine whether the target permission is in an authorized state according to the context call permission detection interface, if so, the determining is finished, and otherwise, the second determining module is triggered.
Optionally, in this embodiment, the first application module 14 specifically includes:
the first judging unit is used for judging whether the number of the target authorities is larger than a second preset value or not, if so, the first application unit is triggered, and otherwise, the second application unit is triggered;
the first application unit is used for carrying out multi-target authority application according to the context and popping up a selection box by the system;
and the second application unit is used for carrying out single-target permission application according to the context and popping up a selection box by the system.
Optionally, in this embodiment, the first applying unit is specifically configured to invoke an application authority interface according to the context to apply for the multi-target authority, and the system pops up a selection box.
Optionally, in this embodiment, the fourth determining module is specifically configured to determine, according to the function that should display the request permission, whether to prohibit from being selected last time and check that the next time is not to be queried, if the return value that should display the request permission function is false, prohibit from being selected last time and check that the next time is not to be queried, and trigger the first setting module 19, and if the return value that should display the request permission function is future, prohibit from being selected last time but not check that the next time is not to be queried, and trigger the first applying module 14.
EXAMPLE six
An embodiment of the present invention provides an electronic device for an application program to invoke a third-party library to dynamically raise an authority, as shown in fig. 6, where the electronic device includes:
referring now to FIG. 6, shown is a schematic diagram of an electronic device 600 suitable for use in implementing embodiments of the present application. The smart card device in the embodiments of the present application may include, but is not limited to, mobile smart card devices such as mobile phones, notebook computers, digital broadcast receivers, PDAs (personal digital assistants), PADs (tablet computers), PMPs (portable multimedia players), in-vehicle smart card devices (e.g., in-vehicle navigation smart card devices), and the like, and fixed smart card devices such as digital TVs, desktop computers, and the like. The electronic device shown in fig. 6 is only an example, and should not bring any limitation to the functions and the scope of use of the embodiments of the present application.
As shown in fig. 6, electronic device 600 may include a processing means (e.g., central processing unit, graphics processor, etc.) 601 that may perform various appropriate actions and processes in accordance with a program stored in a Read Only Memory (ROM)602 or a program loaded from a storage means 608 into a Random Access Memory (RAM) 603. In the RAM 603, various programs and data necessary for the operation of the electronic apparatus 600 are also stored. The processing device 601, the ROM 602, and the RAM 603 are connected to each other via a bus 604. An input/output (I/O) interface 605 is also connected to bus 604.
Generally, the following devices may be connected to the I/O interface 605: input devices 606 including, for example, a touch screen, touch pad, keyboard, mouse, camera, microphone, accelerometer, gyroscope, etc.; output devices 607 including, for example, a Liquid Crystal Display (LCD), a speaker, a vibrator, and the like; storage 608 including, for example, tape, hard disk, etc.; and a communication device 609. The communication means 609 may allow the electronic device 600 to communicate with other devices wirelessly or by wire to exchange data. While fig. 6 illustrates an electronic device 600 having various means, it is to be understood that not all illustrated means are required to be implemented or provided. More or fewer devices may alternatively be implemented or provided.
In particular, according to embodiments of the application, the processes described above with reference to the flow diagrams may be implemented as computer software programs. For example, embodiments of the present application include a computer program product comprising a computer program embodied on a computer readable medium, the computer program comprising program code for performing the method illustrated by the flow chart. In such an embodiment, the computer program may be downloaded and installed from a network via the communication means 609, or may be installed from the storage means 608, or may be installed from the ROM 602. The computer program, when executed by the processing device 601, performs the above-described functions defined in the methods of the embodiments of the present application.
It should be noted that the computer readable medium mentioned above in the present application may be a computer readable signal medium or a computer readable storage medium or any combination of the two. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the foregoing. More specific examples of the computer readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the present application, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. In this application, however, a computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated data signal may take many forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may also be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to: electrical wires, optical cables, RF (radio frequency), etc., or any suitable combination of the foregoing.
The computer readable medium may be embodied in the electronic device; or may exist separately without being assembled into the electronic device.
The computer readable medium carries one or more programs which, when executed by the electronic device, cause the electronic device to: acquiring at least two internet protocol addresses; sending a node evaluation request comprising the at least two internet protocol addresses to node evaluation equipment, wherein the node evaluation equipment selects the internet protocol addresses from the at least two internet protocol addresses and returns the internet protocol addresses; receiving an internet protocol address returned by the node evaluation equipment; wherein the obtained internet protocol address indicates an edge node in the content distribution network.
Alternatively, the computer readable medium carries one or more programs which, when executed by the electronic device, cause the electronic device to: receiving a node evaluation request comprising at least two internet protocol addresses; selecting an internet protocol address from the at least two internet protocol addresses; returning the selected internet protocol address; wherein the received internet protocol address indicates an edge node in the content distribution network.
Computer program code for carrying out operations for aspects of the present application may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, Smalltalk, C + + or the like and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer through any type of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet service provider).
The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present application. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The units described in the embodiments of the present application may be implemented by software or hardware. Where the name of a unit does not in some cases constitute a limitation of the unit itself, for example, the first retrieving unit may also be described as a "unit for retrieving at least two internet protocol addresses".
The above description is only a preferred embodiment of the application and is illustrative of the principles of the technology employed. It will be appreciated by those skilled in the art that the scope of the disclosure herein is not limited to the particular combination of features described above, but also encompasses other arrangements formed by any combination of the above features or their equivalents without departing from the spirit of the disclosure. For example, the above features may be replaced with (but not limited to) features having similar functions disclosed in the present application.
The electronic device provided by the present application is applicable to any embodiment of the method for promoting permissions, and is not described herein again.
The present application provides a computer-readable storage medium storing computer instructions for causing a computer to execute the method for promoting rights shown in the above embodiments.
The computer-readable storage medium provided in the present application is applicable to any embodiment of the above method for increasing permissions, and is not described herein again.
It will be understood by those within the art that each block of the block diagrams and/or flowchart illustrations, and combinations of blocks in the block diagrams and/or flowchart illustrations, can be implemented by computer program instructions. Those skilled in the art will appreciate that the computer program instructions may be implemented by a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, implement the aspects specified in the block or blocks of the block diagrams and/or flowchart illustrations disclosed herein.
The modules of the device can be integrated into a whole or can be separately deployed. The modules can be combined into one module, and can also be further split into a plurality of sub-modules.
Those skilled in the art will appreciate that the drawings are merely schematic representations of one preferred embodiment and that the blocks or flow diagrams in the drawings are not necessarily required to practice the present application.
Those skilled in the art will appreciate that the modules in the devices in the embodiments may be distributed in the devices in the embodiments according to the description of the embodiments, and may be correspondingly changed in one or more devices different from the embodiments. The modules of the above embodiments may be combined into one module, or further split into multiple sub-modules.
The above description is only for the preferred embodiment of the present invention, but the scope of the present invention is not limited thereto, and any changes or substitutions that can be easily conceived by those skilled in the art within the technical scope of the present invention are included in the scope of the present invention. Therefore, the protection scope of the present invention shall be subject to the protection scope of the claims.

Claims (16)

1. A method for calling a third-party library to dynamically improve authority by an application program is characterized by comprising the following steps:
step 101: the third-party library receives a context transmitted by an application program and acquires at least one target authority;
step 102: judging whether all the target permissions are in an authorized state according to the context, if so, ending, otherwise, executing the step 103;
step 103: judging whether the application target authority is called for the first time, if so, executing the step 104, otherwise, executing the step 108;
step 104: applying for the target authority according to the context, and popping up a selection box by the system;
step 105: waiting for the user to select the selection frame;
step 106: detecting whether the target permission is authorized at intervals of first preset time, if so, the application program can normally use the target permission, otherwise, executing the step 107;
step 107: judging whether the detection time exceeds a second preset time, if so, overtime is reached, and if not, returning to the step 106;
step 108: and judging whether the previous selection is forbidden and the next selection is not inquired any more, if so, popping up a setting dialog box, and prompting the user to manually set authorization operation, otherwise, executing the step 104.
2. The method of claim 1, wherein the steps 103 to 108 are replaced by:
step 203: judging whether the application target authority is called for the first time, if so, executing a step 204, otherwise, executing a step 208;
step 204: applying for the single-target permission according to the context, and popping up a selection box by the system;
step 205: waiting for the user to select the selection frame;
step 206: detecting whether the target authority is authorized every first preset time, if so, the application program can normally use the target authority, returning to the step 102, otherwise, executing the step 207;
step 207: judging whether the detection time exceeds a second preset time, if so, overtime is reached, and if not, returning to the step 206;
step 208: and judging whether the previous selection is forbidden and the next selection is not inquired any more, if so, popping up a setting dialog box, and prompting the user to manually set authorization operation, otherwise, executing the step 204.
3. The method according to claim 1 or 2, wherein between the step 101 and the step 102 further comprising:
step (ii) ofa1: judging whether the level of the application programming interface is smaller than a first preset value, if so, ending, otherwise, executing the stepa2;
Step a 2: and judging whether the version of the software development kit is smaller than a first preset value, if so, ending, otherwise, executing the step 102.
4. The method according to claim 1 or 2, wherein said step 102 comprises in particular: and judging whether the target authority is in an authorized state according to the context calling authority detection interface, if so, ending, otherwise, executing the step 103.
5. The method according to claim 1, wherein the step 104 specifically comprises:
step 104-1: judging whether the number of the target authorities is larger than a second preset value or not, if so, executing a step 104-2, otherwise, executing a step 104-3;
step 104-2: applying for the multi-target authority according to the context, and popping up a selection frame by the system;
step 104-3: and applying for the single-target permission according to the context, and popping up a selection box by the system.
6. The method according to claim 5, wherein the step 104-2 specifically comprises: and calling an application authority interface according to the context to apply for the multi-target authority, and popping up a selection box by the system.
7. The method of claim 1, wherein the step 108 specifically comprises: judging whether to select prohibition and check the next no-more-inquiry according to the function which should display the request permission, if the return value of the function which should display the request permission is false, selecting prohibition and check the next no-more-inquiry at the last time, popping up a setting dialog box, and prompting a user to manually set authorization operation; if it should be shown that the return value of the request permission function is true, the inhibit was selected last time, but the next time no more queries are selected, and step 104 is performed.
8. An apparatus for an application program to invoke a third-party library to dynamically elevate permissions, comprising:
the receiving and obtaining module is used for receiving the context transmitted by the application program and obtaining at least one target authority;
the first judgment module is used for judging whether all the target authorities are in the authorization state according to the context, if so, the process is finished, otherwise, the second judgment module is triggered;
the second judging module is used for judging whether the application target authority is called for the first time, if so, the first application module is triggered, and if not, the fourth judging module is triggered;
the first application module is used for applying for the target authority according to the context and popping up a selection box by the system;
the first waiting selection module is used for waiting for the selection of the selection frame by the user;
the first detection module is used for detecting whether the target permission is authorized at intervals of first preset time, if so, the application program can normally use the target permission, and otherwise, the third judgment module is triggered;
the third judging module is used for judging whether the detection time exceeds second preset time, if yes, the detection time is overtime and is ended, otherwise, the first detecting module is triggered;
the fourth judging module is used for judging whether the previous selection is forbidden and the next selection is not inquired any more, if so, the first setting module is triggered, and if not, the first application module is triggered;
the first setting module is used for popping up a setting dialog box and prompting a user to manually set for authorization operation.
9. The apparatus of claim 8, wherein the second determining module to the first setting module are replaceable with:
the fifth judging module is used for judging whether the application target authority is called for the first time, if so, the second application module is triggered, and otherwise, the seventh judging module is triggered;
the second application module is used for applying for the single-target permission according to the context and popping up a selection box by the system;
the second waiting selection module is used for waiting for the selection of the selection frame by the user;
the second detection module is used for detecting whether the target authority is authorized every first preset time, if so, the application program can normally use the target authority and trigger the first judgment module, and if not, the sixth judgment module is triggered;
the sixth judging module is used for judging whether the detection time exceeds second preset time, if yes, the detection time is overtime and is ended, otherwise, the second detecting module is triggered;
the seventh judging module is used for judging whether the previous selection is forbidden and the next selection is not inquired any more, if so, the second setting module is triggered, and if not, the second application module is triggered;
and the second setting module is used for popping up a setting dialog box and prompting a user to manually set for authorization operation.
10. The apparatus of claim 8 or 9, further comprising:
the eighth judging module is used for judging whether the level of the application programming interface is smaller than the first preset value, if so, the process is ended, and otherwise, the ninth judging module is triggered;
and the ninth judging module is used for judging whether the version of the software development kit is smaller than a first preset value, if so, ending the software development kit, and otherwise, triggering the first judging module.
11. The apparatus according to claim 8 or 9, wherein the first determining module is specifically configured to determine whether the target permission is in an authorized state according to the context call permission detection interface, if so, the process is ended, otherwise, the second determining module is triggered.
12. The apparatus of claim 8, wherein the first application module specifically comprises:
the first judging unit is used for judging whether the number of the target authorities is larger than a second preset value or not, if so, the first application unit is triggered, and otherwise, the second application unit is triggered;
the first application unit is used for carrying out multi-target authority application according to the context and popping up a selection box by the system;
and the second application unit is used for carrying out single-target permission application according to the context and popping up a selection box by the system.
13. The apparatus according to claim 12, wherein the first applying unit is specifically configured to invoke an application authority interface according to the context to apply for the multi-target authority, and the system pops up a selection box.
14. The apparatus according to claim 8, wherein the fourth determining module is specifically configured to determine whether the license function should be displayed and requested is prohibited last time and checked for next query no longer, if the return value of the license function should be displayed and requested is false, prohibit last time selection and check for next query no longer, and trigger the first setting module, and if the return value of the license function should be displayed and requested is true, prohibit last time selection but not check for next query no longer, and trigger the first applying module.
15. An electronic device, comprising: a processor and a memory;
the memory is used for storing operation instructions;
the processor is used for executing the method for calling the third-party library to dynamically raise the authority by calling the operation instruction, wherein the method is described in any one of the above claims 1 to 7.
16. A computer-readable storage medium for storing computer instructions which, when executed on a computer, cause the computer to perform the method for invoking the dynamic privilege elevation by the application program according to any one of the above claims 1 to 7.
CN201911336815.6A 2019-12-23 2019-12-23 Method and device for dynamically improving authority of application program calling third party library Active CN111143089B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911336815.6A CN111143089B (en) 2019-12-23 2019-12-23 Method and device for dynamically improving authority of application program calling third party library

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911336815.6A CN111143089B (en) 2019-12-23 2019-12-23 Method and device for dynamically improving authority of application program calling third party library

Publications (2)

Publication Number Publication Date
CN111143089A true CN111143089A (en) 2020-05-12
CN111143089B CN111143089B (en) 2023-11-07

Family

ID=70519411

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911336815.6A Active CN111143089B (en) 2019-12-23 2019-12-23 Method and device for dynamically improving authority of application program calling third party library

Country Status (1)

Country Link
CN (1) CN111143089B (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116028371A (en) * 2023-02-09 2023-04-28 湖南快乐阳光互动娱乐传媒有限公司 Application program detection method and device, storage medium and electronic equipment
CN117235771A (en) * 2023-11-07 2023-12-15 荣耀终端有限公司 Permission management and control method of application program and electronic equipment

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106022128A (en) * 2016-05-13 2016-10-12 北京奇虎科技有限公司 Method and device for detecting process access right and mobile terminal
CN106529270A (en) * 2016-09-22 2017-03-22 南京酷派软件技术有限公司 Application program authorization method and device
CN106570358A (en) * 2016-11-18 2017-04-19 广东欧珀移动通信有限公司 Method and device for setting application permissions
CN106991319A (en) * 2017-03-17 2017-07-28 维沃移动通信有限公司 The right management method and mobile terminal of a kind of application program
CN106997433A (en) * 2017-03-22 2017-08-01 西安电子科技大学 A kind of Android system authority management method
CN107862201A (en) * 2017-10-26 2018-03-30 深信服科技股份有限公司 Authority control method, electric terminal and computer-readable recording medium
WO2018059351A1 (en) * 2016-09-28 2018-04-05 中兴通讯股份有限公司 Application permission control method and device, and terminal
CN109711141A (en) * 2018-11-05 2019-05-03 中兴通讯股份有限公司 The processing method and processing device of the call request of sensitive permission module in terminal
CN109815679A (en) * 2018-12-26 2019-05-28 维沃移动通信有限公司 Right management method and mobile terminal
CN110197052A (en) * 2019-05-31 2019-09-03 深圳前海微众银行股份有限公司 Authority application method, apparatus, equipment and storage medium based on Android platform

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106022128A (en) * 2016-05-13 2016-10-12 北京奇虎科技有限公司 Method and device for detecting process access right and mobile terminal
CN106529270A (en) * 2016-09-22 2017-03-22 南京酷派软件技术有限公司 Application program authorization method and device
WO2018059351A1 (en) * 2016-09-28 2018-04-05 中兴通讯股份有限公司 Application permission control method and device, and terminal
CN106570358A (en) * 2016-11-18 2017-04-19 广东欧珀移动通信有限公司 Method and device for setting application permissions
CN106991319A (en) * 2017-03-17 2017-07-28 维沃移动通信有限公司 The right management method and mobile terminal of a kind of application program
CN106997433A (en) * 2017-03-22 2017-08-01 西安电子科技大学 A kind of Android system authority management method
CN107862201A (en) * 2017-10-26 2018-03-30 深信服科技股份有限公司 Authority control method, electric terminal and computer-readable recording medium
CN109711141A (en) * 2018-11-05 2019-05-03 中兴通讯股份有限公司 The processing method and processing device of the call request of sensitive permission module in terminal
CN109815679A (en) * 2018-12-26 2019-05-28 维沃移动通信有限公司 Right management method and mobile terminal
CN110197052A (en) * 2019-05-31 2019-09-03 深圳前海微众银行股份有限公司 Authority application method, apparatus, equipment and storage medium based on Android platform

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
CHERISE_Z: "获取动态权限", 《HTTPS://BLOG.CSDN.NET/CHERISEZ/ARTICLE/DETAILS/97925490》, pages 1 - 5 *
MATRIXDATA: "Android运行时权限处理解析", 《HTTPS://BLOG.CSDN.NET/MATRIXMIND/ARTICLE/DETAILS/87892272》, pages 1 - 3 *
姚寒冰;胡和平;李瑞轩;: "上下文感知的动态访问控制模型", 计算机工程与科学, no. 05, pages 1 - 3 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116028371A (en) * 2023-02-09 2023-04-28 湖南快乐阳光互动娱乐传媒有限公司 Application program detection method and device, storage medium and electronic equipment
CN116028371B (en) * 2023-02-09 2023-12-08 湖南快乐阳光互动娱乐传媒有限公司 Application program detection method and device, storage medium and electronic equipment
CN117235771A (en) * 2023-11-07 2023-12-15 荣耀终端有限公司 Permission management and control method of application program and electronic equipment
CN117235771B (en) * 2023-11-07 2024-04-23 荣耀终端有限公司 Permission management and control method of application program and electronic equipment

Also Published As

Publication number Publication date
CN111143089B (en) 2023-11-07

Similar Documents

Publication Publication Date Title
US8850135B2 (en) Secure software installation
CN111079125A (en) Method and device for calling third-party library dynamic lifting authority by application program
US9697353B2 (en) Method and device for intercepting call for service by application
US20160232374A1 (en) Permission control method and apparatus
US20100313196A1 (en) Managing securely installed applications
US9280665B2 (en) Fast and accurate identification of message-based API calls in application binaries
CN114625481B (en) Data processing method and device, readable medium and electronic equipment
US20140006598A1 (en) Methods, apparatuses and computer program products for facilitating dynamic origin-based domain allocation
US9600662B2 (en) User configurable profiles for security permissions
CN108293197B (en) Resource statistical method, device and terminal
CN110704833A (en) Data permission configuration method, device, electronic device and storage medium
US9910724B2 (en) Fast and accurate identification of message-based API calls in application binaries
CN111143089B (en) Method and device for dynamically improving authority of application program calling third party library
CN109117153B (en) Application processing method, device, terminal and storage medium
CN110673986A (en) Memory operation abnormity capturing method, device, terminal and storage medium
US11222135B2 (en) User device privacy protection
CN110674050B (en) Memory out-of-range detection method and device, electronic equipment and computer storage medium
CN106203087B (en) Injection protection method, system, terminal and storage medium
CN115328580B (en) Processing method, device and medium for registry operation in application migration environment
CN117807601A (en) Vulnerability detection method, device, medium and equipment for application program
CN111273967A (en) Remote hook setting method and device suitable for Android system and electronic equipment
CN111124627A (en) Method, device, terminal and storage medium for determining application program caller
CN111625326A (en) Task pipeline execution method and device and electronic equipment
CN110109699A (en) A kind of loophole component lookup method, system, medium and electronic equipment
CN111310175A (en) iOS application safety monitoring and protecting method and device based on plug-in

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