Android android studio 项目放在源码中编译

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

app中有些权限在Android studio下无法实现,如关机等,虽然配置了权限,但是还是需要app签名,因此将app直接放在 源码中进行编译

一、首先将app代码放在源码中 
1.可以放在vendor 目录下自己项目的package/app/下面 
2.可以放在vendor/google/partner_gms/apps 或者 vendor/mtk/qcom 等 
3.也可以直接放在 packages/apps/ 下面

如下图所示:

这里写图片描述

在文件中添加 mk 文件

二、mk 文件内容如下:

LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
 #这个主要用于是 eng、user还是 userdebug 版本参与编译; optional值所有版本都参与编译
LOCAL_MODULE_TAGS   := optional
 #编译的java文件文件路径
LOCAL_SRC_FILES := $(call all-java-files-under, app/src/main/java)
 #需要编译的 AndroidManifest.xml 文件
LOCAL_MANIFEST_FILE := app/src/main/AndroidManifest.xml
 #编译的资源文件文件路径
LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/app/src/main/res
 #编译出的apk的名称
LOCAL_PACKAGE_NAME := MyReboot
 #apk 签名
LOCAL_CERTIFICATE := platform

include $(BUILD_PACKAGE)
include $(CLEAR_VERS)
include $(call all-makefiles-under,$(LOCAL_PATH))

三、问题解决: 
上述过程导入后,对于 android-support-v7-appcompat 等文件没有将会报错,解决方法如下:

替换掉原来的style.xml文件,或者更改文件中的内容如下



    
    
        

        
     
     
     
     

 

同时修改

//注释掉 v7的并添加 下面的import项
 #import android.support.v7.app.AppCompatActivity;
import android.app.Activity;

//注释掉 AppCompatActivity 的并添加 Activity 
//public class MainActivity extends AppCompatActivity implements SensorEventListener {
public class MainActivity extends Activity implements SensorEventListener {

}

然后mm编译 apk即可

转载于:https://my.oschina.net/kingchen8080/blog/2052486

你可能感兴趣的:(Android android studio 项目放在源码中编译)