Skip to content

Commit

Permalink
flyme newproject
Browse files Browse the repository at this point in the history
  • Loading branch information
wwbhl committed Jul 2, 2015
0 parents commit d0d87c7
Show file tree
Hide file tree
Showing 14,999 changed files with 5,715,773 additions and 0 deletions.
The diff you're trying to view is too large. We only load the first 3000 changed files.
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
/board/*
/autopatch/*
/out/*
179 changes: 179 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,179 @@
# Makefile Reference
# Please use this file as the project Makefile reference

##############################################################################
# The value decides which base device should choose for patchall and upgrade.
# You can configure the property according to your device.
# The default value is base.
# Support values: base, base_cm, base_mt6592 and other devices in the future.
#-----------------------------------------------------------------------------
#BASE := base_cm

##############################################################################
# The value is used for resource adapter with the aapt tool.
# It depends on the device's resolution.
# The default value is hdpi.
#-----------------------------------------------------------------------------
DENSITY := xhdpi

##############################################################################
# The value is used to config the bootanimation.
# It depends on the device's resolution, such as 480x854, 540x960, 720x1280, 1080x1920.
# The default value is nothing.
#-----------------------------------------------------------------------------
RESOLUTION := 720x1280

##############################################################################
# The value decides whether use prebuilt image or pack from the BOOT or RECOVERY directory in the vendor directory.
# Support values: boot, recovery or nothing.
# The default value is nothing.
# When the value is boot or recovery, the system of build will pack boot.img or recovery.img
# from the BOOT or vendor RECOVERY in the vendor directory which might contain your changes.
# When the value is nothing, the system of build will check boot.img or recovery.img in the project root directory.
# If the boot.img or recovery.img exists, the system of build will use a prebuilt boot.img or recovery.img.
# If the boot.img or recovery.img doesn't exists, the system of build will do nothing.
#-----------------------------------------------------------------------------
#vendor_modify_images := boot

##############################################################################
# The value decides the directory which you want to remove in the vendor directory for the ota package.
# The default value is app or pri-app which not need to configure.
# You can configure the directory name which relative to the vendor/system directory.
#-----------------------------------------------------------------------------
#vendor_remove_dirs := vendor/operator/app

##############################################################################
# The value decides the file which you want to remove in the vendor directory for the ota package.
# The default value is nothing.
# You can configure the file name which relative to the vendor/system directory.
#-----------------------------------------------------------------------------
#vendor_remove_files := bin/zchgd

##############################################################################
# The value decides the vendor apk which you want to save in the vendor directory for the ota package.
# The default value is Bluetooth.
# You can configure the apk name in the vendor/system/app or vendor/system/pri-app directory.
#-----------------------------------------------------------------------------
vendor_saved_apps := Bluetooth KeyChain HTMLViewer UserDictionaryProvider BackupRestoreConfirmation \
FusedLocation PrintSpooler SharedStorageBackup ExternalStorageProvider InputDevices \
ProxyHandler Shell DefaultContainerService

##############################################################################
# The value decides which vendor apk you want to modify.
# The modify jar will build from the directory named the vendor apk name in the current project root directory.
# eg: vendor_modify_apps := FMRadio
# You need ro decode FMRadio.apk to the project directory(use apktool d FMRadio.apk) first,
# and then you can make it by: make FMRadio
#-----------------------------------------------------------------------------
#vendor_modify_apps := FMRadio

##############################################################################
# The value decides which vendor jar you want to modify.
# The modify jar will build from the *.jar.out directory in the current project root directory.
# eg: vendor_modify_jars := android.policy
# You need to decode android.policy.jar to the project directory (use apktool d android.policy.jar) first,
# and then you can make it by: make android.policy
#-----------------------------------------------------------------------------
vendor_modify_jars := android.policy framework services telephony-common

##############################################################################
# The value decides which board system directory you want to save.
# The default value is nothing.
# You can configure the board system directory path which relative to the system directory in the board release.
#-----------------------------------------------------------------------------
#board_saved_dirs := media/audio/ui

##############################################################################
# The value decides which board system file you want to save.
# The default value is nothing.
# You can configure the board system file path which relative to the system directory in the board release.
#-----------------------------------------------------------------------------
board_saved_files := lib/libsqlite.so lib/libwebviewchromium.so

##############################################################################
# The value decides which board system apk you want to remove.
# The default value is nothing.
# You can configure the board system apk name in the value.
#-----------------------------------------------------------------------------
#board_remove_apps := LogReport

##############################################################################
# The value decides which apk you want to modify, when the apk is based on the board system apk.
# The default value is Phone.
# You can configure the board system apk name in the value.
# You can modify the apk with the smali.part file or other method.
# You may need to check if the apk in the BOARD_MODIFY_RESID_APPS(you can see it in build/configs/board_default.mk).
# If in, you may need to change the resource id to "#type@name#t" or "#type@name#a" by the command idtoname.
# The command idtoname how to use: first use "apktool d source/system/framework/framework-res.apk other/TMP/framework-res",
# and then use "idtoname other/TMP/framework-res/res/values/public_master.xml XXXX/smali"(XXXX is the directory where you decode board system apk).
#-----------------------------------------------------------------------------
#board_modify_apps := SystemUI

##############################################################################
# The value decides which jar you want to modify, when the jar is based on the board framework jar.
# The default value is nothing.
# You can modify the jar with the smali.part file or other method.
# You may need to check if the jar in the BOARD_MODIFY_RESID_APPS(you can see it in build/configs/board_default.mk).
# If in, you may need to change the resource id to "#type@name#t" or "#type@name#a" by the command idtoname.
# The command idtoname how to use: first use "apktool d source/system/framework/framework-res.apk other/TMP/framework-res",
# and then use "idtoname other/TMP/framework-res/res/values/public_master.xml XXXX/smali"(XXXX is the directory where you decode board system jar).
#-----------------------------------------------------------------------------
#board_modify_jars := android.policy

##############################################################################
# The value decides which property you will override in the build.prop.
# The default value is nothing.
# You can add the property name in the value from the build.prop.
#-----------------------------------------------------------------------------

# The property decide whether hide the soft mainkeys.
# If 1, hide the soft mainkeys. If 0, display the soft mainkeys.
# You should configure the property according to your device.
#override_property += \
# qemu.hw.mainkeys=0


# The property decide your ID on the backend server which statistical data for your device.
# The default value is FlymeRomer.
# You should configure the property according to your ID, ie, replace "FlymeRomer" with your ID.
#override_property += \
# ro.flyme.romer=FlymeRomer

##############################################################################
# The value decides which property you will remove from the build.prop.
# The default value is nothing.
# You can add the property name in the value from the build.prop.
#-----------------------------------------------------------------------------
# remove_property += \
# dev.defaultwallpaper

##############################################################################
# Defines whether uses assertions in /META-INF/com/google/android/updater-script of the OTA package.
# Assertions is used to verify the validity of the OTA package.
# Set it to be false when you want to escape the verification.
# Default: true
#-----------------------------------------------------------------------------
#USE_ASSERTIONS_IN_UPDATER_SCRIPT := false

##############################################################################
# Defines whether reduces useless resources, only keep the resources of preferred configuration, like current density or locale.
# If set to be true, it will cost much more time to build out a system.img of which the size is reduced.
# Default: false
#-----------------------------------------------------------------------------
#REDUCE_RESOURCES := true

##############################################################################
# Defines whether produces an image zipfile suitable for use with 'fastboot update'.
# Default: false
#-----------------------------------------------------------------------------
#PRODUCE_IMAGES_FOR_FASTBOOT := true

##############################################################################
# Defines whether generates a block-based OTA, system.img.dat in DAT format will be produced.
# Will fall back to a file-based OTA if the target_files is older and doesn't support block-based OTAs.
# Default: false
#-----------------------------------------------------------------------------
#PRODUCE_BLOCK_BASED_OTA := true


include $(PORT_BUILD)/main.mk
33 changes: 33 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
# devices-superior
机型适配
* 标准流程
按照如下步骤,完成一个新机型的适配:

$ flyme config # 生成机型配置文件Makefile
$ flyme newproject # 生成新机型目录
该源码已经做完上面2步
$ flyme patchall # 自动插桩
$ flyme fullota # 生成适配完成的ROM包
* 冲突处理

自动插桩可能会造成代码合并冲突。冲突会以下面的形式标注出来, 开发者需要在厂商的文件中手工解决这些冲突。

<<<<<<< VENDOR
原厂的代码块
=======
Flyme的代码块
>>>>>>> BOSP
* 版本升级

可以跟随官方发布的最新ROM包,将已经是适配完成的机型升级到最新版本:

$ flyme cleanall
$ flyme upgrade

by wwbhl push

更多信息交流讨论:

QQ :8489216
BBS:http://www.baohailong.cn/bbs
QQ群 :196960536
2 changes: 2 additions & 0 deletions android.policy.jar.out/apktool.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
version: 2.0.0
apkFileName: android.policy.jar
3 changes: 3 additions & 0 deletions android.policy.jar.out/original/META-INF/MANIFEST.MF
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
Manifest-Version: 1.0
Created-By: 1.7.0_79 (Oracle Corporation)

Original file line number Diff line number Diff line change
@@ -0,0 +1,94 @@
.class Lcom/android/internal/policy/impl/BarController$1;
.super Ljava/lang/Object;
.source "BarController.java"

# interfaces
.implements Ljava/lang/Runnable;


# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Lcom/android/internal/policy/impl/BarController;->updateStateLw(I)Z
.end annotation

.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x0
name = null
.end annotation


# instance fields
.field final synthetic this$0:Lcom/android/internal/policy/impl/BarController;

.field final synthetic val$state:I


# direct methods
.method constructor <init>(Lcom/android/internal/policy/impl/BarController;I)V
.locals 0

.prologue
.line 168
iput-object p1, p0, Lcom/android/internal/policy/impl/BarController$1;->this$0:Lcom/android/internal/policy/impl/BarController;

iput p2, p0, Lcom/android/internal/policy/impl/BarController$1;->val$state:I

invoke-direct {p0}, Ljava/lang/Object;-><init>()V

return-void
.end method


# virtual methods
.method public run()V
.locals 4

.prologue
.line 172
:try_start_0
iget-object v2, p0, Lcom/android/internal/policy/impl/BarController$1;->this$0:Lcom/android/internal/policy/impl/BarController;

# invokes: Lcom/android/internal/policy/impl/BarController;->getStatusBarService()Lcom/android/internal/statusbar/IStatusBarService;
invoke-static {v2}, Lcom/android/internal/policy/impl/BarController;->access$000(Lcom/android/internal/policy/impl/BarController;)Lcom/android/internal/statusbar/IStatusBarService;

move-result-object v1

.line 173
.local v1, "statusbar":Lcom/android/internal/statusbar/IStatusBarService;
if-eqz v1, :cond_0

.line 174
iget-object v2, p0, Lcom/android/internal/policy/impl/BarController$1;->this$0:Lcom/android/internal/policy/impl/BarController;

# getter for: Lcom/android/internal/policy/impl/BarController;->mStatusBarManagerId:I
invoke-static {v2}, Lcom/android/internal/policy/impl/BarController;->access$100(Lcom/android/internal/policy/impl/BarController;)I

move-result v2

iget v3, p0, Lcom/android/internal/policy/impl/BarController$1;->val$state:I

invoke-interface {v1, v2, v3}, Lcom/android/internal/statusbar/IStatusBarService;->setWindowState(II)V
:try_end_0
.catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_0} :catch_0

.line 181
.end local v1 # "statusbar":Lcom/android/internal/statusbar/IStatusBarService;
:cond_0
:goto_0
return-void

.line 176
:catch_0
move-exception v0

.line 179
.local v0, "e":Landroid/os/RemoteException;
iget-object v2, p0, Lcom/android/internal/policy/impl/BarController$1;->this$0:Lcom/android/internal/policy/impl/BarController;

const/4 v3, 0x0

# setter for: Lcom/android/internal/policy/impl/BarController;->mStatusBarService:Lcom/android/internal/statusbar/IStatusBarService;
invoke-static {v2, v3}, Lcom/android/internal/policy/impl/BarController;->access$202(Lcom/android/internal/policy/impl/BarController;Lcom/android/internal/statusbar/IStatusBarService;)Lcom/android/internal/statusbar/IStatusBarService;

goto :goto_0
.end method
Loading

0 comments on commit d0d87c7

Please sign in to comment.