1. A method for recommending a desired func sequence to a user, comprising: obtaining, by a hardware processor, a user intention list including at least one user intention; separating, by the hardware processor, the user intention into a plurality of tasks, and determining a plurality of funcs, wherein each task is implemented by a subset of funcs of the plurality of funcs, each func is used to represent an access point of an app: creating, by the hardware processor, a task flow graph for the plurality of tasks based on user usage data, with each vertex in the task flow graph representing a task and indicating an importance of the task; creating, by the hardware processor, a func flow graph based on the user usage data and temporal sequences of the tasks and funcs, with each vertex in the func flow graph representing a func and indicating an importance of the func; determining, by the hardware processor, a desired func sequence to fulfil the user intention based on the user usage data, the task flow graph, and the func flow graph; and recommending, by the hardware processor, the desired func sequence to the user, wherein: two vertexes in the func flow graph are linked to each other if a traversal from one to another has been found consecutively in the user usage data; and any two vertexes in the func flow graph are consecutively linked if two funcs of the two vertexes happened in sequential order in the user usage data within a certain time duration; and an edge weight between any two vertexes in the func flow graph is a total count of recorded traversal between the two vertexes.