The present invention relates to a method for establishing a connection between multi-platforms, in particular, the present invention relates to a method of establishing a paid connection between multi-platforms.
In recent years, electronic industries grow rapidly and various electronic devices are widely used in everyday life. Users use electronic devices for entertaining purposes, such as displaying films and executing games. In addition, work efficiency is significantly improved with the convenient functions delivered by electronic devices.
The functions provided by electronic devices rely on the capabilities of hardware and associated software. For example, users play movies with film playing application on computers. In general, users purchase paid application or download free application depending on the marketing strategies of application developers. Nonetheless, when application is executed on a plurality of electronic devices, the charging mechanism is required to redesign by the application developer.
In an example of screen mirroring application, a screen mirroring application transmits multimedia data displayed on the screen of a first electronic device to the screen of a second electronic device via network systems. Under the circumstance, it is required to install a transmitting end screen mirroring application (referred in the following as transmitting end application) on the first electronic device for transmitting data, and it is required to install a receiving end screen mirroring application (referred in the following as receiving end application) on the second electronic device for receiving and processing data.
In view of application developers, when the above transmitting end applications and receiving end applications are free to download by users, it is convenient to use but difficult to collect payments. Accordingly, the interests of application developers are at risk. However, when purchases are required at both transmitting and receiving end applications, users have to perform the paying procedures twice, which is inconvenient. Thus, application developers need to implement a mechanism to charge at either transmitting end or receiving end application, while the other transmitting or receiving end application can be used freely without purchase.
For display device manufacturers (for example, smart television, projector or other devices supporting screen mirroring function), a pre-installed version of receiving end application is preferred at production stage. Thus, after purchasing the display device, users can make use of screen mirroring function by installing a separate transmitting application on another device, for example smart phone, computer, or other devices supporting screen mirroring function. However, a problem arises between application developer and display device manufacturer when it comes to royalty collection.
Manufacturers of display devices have options to install a free or paid version of screen mirroring receiving application. If a free version is installed,
users are required to purchase and install paid screen mirroring applications in their electronic devices for performing screen projection with the display devices. If a paid version is installed, cost of manufacturers increases due to extra software license fee, and users can install a free version of screen mirroring transmitting application with the display device. Taking all that into consideration, manufacturers of display devices and application developers need to negotiate and resolve reasonable royalties of the application, and scope of functionalities supported once a royalty is dealt. (for example, which platforms are supported by screen mirroring applications or which document content is supported by the screen mirroring applications).
When a display device is installed with a free screen mirroring receiving application, users have to use a paid screen mirroring transmitting application for establishing a connection. Otherwise, application developers cannot collect any payments. When a display device is installed with a paid screen mirroring receiving application, the users are allowed to use a free screen mirroring application for establishing a connection. In addition, even if a display device is installed with a paid screen mirroring application and users use a free screen mirroring application for establishing a connection, it is still required to determine if the function of screen mirroring application is supported according to payments dealt between application developer and display device manufacturer. Those functions include but not restrict to system platforms used by the screen mirroring source, or document content of the screen projection.
It is an objective of the present invention to provide a method of establishing a paid connection using a screen mirroring application between multi-platforms. The method assures that either the transmitting end application or the receiving end application is a paid version, a user complies with an application license agreement and the right of application developers is protected.
In order to achieve the aforementioned objective, when a connection is established, the transmitting end application confirms if a unique ID of the receiving end apparatus exists in an exception list recorded by transmitting end application, and confirms if the receiving end application makes payment based on an operating system used by the transmitting end apparatus in order to determine establishing a limited connection or an unlimited connection between the transmitting end apparatus and the receiving end apparatus.
A screen mirroring application is used for transmitting the screen data of a transmitting end apparatus (for example a mobile phone) to a receiving end apparatus (for example a smart television), and the screen data of a transmitting end apparatus is displayed on the screen of the receiving end apparatus for performing the function similar to screen mirroring via a network system. In contrast with the related art, the advantage of the present invention is that application developers setup operating systems supported by an application in advance according to a product license agreement signed by a user. When two apparatuses are going to establish a connection and the operating systems used by the apparatuses are supported by the application, the two apparatuses establish an unlimited connection. If the user violates the product license agreement afterwards, the application developers sets up an exception list via an application update to amend the connection authority of the application. Thus, users are required to follow the product license agreement.
The features of the invention believed to be novel are set forth with particularity in the appended claims. The invention itself, however, may be best understood by reference to the following detailed description of the invention, which describes an exemplary embodiment of the invention, taken in conjunction with the accompanying drawings, in which:
In cooperation with attached drawings, the technical contents and detailed description of the present invention are described thereinafter according to a preferable embodiment, being not used to limit its executing scope. Any equivalent variation and modification made according to appended claims is all covered by the claims claimed by the present invention.
As shown of
The receiving end application 20 can be a paid receiving end application 210 and a free receiving end application 220. Users purchase from an application developer and install the paid receiving end application 210 in a first receiving end apparatus 21. Further, users download and install the free receiving end application 220 in a second receiving end apparatus 22. It should be noted that, the receiving end apparatus 2 usually has a display screen larger than the screen of the transmitting end apparatus 1, for example, a smart television or large screen notebook computer. In addition, the receiving end application 20 can be an embedded receiving end application 230. The receiving end apparatus 2, for example, a third receiving end apparatus 23 is installed with the embedded receiving end application 230 by default in factories. Thus, users do not need to purchase and install the receiving end application 20 separately which is more convenient to users.
However, in another embodiment, the size of the display screen on the receiving end apparatus 2 may be smaller than the size of the display screen on the transmitting end apparatus 1. For example, the transmitting end apparatus 1 is a smart TV. As the example shown in
The receiving end apparatus 2 can be a Smart Computing Device, Personal Computer (PC), a Notebook Computer, a Tablet, a Smart Phone, etc. The screen mirroring application is installed for receiving the data transmitted by the transmitting end apparatus 1. The transmitted data is decompressed, decoded and displayed on the screen. It should be noted that if users transmit the screen of the transmitting end apparatus 1 to an apparatus which is incapable of executing application automatically, for example, a projector 3. The receiving end apparatus 2 further can be an expanded device which is electrically coupled to the projector 3. The receiving end application 20 is installed and executed in the expanded device, and the expanded device receives data from the transmitting end apparatus 1. The received data is decompressed and decoded. The images and sounds generated by the data decompression and decoding are transmitted to the projector 3 for performing screen mirroring.
The advantages of the present invention are that if a screen mirroring application installed in the transmitting end apparatus 1 is a paid version, i.e. the paid transmitting end application 110, the transmitting end apparatus 1 establish an unlimited connection with any receiving end apparatus 2 installed with the receiving end application 20 and performs screen mirroring. For example, the first transmitting end apparatus 11 in
If the screen mirroring application installed in the transmitting end apparatus 1 is a free version, i.e., the free transmitting end application 120, the free transmitting end application 120 has to determine the version of the receiving end application 20 of the sharing target before a connection is established. If the receiving end apparatus 2 of the sharing target is installed with the free receiving end application 220, the transmitting end apparatus 1 and the receiving end apparatus 2 may only establish a limited connection (detailed in the following). On the other hand, if the receiving end apparatus 2 of the sharing target is installed with the paid receiving end application 210, the transmitting end apparatus 1 and the receiving end apparatus 2 may establish an unlimited connection. In addition, screen mirroring is performed after the connection is successfully connected. In the embodiment, the paid content of the paid receiving end application 210 is not associated with the operating system used by the transmitting end apparatus 1. As long as the paid receiving end application 210 is installed in the receiving end application 2, the transmitting end apparatus 1 and the receiving end apparatus 2 may establish an unlimited connection.
The above determining mechanism can be executed by the receiving end application 20 as well. For example, if the screen mirroring application installed in the receiving end apparatus 2 is the free receiving end application 220, then the free receiving end application 220 first determines the version of the transmitting end application 10 of the sharing source when the transmitting end apparatus 1 requests to make a connection. If the transmitting end apparatus 1 of the sharing source is installed with the free transmitting end application 120, then the receiving end apparatus 2 and the transmitting end apparatus 1 may only establish a limited connection. On the other hand, if the transmitting end apparatus 1 of the sharing source is installed with the paid transmitting end application 110, then the receiving end apparatus 2 and the transmitting end apparatus 1 may establish an unlimited connection and perform screen mirroring after the connection is established successfully. Similarly, in the embodiment, the paid content of the paid transmitting end application 210 is not associated with the operating system used by the receiving end apparatus 2. As long as the paid transmitting end application 210 is installed in the transmitting end apparatus 1, the transmitting end apparatus 1 and the receiving end apparatus 2 may establish an unlimited connection.
In other words, when the transmitting end apparatus 1 and the receiving end apparatus 2 establish a connection, the transmitting end application 10 in the transmitting end apparatus 1 can be used for determining which types of connections are allowed to establish (limited or unlimited); also, the receiving end application 20 in the receiving end apparatus 2 can be used for determining which types of connections are allowed to establish, and are not limited thereto. Among which, if the application used for the determination is a paid version (for example the paid transmitting end application 110 or the paid receiving end application 210), then an unlimited connection may be directly established without the determining mechanism of the application.
It should be noted that an application developer decides which operating systems used by the transmitting end apparatus 1 (or the receiving end apparatus 2) are supported by the paid receiving end application 210 (or the paid transmitting end application 110) according to the pricing of the paid receiving end application 210 (or the paid transmitting end application 110). As shown in Table A, a supporting schematic diagram of the transmitting end application 10/the receiving end application 20 is illustrated.
In the example of using an paid receiving end application 210, if the price of the paid receiving end application 210 is lower, for example, the retail price of an A application is USD$0.99 in Table A, an application developer configures an internal flag of the paid receiving end application 210 according to low retail price of the A application to define that the A application only supports the transmitting end apparatus 1 that uses a Windows platform. When the transmitting end apparatus 1 using a Mac OS platform is going to establish a connection with the receiving end apparatus 2 installed with the A application, the free transmitting end application 120 has to confirm that the A application is a paid version, then the free transmitting end application 120 further determines if the A application supports a Mac OS platform. As shown in Table A, although the A application is the paid transmitting end application 210, the transmitting end apparatus 1 using a Mac OS platform cannot establish an unlimited connection with the A application because the A application does not be paid based on a Mac OS platform and accordingly does not support a Mac OS platform used by the transmitting end apparatus 1.
The aforementioned pricing is the retail price of each application or the royalties of product licenses agreed by manufactures and application developers and the scope is not limited thereto. However, Table A is a preferred embodiment of the present invention and the scope of the invention is not limited thereto.
As the B application and the C application shown in Table A, when the retail price is higher, the application developer configures that the B application and the C application support more operating systems. Take examples shown in Table A, the B application supports the transmitting end apparatus 1 that uses a Windows platform and a Mac OS platform but does not support the transmitting end apparatus 1 that uses an Android platform, an iOS platform and a Black Berry platform. For another example, the C application supports the transmitting end apparatus 1 that uses a Mac OS and an iOS platform but does not support a transmitting end apparatus 1 that uses a Windows platform, an Android platform and a Black Berry platform. In details, an internal flag of the receiving end application 20 is configured to define which operating systems to support, but the scope is not limited thereto (for example, if manufacturers pay based on a specific operating system, the application developer sets up the internal flag of the receiving end application 20 to enable the receiving end application 20 to support the specific operating system).
It should be note that in an embodiment according to the present invention, the free transmitting end application 120 is used to determine which operating systems are supported by the paid receiving end application 210, or the free receiving end application 220 may be used to determine which operating systems are supported by the paid transmitting end application 110 as well, but the scope is not limited thereto.
As mentioned above, the receiving end application 20 can be an embedded receiving end application 230. For example, an embedded receiving end application 230 is installed in a receiving end apparatus 2 (for example, a smart television, a notebook computer or a setup box) during manufacturing process in the factories. Manufactures of televisions, computers and setup boxes decide which operating systems are supported by the embedded receiving end application 230 according to marketing strategies and then sign corresponding products license agreements with and pay corresponding royalties to application developers. Thus, the application developers set up the embedded receiving end application 230 in advance so as to enable the embedded receiving end application 230 to support one or more operating systems complying with the content of the product license agreement. Consequently, the free transmitting end application 120 determines according to that the manufacturers paid based on one or more operating systems.
Similarly, the transmitting end application 10 can be the embedded transmitting end application 130, the manufacturers decide which operating systems are supported by the embedded transmitting end application 130, and then the manufacturers sign corresponding products license agreements with and pay corresponding royalties to application developers same as the process mentioned above.
In the example of using the embedded receiving end application 230, the television manufacturers sign product license agreements with or pay royalties to the application developers, and the application developers configure the embedded receiving end application 230 in advance in order to support all the transmitting end apparatus 1 using any operating system (for example, the D application shown in Table A). Consumers purchase smart televisions and are allowed to establish an unlimited connection by the transmitting end apparatus 1 using any platform and perform screen mirroring for displaying the screen image on the smart televisions.
On the other hand, if the manufacturers do not sign product license agreements with or pay royalties to the application developers, the application developers configure the embedded receiving end application 230 to not support the transmitting end apparatus 1 using any operating system (for example, the E application shown in Table A). Under the circumstance, consumers purchase the smart televisions and are required to purchase and install the paid transmitting end application 110 in the transmitting end apparatus 1 so as to establish an unlimited connection with smart televisions.
As mentioned above, the kinds and quantities of operating systems supported by the paid applications (the paid transmitting end application 110 or the paid receiving end application 210) are determined by the product license agreement (and the paid royalties). However, under specific conditions, the manufacturers may amend the content of the license agreement afterwards (such as make extra payments to support more operating systems or stop making royalties when the product license agreements expire). The updates of certain paid applications can be difficult to implement (for example, the paid receiving end applications 210 are firmware of setup boxes or smart televisions). Once the manufacturers amend the content of the authority, the update is a difficult issue to overcome to the application developers.
In order to resolve such issue, the method of the present invention provides an exception list in a free application via updating the free application (such as the free transmitting end application 120 or the free receiving end application 220), and resolve the issue that the setup of the paid applications does not comply with the current status (i.e., does not comply with the content of the product license agreement) via the exception list (details in the following).
As shown in
However, if the free transmitting end application 120, in the step S310, determines that the receiving end application 20 is a free version, or the receiving end application 20 is a paid version but further determines that the paid receiving end application 210 cannot support the operating system of the transmitting end apparatus 1, the method moves to steps shown in
According to the above status, the transmitting end apparatus 1 and the receiving end apparatus 2 establish a limited connection (step S320), and the screen mirroring is performed after a connection is successfully established, (step S322). Consequently, the free transmitting end application 120 has to determine if the connection is under a limit condition (step S324). For example, the limit condition is a limit of the connection time. When the connection time is up to 5 minutes, the limit condition occurs. The above description is provided as an example and the scope is not limited thereto.
If the connection is not under the limit condition, the transmitting end apparatus 1 and the receiving end apparatus 2 continues to perform screen mirroring. When the connection is under the limit condition, the connection between the apparatus 1 and apparatus 2 is limited (step S326). For example, the connection is forcibly disconnected between the transmitting end apparatus 1 and the receiving end apparatus 2, or a charge reminder message is displayed on the screen of the transmitting end apparatus 1 and/or the receiving end apparatus 2 for reminding users to purchase a paid version application, or reminding users and the and developers to re-sign the product license agreement of the paid receiving end application 210, but the scope of the invention is not limited thereto.
It should be noted that, the above steps are used for assuring at least either the transmitting end apparatus 1 or the receiving end apparatus 2 is an application of paid version. Accordingly, given the transmitting end apparatus 1 or the receiving end apparatus 2 uses a Windows platform, users are not required to provide registration code or perform authorization procedure online when installs an application. Thus, the installing process is made convenient to users.
In the embodiment of
In the step S342, if the receiving end application 20 is determined as the free receiving end application 220, as shown in
However, in the step S350, if the transmitting end application 10 is determined as a free version, or the transmitting end application 10 is determined as a paid version but the paid transmitting end application 110 is determined not supporting the operating system used by the receiving end apparatus 2 in the step S354, the flow moves back to the steps shown in the
Is should be noted that many integrated applications are popular in recent years and such integrated applications integrate functions of more than one application. Users only buy one application and execute multiple functions. For example, the screen mirroring function of the present invention is integrated with document processing applications, such as Office viewer, PDF viewer, etc. Users install the screen mirroring application in the transmitting end apparatus 1, and use the screen mirroring application to open the designated documents in the transmitting end apparatus 1, such as Office documents or PDF documents, and at the same time mirror the content of the opened documents to display on the screen of the receiving end apparatus 2.
For example, a “WiFi-Doc” application integrates with the functions of the transmitting end application 10, the Office viewer and the PDF viewer. When the application is installed in the transmitting end apparatus 1 and executed, the transmitting end apparatus 1 is allowed to open the Office documents or PDF documents in the transmitting end apparatus 1, mirror the opened Office documents or PDF documents to the receiving end apparatus 2 and display the Office documents or the PDF documents on the screen of the receiving end apparatus 2 after the connection of the transmitting end apparatus 1 and the receiving end apparatus 2 is established.
In the aforementioned embodiment, before the connection is established, the screen mirroring application determines if the transmitting end application 10/the receiving end application 20 supports the operating systems used in the sharing target/sharing source. In the embodiment, before the connection and the mirroring, the screen mirroring application also determines if the transmitting end application 10/the receiving end application 20 supports the document content to mirror. For example, a simple screen mirroring application support mirroring of any document content, or determining which document content are supported to mirror depending on the pricing (or depending on the product license agreement). For example, an integrated application integrated with a screen mirroring application and an Office viewer is able to mirror document content of an Office document, and an integrated application integrated with a screen mirroring application and a PDF viewer is able to mirror document content of a PDF document. However, the aforementioned are preferred embodiments of the present invention and the scope of the invention is not limited thereto.
If one of the transmitting end application 10 and the receiving end application 20 is a paid version, then the transmitting end application 10 further determines an internal flag of the receiving end application 20 (step S364), wherein the content of the flag is used for determining if the receiving end application 20 supports the document content to mirror from the transmitting end application 10 (step S366). If the receiving end application 20 does not support the document content to mirror from the transmitting end application 10 (for example document content of an Office document or document content of a PDF document), then the transmitting end apparatus 1 and the receiving end apparatus 2 are not able to establish a connection, or can only establish a limited connection and perform mirroring as mentioned in the embodiment shown in the
In the embodiment shown in the
If the transmitting end application 10 is not able to support mirroring the designated document content with the receiving end application 20, then the transmitting end apparatus 1 and the receiving end apparatus 2 are not able to establish a connection, or can only establish a limited connection and perform screen mirroring as shown in the embodiment in the
The characteristic of the present invention is that the determining mechanism of establishing a connection is executed by the transmitting end application 10 or the receiving end application 20 for confirming that the transmitting end apparatus 1 and the receiving end apparatus 2 are able to establish a limited connection, an unlimited connection or are not able to establish a connection before two screen mirroring applications establish a connection. Among which, the determining mechanism comprises but is not limited thereto: 1. whether the transmitting end application 10 is a paid version or a free version; 2. whether the receiving end application 20 is a paid version or a free version; 3. if the transmitting end application 10 supports the operating system used by the receiving end apparatus 2; 4. if the receiving end application 20 supports the operating system used by the transmitting end apparatus 1; 5. if the receiving end application 20 supports mirroring designated document content from the transmitting end application 10; and 6. if the transmitting end application 10 supports mirroring designated document content to the receiving end application 20.
As detailed above, some manufacturers may purchase many transmitting end applications 10 or receiving end applications 20, embed the aforementioned applications in their products for sale based on marketing strategies and sign product license agreement with application developers based on specific operating systems. Yet, the manufacturers may change the marketing strategies after signing the product license agreement. The method of the present invention provide the means to adjust the usage authority of the paid transmitting end application 110/the paid receiving end application 210 by the application developers when updating the paid transmitting end application 110/the paid receiving end application 210 is difficult (for example, the paid transmitting end application 110/the paid receiving end application 210 are firmware installed in the products).
First, a request for establishing a connection is made by the transmitting end apparatus 1 or the receiving end apparatus 2 (step S40), wherein the step S40 can be executed manually by a user or executed automatically by either one of the apparatuses 1, 2. Next, the free transmitting end application 120 retrieves a unique ID of the receiving end apparatus 2 from the paid receiving end application 210 (step S42), and determines if the unique ID of the receiving end apparatus 2 exists in an exception list of the free transmitting end application 120 (step S44). Specifically, in step S44, the free transmitting end application 120 executes an internal inspection operation (i.e., checking the exception list recorded in the free transmitting end application 120) in order to determine if the transmitting end apparatus 1 and the receiving end apparatus 2 are able to establish a limited connection or an unlimited connection. The aforementioned unique ID for example is the device code of the receiving end apparatus 2, the MAC address of the Bluetooth unit of the receiving end apparatus 2, but the scope is not limited thereto.
If the free transmitting end application 120 determines the unique ID of the receiving end apparatus 2 exists in the exception list, the free transmitting end application 120 further determines if the unique ID exists in an accept list or in a reject list of the exception list (step S46). In the embodiment, the transmitting end apparatus 1 and the receiving end apparatus 2 establish an unlimited connection when the unique ID of the receiving end apparatus 2 is determined existing in the accept list of the free transmitting end application 120 (step S48), and screen mirroring is performed after a connection is established (step S50). When the unique ID of the receiving end apparatus 2 is determined existing in the reject list of the free transmitting end application 120, the flow moves back to the steps shown in the
It should be note that, the exception list of in the embodiment is created via updating the free transmitting end application 120 by the application developers after signing the product license agreement and the content of the exception list corresponds to the amendments made in the product license agreement. Accordingly, the priority of the exception list in the embodiment is higher than the priority of the aforementioned flag.
Specifically, if the unique ID of the receiving end apparatus 2 exists in the accept list of the free transmitting end application 120, the free transmitting end application 120 is not required to determine if the paid receiving end application 210 in the receiving end apparatus 2 supports the operating system used by the transmitting end apparatus 1 (i.e., is not required to read the internal flag of the paid receiving end application 210 meaning the free transmitting end application 120 is not required to determine if the paid receiving end application 210 makes payment based on the operating system used by the transmitting end apparatus 1), and the apparatuses 1 and 2 establish an unlimited connection. On the other hand, if the unique ID of the receiving end apparatus 2 exists in the reject list of the free transmitting end application 120, the free transmitting end application 120 also is not required to determine if the paid receiving end application 210 in the receiving end apparatus 2 supports the operating system used by the transmitting end apparatus 1, and the apparatuses 1 and 2 only establish a limited connection or do not establish a connection at all.
In step S44, if the free transmitting end application 120 determines the unique ID of the receiving end apparatus 2 does not exist in the exception list (i.e., neither exists in the accept list nor the reject list), then the free transmitting end application 120 further reads the internal flag in the paid receiving end application 210 (step S52) to determine if the paid receiving end application 210 supports the operating system used by the transmitting end apparatus 1 (step S54). Specifically, in step S52, the free transmitting end application 120 executes an external inspection operation (i.e., checking the flag recorded in the paid receiving end application 210) in order to determine if the transmitting end apparatus 1 and the receiving end apparatus 2 are able to establish a limited connection or an unlimited connection.
If the paid receiving end application 210 supports the operating system used by the transmitting end apparatus 1, the free transmitting end application 120 executes the aforementioned step S48 and S50 to establish an unlimited connection between the transmitting end apparatus 1 and the receiving end apparatus 2, and screen mirroring is performed after a connection is established. When the receiving end apparatus 210 does not support the operating system used by the transmitting end apparatus 1, the flow moves back to the steps shown in the
Two user scenarios are illustrated below to better elaborate the aforementioned exception list:
User Scenario One:
A manufacture of setup boxes signs a product license agreement with an application developer based on a paid receiving end application 210 with supports on certain operating systems (for example paying for supporting Windows and Mac OS operating systems but not supporting Android and iOS operating systems). When a connection is established between two apparatuses, the free transmitting end application 120 reads the flag of the paid receiving end application 210 which indicates the paid receiving end application 210 only supports the transmitting end apparatus 1 using a Windows and a Mac OS operating systems.
After the setup boxes are available in the market, the manufacturer decides to change the marketing strategy to provide extra service to setup box users so that the users are allowed to perform screen mirroring to the paid receiving end application 210 with the transmitting end apparatus 1 using Android and iOS operating systems. Under the user scenario, the paid receiving end application 210 may be a firmware of the setup boxes and the free transmitting end application 120 may be an application in a smart phone. Generally, updating a firmware of a setup box can be difficult tasks to users, yet updating applications in a smart phone is not. Accordingly, the application developer adds the unique ID of the setup boxes to a accept list of the free transmitting end application 120 via updating the free transmitting end application 120. Thus, the paid receiving end application 210 is deemed supporting the operating system, which is not recorded in the internal flag, based on the accept list of the free transmitting end application 120, without making amendments to the internal flag of the paid receiving end application 210.
User Scenario Two:
A manufacture of setup boxes signs a product license agreement with an application developer based on a paid receiving end application 210 with supports on all operating systems. Therefore, the paid receiving end application 210 supports all transmitting end apparatus 1 that use all operating systems. Yet, the manufacturers do not want to continue to pay the royalties of the paid receiving end application 210 upon the license period listed in the product license agreement expires. Accordingly, the application developer adds the unique ID of the setup boxes to a reject list of the free transmitting end application 120 via updating the free transmitting end application 120. Thus, the paid receiving end application 210 is deemed not supporting part or all of the operating systems recorded in the internal flag based on the reject list of the free transmitting end application 120, without making amendments to the internal flag of the paid receiving end application 210. Consequently, the application developer uses the method to assure the manufacturers complying with the product license agreement signed between two parties without compromising the rights of the application developer.
Specifically, an example illustrating the usage of the exception list is shown as follows:
In the embodiment shown in
First, a request for establishing a connection is made by the transmitting end apparatus 1 or the receiving end apparatus 2 (step 60). Next, the free receiving end application 220 retrieves a unique ID of the transmitting end apparatus 1 from the paid transmitting end application 110 (step S62), and determines if the unique ID of the transmitting end apparatus 1 exists in an exception list of the free receiving end application 220 (step S64).
If the free receiving end application 220 determines the unique ID of the transmitting end apparatus 1 exists in the exception list, the free receiving end application 220 further determines if the unique ID exists in an accept list or in a reject list of the exception list (step S66). Similarly, the transmitting end apparatus 1 and the receiving end apparatus 2 establish an unlimited connection when the unique ID of the transmitting end apparatus 1 exists in the accept list of the free receiving end application 220 (step S68), and screen mirroring is performed after a connection is established (step S70). When the unique ID of the transmitting end apparatus 1 exists in the reject list, the flow moves back to the steps shown in the
In step S64, if the free receiving end application 220 determines the unique ID of the transmitting end apparatus 1 does not exist in the exception list, then the free receiving end application 220 further reads the internal flag in the paid transmitting end application 110 (step S72) to determine if the paid transmitting end application 110 supports the operating system used by the receiving end apparatus 2 (step S74). If the paid transmitting end application 110 supports the operating system used by the receiving end apparatus 2, the free receiving end application 220 executes the aforementioned step S68 and S70 to establish an unlimited connection between the transmitting end apparatus 1 and the receiving end apparatus 2, and screen mirroring is performed after a connection is established. If the transmitting end apparatus 110 does not support the operating system used by the receiving end apparatus 2, the flow moves back to the steps shown in the
With the steps shown in
As the skilled person will appreciate, various changes and modifications can be made to the described embodiment. It is intended to include all such variations, modifications and equivalents which fall within the scope of the present invention, as defined in the accompanying claims.
This application is a continuation-in-part application of U.S. patent application Ser. No. 14/022,221 filed on Sep. 10, 2013, now abandoned, which is a continuation-in-part application of U.S. patent application Ser. No. 13/217,217, filed on Aug. 24, 2011, now U.S. Pat. No. 8,560,704.
Number | Name | Date | Kind |
---|---|---|---|
7577704 | Hegde | Aug 2009 | B1 |
7949758 | Kaler | May 2011 | B2 |
20020173977 | Dutta | Nov 2002 | A1 |
20040151192 | Trossen | Aug 2004 | A1 |
20070189520 | Altberg | Aug 2007 | A1 |
20080010153 | Pugh-O'Connor | Jan 2008 | A1 |
20080127306 | Blumfield | May 2008 | A1 |
20080172483 | Mickeleit | Jul 2008 | A1 |
20080192733 | Song | Aug 2008 | A1 |
20080242421 | Geisner | Oct 2008 | A1 |
20100268694 | Denoue | Oct 2010 | A1 |
20120221955 | Raleigh | Aug 2012 | A1 |
20150234575 | Suk | Aug 2015 | A1 |
20150373389 | Liao | Dec 2015 | A1 |
20170235435 | Sohn | Aug 2017 | A1 |
20170311368 | Kandur Raja | Oct 2017 | A1 |
Number | Date | Country | |
---|---|---|---|
20170250830 A1 | Aug 2017 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 14022221 | Sep 2013 | US |
Child | 15594245 | US | |
Parent | 13217217 | Aug 2011 | US |
Child | 14022221 | US |