您的位置:首页 > 移动开发

用gradlew编译打包的app,如何添加进Android源码做build

2016-12-20 11:51 736 查看
对于用android studio编辑完的app源码如何添加到系统的source去做编译呢?如果要求作为launcher启动呢?

没错就是写一个牛逼一点的Android.mk即可,上码子:

#

# 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.

#

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE := XXX

LOCAL_OVERRIDES_PACKAGES := Launcher3

LOCAL_SRC_FILES := $(LOCAL_MODULE).apk

LOCAL_MODULE_CLASS := APPS

LOCAL_MODULE_SUFFIX := $(COMMON_ANDROID_PACKAGE_SUFFIX)

LOCAL_CERTIFICATE := platform

LOCAL_MODULE_PATH := $(TARGET_OUT)/vendor/operator/app

PRIVATE_LOCAL_PATH := $(LOCAL_PATH)

PRIVATE_LOCAL_MODULE := $(LOCAL_MODULE)

$(LOCAL_PATH)/$(LOCAL_MODULE).apk: .git/modules/vendor/vinci/packages/apps/XXX/src/HEAD

find $(PRIVATE_LOCAL_PATH)/src -name *.apk -exec rm {} \;

echo "org.gradle.java.home=/usr/lib/jvm/java-7-openjdk-amd64" > $(PRIVATE_LOCAL_PATH)/src/gradle.properties

echo "sdk.dir=/workspace/share/android-sdk-linux" > $(PRIVATE_LOCAL_PATH)/src/local.properties

path=`pwd`; cd $(PRIVATE_LOCAL_PATH)/src; ./gradlew build; cd $$path

echo $(PRIVATE_LOCAL_PATH)/src/gradle.properties

rm $(PRIVATE_LOCAL_PATH)/src/gradle.properties

rm $(PRIVATE_LOCAL_PATH)/src/local.properties

cp $(PRIVATE_LOCAL_PATH)/src/app/build/outputs/apk/app-debug.apk $(PRIVATE_LOCAL_PATH)/$(PRIVATE_LOCAL_MODULE).apk

include $(BUILD_PREBUILT)

用此makefile编译出来之后,该app是以Launcher的位置出现在系统中的。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息