Launcher3-android7.1.2


Google原版Launcher3-android7.1.2,使用Android Studio 2.3.1编译打包成功,可以正常安装运行。
资源截图
代码片段和文件信息
#!/usr/bin/env python2.5

import cgi
import os
import shutil
import sys
import sqlite3

SCREENS = 5
COLUMNS = 4
ROWS = 4
CELL_SIZE = 110

DIR = “db_files“
AUTO_FILE = “launcher.db“

APPLICATION_COMPONENTS = [
  “com.android.calculator2/com.android.calculator2.Calculator“
  “com.android.providers.downloads.ui/com.android.providers.downloads.ui.DownloadList“
  “com.android.settings/com.android.settings.Settings“
  “com.android.mms/com.android.mms.ui.ConversationList“
  “com.android.contacts/com.android.contacts.activities.PeopleActivity“
  “com.android.dialer/com.android.dialer.DialtactsActivity“
]

def usage():
  print “usage: fill_screens.py -- fills up the launcher db“


def make_dir():
  shutil.rmtree(DIR True)
  os.makedirs(DIR)

def pull_file(fn):
  print “pull_file: “ + fn
  rv = os.system(“adb pull“
    + “ /data/data/com.android.launcher/databases/launcher.db“
    + “ “ + fn);
  if rv != 0:
    print “adb pull failed“
    sys.exit(1)

def push_file(fn):
  print “push_file: “ + fn
  rv = os.system(“adb push“
    + “ “ + fn
    + “ /data/data/com.android.launcher/databases/launcher.db“)
  if rv != 0:
    print “adb push failed“
    sys.exit(1)

def process_file(fn):
  print “process_file: “ + fn
  conn = sqlite3.connect(fn)
  c = conn.cursor()
  c.execute(“DELETE FROM favorites“)

  intentFormat = “#Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=%s;end“

  id = 0;
  for s in range(SCREENS):
    for x in range(ROWS):
      for y in range(COLUMNS):
        id += 1
        insert = “INSERT into favorites (_id title intent container screen cellX cellY spanX spanY itemType appWidgetId iconType) VALUES (%d ‘%s‘ ‘%s‘ %d %d %d %d %d %d %d %d %d)“
        insert = insert % (id “title“ ““ -100 s x y 1 1 2 -1 0)
        c.execute(insert)
        folder_id = id

        for z in range(15):
          id += 1
          intent = intentFormat % (APPLICATION_COMPONENTS[id % len(APPLICATION_COMPONENTS)])
          insert = “INSERT into favorites (_id title intent container screen cellX cellY spanX spanY itemType appWidgetId iconType) VALUES (%d ‘%s‘ ‘%s‘ %d %d %d %d %d %d %d %d %d)“
          insert = insert % (id “title“ intent folder_id 0 0 0 1 1 0 -1 0)
          c.execute(insert)

  conn.commit()
  c.close()

def main(argv):
  if len(argv) == 1:
    make_dir()
    pull_file(AUTO_FILE)
    process_file(AUTO_FILE)
    push_file(AUTO_FILE)
  else:
    usage()

if __name__==“__main__“:
  main(sys.argv)

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。

发表评论

评论列表(条)