A method of using a first device having a first app thereon arranged to execute on a first operating system of the first device, to execute a second app arranged to execute on a second operating system of a second device, wherein the second device is a TV, wherein the first and second devices are both interconnected through peer-to-peer communication, and wherein the second app is a related companion application which is executable by the first app, the method comprising: upon execution of the first app by the first device: using a networking protocol suitable for peer-to-peer communication to discover a compatible second device on the network, communicating with the second device to exchange data relating to discovery protocol, querying the second device, and determining, in response to the first device receiving information from the second device through the peer-to-peer communication, whether the second app is already installed on the second device; and by the first device in response to determining that the second app is already installed on the second device, causing the second app to execute on the second device by sending an execution message to the second device, or to display an execution query message on the first device for receiving a user input regarding whether to execute the second app on the second device, unless the second app is already executing on the second device, wherein the first app and the second app are arranged to operate in communication with each other, and wherein the first app and the second app execute together to produce a convergent multiscreen user experience with the apps. upon execution of the first app by the first device: using a networking protocol suitable for peer-to-peer communication to discover a compatible second device on the network, communicating with the second device to exchange data relating to discovery protocol, querying the second device, and determining, in response to the first device receiving information from the second device through the peer-to-peer communication, whether the second app is already installed on the second device; and using a networking protocol suitable for peer-to-peer communication to discover a compatible second device on the network, communicating with the second device to exchange data relating to discovery protocol, querying the second device, and determining, in response to the first device receiving information from the second device through the peer-to-peer communication, whether the second app is already installed on the second device; and by the first device in response to determining that the second app is already installed on the second device, causing the second app to execute on the second device by sending an execution message to the second device, or to display an execution query message on the first device for receiving a user input regarding whether to execute the second app on the second device, unless the second app is already executing on the second device, wherein the first app and the second app are arranged to operate in communication with each other, and wherein the first app and the second app execute together to produce a convergent multiscreen user experience with the apps.