Method and apparatus for programming a mobile device with multiple service accounts
First Claim
Patent Images
1. A method for programming a mobile device with a software build supporting a selected service provider account, comprising:
- receiving a service provider account selection;
determining whether an account with the selected service provider is activated;
retrieving software build parameters and settings from a non-volatile memory corresponding to the selected service provider account;
implementing the software build supporting the selected service provider account using the retrieved software build parameters and settings, wherein implementing the software build supporting the selected service provider account comprises;
retrieving an application programming interface and a dynamically linked library corresponding to the selected service provider account from memory;
implementing the application programming interface and dynamically linked library;
resetting a download service;
deleting all previous parameters, settings, files and provisioning data from an extended file service;
writing the retrieved software build parameters, provisioning data, files and settings into the extended files service;
storing the retrieved software build parameters, files, provisioning data, and settings into the non-volatile memory; and
resetting the mobile device;
confirming prior activation of the selected service provider account, wherein confirming prior activation of the selected service provider account comprises;
attempting to conduct a data call;
determining whether the data call attempt was successful;
determining whether the mobile device is located within the home network for the selected service provider account when the data call is unsuccessful;
indicating a roaming condition when the mobile device is determined to be located outside the home network for the selected service provider account; and
resetting factory default parameters and an indicator of account activation for the selected service provider when the mobile device is determined not to be located outside the home network for the selected service provider account;
resetting a fail to connect counter to zero;
incrementing the fail to connect counter when the data call is unsuccessful and the mobile device is determined to be within the home network for the selected service provider account;
determining whether the fail to connect counter equals a predetermined number; and
repeating attempts to conduct a data call when the number of connection attempts does not equal the predetermined number,wherein resetting factory default parameters and the indicator of account activation for the selected service provider is performed only when the fail to connect counter equals the predetermined number of connection attempts.
1 Assignment
0 Petitions
Accused Products
Abstract
Methods and systems enable mobile devices equipped with software defined radio based chipset modules to seamlessly re-program the mobile device to operate on any of a variety of service provider networks. By re-programming a mobile device equipped with software defined radio based chipset module, the mobile device can support communications over both GSM and CDMA communication networks. An environment is provided which allows a user to quickly and efficiently switch between service provider accounts supporting communications.
180 Citations
24 Claims
-
1. A method for programming a mobile device with a software build supporting a selected service provider account, comprising:
-
receiving a service provider account selection; determining whether an account with the selected service provider is activated; retrieving software build parameters and settings from a non-volatile memory corresponding to the selected service provider account; implementing the software build supporting the selected service provider account using the retrieved software build parameters and settings, wherein implementing the software build supporting the selected service provider account comprises; retrieving an application programming interface and a dynamically linked library corresponding to the selected service provider account from memory; implementing the application programming interface and dynamically linked library; resetting a download service; deleting all previous parameters, settings, files and provisioning data from an extended file service; writing the retrieved software build parameters, provisioning data, files and settings into the extended files service; storing the retrieved software build parameters, files, provisioning data, and settings into the non-volatile memory; and resetting the mobile device; confirming prior activation of the selected service provider account, wherein confirming prior activation of the selected service provider account comprises; attempting to conduct a data call; determining whether the data call attempt was successful; determining whether the mobile device is located within the home network for the selected service provider account when the data call is unsuccessful; indicating a roaming condition when the mobile device is determined to be located outside the home network for the selected service provider account; and resetting factory default parameters and an indicator of account activation for the selected service provider when the mobile device is determined not to be located outside the home network for the selected service provider account; resetting a fail to connect counter to zero; incrementing the fail to connect counter when the data call is unsuccessful and the mobile device is determined to be within the home network for the selected service provider account; determining whether the fail to connect counter equals a predetermined number; and repeating attempts to conduct a data call when the number of connection attempts does not equal the predetermined number, wherein resetting factory default parameters and the indicator of account activation for the selected service provider is performed only when the fail to connect counter equals the predetermined number of connection attempts. - View Dependent Claims (2, 3)
-
-
4. A method for programming a mobile device with a software build supporting a selected service provider account, comprising:
-
receiving a service provider account selection; determining whether an account with the selected service provider is activated; retrieving software build parameters and settings from a non-volatile memory corresponding to the selected service provider account; implementing the software build supporting the selected service provider account using the retrieved software build parameters and settings, wherein implementing the software build supporting the selected service provider account comprises; retrieving an application programming interface and a dynamically linked library corresponding to the selected service provider account from memory; implementing the application programming interface and dynamically linked library; resetting a download service; deleting all previous parameters, settings, files and provisioning data from an extended file service; writing the retrieved software build parameters, provisioning data, files and settings into the extended files service; storing the retrieved software build parameters, files, provisioning data, and settings into the non-volatile memory; and resetting the mobile device; and confirming prior activation of the selected service provider account, wherein confirming prior activation of the selected service provider account comprises; attempting to conduct a data call; determining whether the data call attempt was successful; determining whether the mobile device is located within the home network for the selected service provider account when the data call is unsuccessful; indicating a roaming condition when the mobile device is determined to be located outside the home network for the selected service provider account; storing existing mobile device credential values to a temporary file in memory; changing the existing mobile device credential values to known working credential values for the selected service provider when the data call attempt is unsuccessful and the mobile device is not located outside the home network for the selected service provider; contacting an accounts server to determine whether the selected service provider account is active; performing a repair routine when the selected service provider account is determined to be active; and resetting factory default parameters and an indicator of account activation for the selected service provider account when the selected service provider account is determined by the accounts server to be not active. - View Dependent Claims (5, 6)
-
-
7. A mobile device comprising:
-
means for receiving a service provider account selection; means for determining whether an account with the selected service provider is activated; means for retrieving software build parameters and settings from a non-volatile memory corresponding to the selected service provider account; means for implementing the software build supporting the selected service provider account using the retrieved software build parameters and settings, wherein means for implementing the software build supporting the selected service provider account comprises; means for retrieving an application programming interface and a dynamically linked library corresponding to the selected service provider account from memory; means for implementing the application programming interface and dynamically linked library; means for resetting a download service; means for deleting all previous parameters, settings, files and provisioning data from an extended file service; means for writing the retrieved software build parameters, provisioning data, files and settings into the extended files service; means for storing the retrieved software build parameters, files, provisioning data, and settings into non-volatile memory; and means for resetting the mobile device; means for confirming prior activation of the selected service provider account comprising; means for attempting to conduct a data call; means for determining whether the data call attempt was successful; means for determining whether the mobile device is located within the home network for the selected service provider account when the data call is unsuccessful; means for indicating a roaming condition when the mobile device is determined to be located outside the home network for the selected service provider account; means for resetting factory default parameters; and means for resetting factory default parameters and an indicator of account activation for the selected service provider when the mobile device is determined to be not located outside the home network for the selected service provider account; means for resetting a fail to connect counter to zero; means for incrementing the fail to connect counter when the data call is unsuccessful and the mobile device is determined to be within the home network for the selected service provider account; means for determining whether the fail to connect counter equals a predetermined number; and means for repeating attempts to conduct a data call when the fail to connect counter does not equal the predetermined number, wherein means for resetting factory default parameters and means for resetting the indicator of account activation for the selected service provider do so only when the fail to connect counter equals the predetermined number of connection attempts. - View Dependent Claims (8, 9)
-
-
10. A mobile device comprising:
-
means for receiving a service provider account selection; means for determining whether an account with the selected service provider is activated; means for retrieving software build parameters and settings from a non-volatile memory corresponding to the selected service provider account; means for implementing the software build supporting the selected service provider account using the retrieved software build parameters and settings, wherein means for implementing the software build supporting the selected service provider account comprises; means for retrieving an application programming interface and a dynamically linked library corresponding to the selected service provider account from memory; means for implementing the application programming interface and dynamically linked library; means for resetting a download service; means for deleting all previous parameters, settings, files and provisioning data from an extended file service; means for writing the retrieved software build parameters, provisioning data, files and settings into the extended files service; means for storing the retrieved software build parameters, files, provisioning data, and settings into the non-volatile memory; and means for resetting the mobile device; and means for confirming prior activation of the selected service provider account comprising; means for attempting to conduct a data call; means for determining whether the data call attempt was successful; means for determining whether the mobile device is located within the home network for the selected service provider account when the data call is unsuccessful; means for indicating a roaming condition when the mobile device is determined to be located outside the home network for the selected service provider account; means for storing existing mobile device credential values to a temporary file in memory; means for changing the existing mobile device credential values to known working credential values for the selected service provider when the data call attempt is unsuccessful and the mobile device is not located outside the home network for the selected service provider; means for contacting an accounts server to determine whether the selected service provider account is active; means for performing a repair routine when the selected service provider account is determined to be active; means for resetting factory default parameters; and means for resetting an indicator of account activation for the selected service provider account when the selected service provider account is determined by the accounts server to be not active. - View Dependent Claims (11, 12)
-
-
13. A mobile device, comprising:
-
an internal memory unit, the internal memory unit including a provisioning data buffer; and a processor coupled to the internal memory unit, wherein the processor is configured with software instructions to perform steps comprising; receiving a service provider account selection; determining whether an account with the selected service provider is activated; retrieving software build parameters and settings from a non-volatile memory corresponding to the selected service provider account; implementing the software build supporting the selected service provider account using the retrieved software build parameters and settings, wherein implementing the software build supporting the selected service provider account comprises; retrieving an application programming interface and a dynamically linked library corresponding to the selected service provider account from memory; implementing the application programming interface and dynamically linked library; resetting a download service; deleting all previous parameters, settings, files and provisioning data from an extended file service; writing the retrieved software build parameters, provisioning data, files and settings into the extended files service; storing the retrieved software build parameters, files, provisioning data, and settings into the non-volatile memory; and resetting the mobile device; confirming prior activation of the selected service provider account, wherein confirming prior activation of the selected service provider account comprises; attempting to conduct a data call; determining whether the data call attempt was successful; determining whether the mobile device is located within the home network for the selected service provider account when the data call is unsuccessful; indicating a roaming condition when the mobile device is determined to be located outside the home network for the selected service provider account; and resetting factory default parameters and an indicator of account activation for the selected service provider when the mobile device is determined to be not located outside the home network for the selected service provider account; resetting a fail to connect counter to zero; incrementing the fail to connect counter when the data call is unsuccessful and the mobile device is determined to be within the home network for the selected service provider account; determining whether the fail to connect counter equals a predetermined number; and repeating attempts to conduct a data call when the number of connection attempts does not equal the predetermined number, wherein resetting factory default parameters and the indicator of account activation for the selected service provider is performed only when the fail to connect counter equals the predetermined number of connection attempts. - View Dependent Claims (14, 15)
-
-
16. A mobile device, comprising:
-
an internal memory unit, the internal memory unit including a provisioning data buffer; and a processor coupled to the internal memory unit, wherein the processor is configured with software instructions to perform steps comprising; receiving a service provider account selection; determining whether an account with the selected service provider is activated; retrieving software build parameters and settings from a non-volatile memory corresponding to the selected service provider account; implementing the software build supporting the selected service provider account using the retrieved software build parameters and settings, wherein implementing the software build supporting the selected service provider account comprises; retrieving an application programming interface and a dynamically linked library corresponding to the selected service provider account from memory; implementing the application programming interface and dynamically linked library; resetting a download service; deleting all previous parameters, settings, files and provisioning data from an extended file service; writing the retrieved software build parameters, provisioning data, files and settings into the extended files service; storing the retrieved software build parameters, files, provisioning data, and settings into the non-volatile memory; and resetting the mobile device; and confirming prior activation of the selected service provider account, wherein confirming prior activation of the selected service provider account comprises; attempting to conduct a data call; determining whether the data call attempt was successful; determining whether the mobile device is located within the home network for the selected service provider account when the data call is unsuccessful; indicating a roaming condition when the mobile device is determined to be located outside the home network for the selected service provider account; storing existing mobile device credential values to a temporary file in memory; changing the existing mobile device credential values to known working credential values for the selected service provider when the data call attempt is unsuccessful and the mobile device is not located outside the home network for the selected service provider; contacting an accounts server to determine whether the selected service provider account is active; performing a repair routine when the selected service provider account is determined to be active; and resetting factory default parameters and an indicator of account activation for the selected service provider account when the selected service provider account is determined by the accounts server to be not active. - View Dependent Claims (17, 18)
-
-
19. A non-transitory storage medium having stored thereon processor-executable software instructions configured to cause a processor to perform steps comprising:
-
receiving a service provider account selection; determining whether an account with the selected service provider is activated; retrieving software build parameters and settings from a non-volatile memory corresponding to the selected service provider account; implementing the software build supporting the selected service provider account using the retrieved software build parameters and settings, wherein implementing the software build supporting the selected service provider account comprises; retrieving an application programming interface and a dynamically linked library corresponding to the selected service provider account from memory; implementing the application programming interface and dynamically linked library; resetting a download service; deleting all previous parameters, settings, files and provisioning data from an extended file service; writing the retrieved software build parameters, provisioning data, files and settings into the extended files service; storing the retrieved software build parameters, files, provisioning data, and settings into the non-volatile memory; and resetting the mobile device; confirming prior activation of the selected service provider account, wherein confirming prior activation of the selected service provider account comprises; attempting to conduct a data call; determining whether the data call attempt was successful; determining whether the mobile device is located within the home network for the selected service provider account when the data call is unsuccessful; indicating a roaming condition when the mobile device is determined to be located outside the home network for the selected service provider account; and resetting factory default parameters and an indicator of account activation for the selected service provider when the mobile device is determined not to be located outside the home network for the selected service provider account; resetting a fail to connect counter to zero; incrementing the fail to connect counter when the data call is unsuccessful and the mobile device is determined to be within the home network for the selected service provider account; determining whether the fail to connect counter equals a predetermined number; and repeating attempts to conduct a data call when the number of connection attempts does not equal the predetermined number, wherein resetting factory default parameters and the indicator of account activation for the selected service provider is performed only when the fail to connect counter equals the predetermined number of connection attempts. - View Dependent Claims (20, 21)
-
-
22. A non-transitory storage medium having stored thereon processor-executable software instructions configured to cause a processor to perform steps comprising:
-
receiving a service provider account selection; determining whether an account with the selected service provider is activated; retrieving software build parameters and settings from a non-volatile memory corresponding to the selected service provider account; implementing the software build supporting the selected service provider account using the retrieved software build parameters and settings, wherein implementing the software build supporting the selected service provider account comprises; retrieving an application programming interface and a dynamically linked library corresponding to the selected service provider account from memory; implementing the application programming interface and dynamically linked library; resetting a download service; deleting all previous parameters, settings, files and provisioning data from an extended file service; writing the retrieved software build parameters, provisioning data, files and settings into the extended files service; storing the retrieved software build parameters, files, provisioning data, and settings into the non-volatile memory; and resetting the mobile device; and confirming prior activation of the selected service provider account, wherein confirming prior activation of the selected service provider account comprises; attempting to conduct a data call; determining whether the data call attempt was successful; determining whether the mobile device is located within the home network for the selected service provider account when the data call is unsuccessful; indicating a roaming condition when the mobile device is determined to be located outside the home network for the selected service provider account; storing existing mobile device credential values to a temporary file in memory; changing the existing mobile device credential values to known working credential values for the selected service provider when the data call attempt is unsuccessful and the mobile device is not located outside the home network for the selected service provider; contacting an accounts server to determine when the selected service provider account is active; performing a repair routine when the selected service provider account is determined to be active; and resetting factory default parameters and an indicator of account activation for the selected service provider account when the selected service provider account is determined by the accounts server to be not active. - View Dependent Claims (23, 24)
-
Specification