aboutsummaryrefslogtreecommitdiffstats
path: root/scripts/add-accounts-sdk
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/add-accounts-sdk')
-rwxr-xr-xscripts/add-accounts-sdk128
1 files changed, 0 insertions, 128 deletions
diff --git a/scripts/add-accounts-sdk b/scripts/add-accounts-sdk
deleted file mode 100755
index bb3447f..0000000
--- a/scripts/add-accounts-sdk
+++ /dev/null
@@ -1,128 +0,0 @@
-#!/usr/bin/env python
-#
-# Copyright (C) 2008 The Android Open Source Project
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-"""
-A faux Setup Wizard. Stuffs one or two usernames + passwords into the
-database on the device.
-"""
-
-import sys
-if sys.hexversion < 0x02040000:
- print "This script requires python 2.4 or higher."
- sys.exit(1)
-
-import getpass
-import subprocess
-import time
-import sha
-
-DB = "/data/data/com.google.android.googleapps/databases/accounts.db"
-
-def RunCmd(args):
- proc = subprocess.Popen(args, stdout=subprocess.PIPE)
- out = proc.stdout.read()
- if proc.wait():
- print
- print "failed: %s" % " ".join(args)
- return None
- return out
-
-def GetProp(adb_flags, name):
- args = ("adb",) + adb_flags + ("shell", "/system/bin/getprop", name)
- return RunCmd(args)
-
-def SetProp(adb_flags, name, value):
- args = ("adb",) + adb_flags + ("shell", "/system/bin/setprop", name, value)
- return RunCmd(args)
-
-def DbExists(adb_flags):
- args = ("adb",) + adb_flags + ("shell", "/system/bin/ls", DB)
- result = RunCmd(args)
- if result is None: return None
- return "No such file" not in result
-
-def main(argv):
- if len(argv) == 1:
- print ("usage: %s [adb flags] "
- "[<hosted address[:password]>] "
- "[<gmail address[:password]>]") % (argv[0],)
- sys.exit(2)
-
- argv = argv[1:]
-
- gmail = None
- hosted = None
- while argv and "@" in argv[-1]:
- addr = argv.pop()
- if "@gmail.com" in addr or "@googlemail.com" in addr:
- gmail = addr
- else:
- hosted = addr
-
- adb_flags = tuple(argv)
-
- while True:
- db = DbExists(adb_flags)
- if db is None:
- print "failed to contact device; will retry in 3 seconds"
- time.sleep(3)
- continue
-
- if db:
- print
- print "GoogleLoginService has already started on this device;"
- print "it's too late to use this script to add accounts."
- print
- print "This script only works on a freshly-wiped device (or "
- print "emulator) while booting for the first time."
- print
- break
-
- hosted_account = GetProp(adb_flags, "ro.config.hosted_account").strip()
- google_account = GetProp(adb_flags, "ro.config.google_account").strip()
-
- if hosted and hosted_account:
- print
- print "A hosted account is already configured on this device;"
- print "can't add", hosted_account
- print
- hosted = None
-
- if gmail and google_account:
- print
- print "A google account is already configured on this device;"
- print "can't add", google_account
- print
- gmail = None
-
- if not gmail and not hosted: break
-
- if hosted:
- SetProp(adb_flags, "ro.config.hosted_account", hosted)
- print "set hosted_account to", hosted
- if gmail:
- SetProp(adb_flags, "ro.config.google_account", gmail)
- print "set google_account to", gmail
-
- break
-
-
-
-
-
-
-if __name__ == "__main__":
- main(sys.argv)