当前位置:首页 » 安卓系统 » mtkandroid编译

mtkandroid编译

发布时间: 2022-08-15 22:34:19

Ⅰ mtk怎么加入官方android demo的读写方法

我们也可以编译成android版本,只需要修改Makefile中间的CC编译器的定义就可以,是的CC指向你的android编译工具,这个工具是安装NDK时候带的。例如我的系统做如下修改
==========================================================
# I2C tools for Linux
#
# Copyright (C) 2007-2012 Jean Delvare <[email protected]>
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the L

Ⅱ mtk平台修改init.rc后如何快速编译啊

修改init.rc文件后,一般只需要做以下快速编译即可生成新文件。
./mk bootimage

Ⅲ MTK 怎么把apk自带的so文件编译到rom里边

一般情况下,MTK 文档上面是有这个说明的,要把apk中的so文件,放到alpsvendormediatekckt72_wet_jb3artifactsout argetproctckt72_wet_jb3systemlib 里边。注释 ckt72_wet_jb3 是项目名字,但是这里会有一个Bug。就是当你不再用第三方apk的时候,这个so文件依旧会打包进去到rom里边,如果你累计的so文件过大的话,rom就会变大,会影响内存运行的。这个时候,我们要想一个办法解决才行。

如图所示 建立这样的目录。lib里边放的是apk里边的so文件,Android.mk文件里面的内容如下

LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := feizai
LOCAL_MODULE_TAGS := optional
LOCAL_SRC_FILES := $(LOCAL_MODULE).apk
LOCAL_MODULE_CLASS := APPS
LOCAL_MODULE_SUFFIX := $(COMMON_ANDROID_PACKAGE_SUFFIX)
LOCAL_CERTIFICATE := PRESIGNED

PRODUCT_COPY_FILES += $(LOCAL_PATH)/lib/libabenchmark.so:system/lib/libabenchmark.so
include $(BUILD_PREBUILT)

如果你apk的so文件不止一个,如下添加

PRODUCT_COPY_FILES+=
$(LOCAL_PATH)/libem_aitalk5.so:system/lib/libem_aitalk5.so
$(LOCAL_PATH)/libspeechmsc.so:system/lib/libspeechmsc.so
$(LOCAL_PATH)/libttsaisound.so:system/lib/libttsaisound.so
$(LOCAL_PATH)/libvadLib.so:system/lib/libvadLib.so

0

Ⅳ Android编译版本eng,user和userdebug的区别

Android编译版本eng、user和userdebug的区别:
一、Android官网的解释
eng This is the default flavor. A plain make is the same as make eng.
* Installs moles tagged with: eng, debug, user, and/or development.
* Installs non-APK moles that have no tags specified.
* Installs APKs according to the proct definition files, in addition to tagged APKs.
* ro.secure=0
* ro.debuggable=1
* ro.kernel.android.checkjni=1
* adb is enabled by default.
* Setupwizard is optional
user make user
This is the flavor intended to be the final release bits.
* Installs moles tagged with user.
* Installs non-APK moles that have no tags specified.
* Installs APKs according to the proct definition files; tags are ignored for APK moles.
* ro.secure=1
* ro.debuggable=0
* adb is disabled by default.
* Enable dex pre-optimization for all TARGET projects in default to speed up device first boot-up
userdebug make userdebug
The same as user, except:
* Also installs moles tagged with debug.
* ro.debuggable=1
* adb is enabled by default.
二、对编译版本MTK的补充说明
MTK 补充说明差异:(
(1) Debug/LOG 方面,原则上user 版本只能抓到有限的资讯,eng 可以抓到更多的资讯,Debug 能力更强,推崇使用eng 版本开发测试
* 因user/eng 版本设置ro.secure不同,导致user 版本adb 只拥有shell 权限,而eng 版本具有root 权限
* MTK System LOG 在ICS 以后,在user 版本默认关闭全部LOG, 在eng 版本中默认打开,以便抓到完整的资讯
* 在eng 版本上,LOG 量 >= user 版本的log 量,一些地方会直接check eng/user 版本来确认是否打印LOG
* user 版本默认关闭uart, eng 版本默认开启uart
* 在eng 版本上,开启ANR 的premp, 会抓取ftrace,可以得到更多ANR的资讯
* 在eng 版本上,可用rtt 抓取backtrace,可开启kdb 进行kernel debug, 可用ftrace 抓取cpu 执行场景
* MTK aee 在ENG 版本抓取更多的异常资讯,比如native exception 会抓取core mp 信息
(2) 性能方面,原则上进行性能测试请使用user 版本测试
* user 版本为提高第一次开机速度,使用了DVM 的预优化,将dex 文件分解成可直接load 运行的odex 文件,ENG 版本不会开启这项优化
* 更少的LOG 打印,uart 的关闭,原则上user 版本的性能要优于eng 版本
(3) 如何确认user/eng 版本
* java 层,check android.os.Build 类中的TYPE 值
* native 层,property_get("ro.build.type", char* value, "eng"); 然后check value 值
* Debug 时, adb shell getprop ro.build.type 返回值如果是user 即user 版本,eng 即eng 版本
* Log 确认, mobile log/Aplog_xxxxx/versions 中查看ro.build.type 属性
(4) 如何编译user/eng 版本
* 默认编译是eng 版本,如果需要编译user 版本,请加入参数 -o=TARGET_BUILD_VARIANT=user 如:
./mk -o=TARGET_BUILD_VARIANT=user mt6577_phone new
default.prop和/system/build.prop
三、编译版本与ADB、root的控制关系
1. root权限:adb.c中与属性ro.kernel.qemu(是否是模拟器)、ro.secure、ro.debuggable、service.adb.root几个相关联。
service.adb.root : services.c -> restart_root_service()中设置
build/core/main.mk的如下地方决定了了ro.secure和ro.debuggable的值
user_variant := $(filter user userdebug,$(TARGET_BUILD_VARIANT))
enable_target_debugging := true
tags_to_install :=
ifneq (,$(user_variant))
# Target is secure in user builds.
ADDITIONAL_DEFAULT_PROPERTIES += ro.secure=1
...
else # !user_variant
# Turn on checkjni for non-user builds.
ADDITIONAL_BUILD_PROPERTIES += ro.kernel.android.checkjni=1
# Set device insecure for non-user builds.
ADDITIONAL_DEFAULT_PROPERTIES += ro.secure=0
# Allow mock locations by default for non user builds
ADDITIONAL_DEFAULT_PROPERTIES += ro.allow.mock.location=1
endif # !user_variant
ifeq (true,$(strip $(enable_target_debugging)))
# Target is more debuggable and adbd is on by default
ADDITIONAL_DEFAULT_PROPERTIES += ro.debuggable=1
# Include the debugging/testing OTA keys in this build.
INCLUDE_TEST_OTA_KEYS := true
else # !enable_target_debugging
# Target is less debuggable and adbd is off by default
ADDITIONAL_DEFAULT_PROPERTIES += ro.debuggable=0
endif # !enable_target_debugging
## eng ##
...
endif
2. 是否开启adbd服务:UsbDeviceManager.java中与属性persist.sys.usb.config、sys.usb.config、persist.service.adb.enable几个相关联
persist.sys.usb.config:/build/tools/post_process_props.py中根据ro.debuggable来设置persist.sys.usb.config的初始值
sys.usb.config:UsbDeviceManager.java -> setUsbConfig
文件init.clippers.usb.rc中监听了sys.usb.config属性变化时的动作
on property:sys.usb.config=adb

Ⅳ 如何学习MTK 编译android系统的framework层源码,需要看一些什么文档,最近在公司需要学习、

mtk有个叫makeMtk的脚本文件,直接执行就行,后面参数加上自己要编译的模块,比如./makeMtk -t mm frameworks/base/core/res

Ⅵ 后缀是MTK的文件如何编辑

编辑窗口(开始->运行->cmd) ,找到工程代码所在根目录,如optMTK6217 输 入编译。
_BM其实是BMP改了扩展名后得来的,是MTK推荐 的文件类型,而MTK默认会把一些经常调用的BMP图片直接转为PBM,虽然在文件上看来他还是BMP,但在编译时MTK会修改。
_TK 文件与 一 种文件类型相关联,可以使用 Adlib Tracker II 开发的 Adlib Tracker II查看。 总的来说,这种格式与 二 种已知的软件应用程序相关联。

Ⅶ 手机方案公司需要在mtk工程源码编译后将apk预装到system/app目录下如何操作

在 Android 中,如果要使用系统限制的权限(比如 android.permission.WRITE_SECURE_SETTINGS),我们需要把程序安装到 /system/app/ 下。

下面以 SecureSetting.apk 为例,演示这个操作。需要准备一台已经获得 Root 权限的手机。

1、通过 USB 连接手机和电脑。

2、使用 adb 控制手机。

源码打印?

1. $ adb push SecureSetting.apk /sdcard/ // 上传要安装的文件,为安装做准备。
2. $ adb shell
3. $ su // 切换到 root 用户。如果没有获得 Root 权限,这一步不会成功。
4. # mount -o remount,rw -t yaffs2 /dev/block/mtdblock3 /system // 让分区可写。
5. # cat /sdcard/SecureSetting.apk > /system/app/SecureSetting.apk // 这一步可以用 cp 实现,但一般设备中没有包含该命令。如果使用 mv 会出现错误:failed on '/sdcard/NetWork.apk' - Cross-device link。
6. # mount -o remount,ro -t yaffs2 /dev/block/mtdblock3 /system // 还原分区属性,只读。
7. # exit
8. $ exit

$ adb push SecureSetting.apk /sdcard/ // 上传要安装的文件,为安装做准备。
$ adb shell
$ su // 切换到 root 用户。如果没有获得 Root 权限,这一步不会成功。
# mount -o remount,rw -t yaffs2 /dev/block/mtdblock3 /system // 让分区可写。
# cat /sdcard/SecureSetting.apk > /system/app/SecureSetting.apk // 这一步可以用 cp 实现,但一般设备中没有包含该命令。如果使用 mv 会出现错误:failed on '/sdcard/NetWork.apk' - Cross-device link。
# mount -o remount,ro -t yaffs2 /dev/block/mtdblock3 /system // 还原分区属性,只读。
# exit
$ exit

Ⅷ android如何把apk的工程代码放到源码目录下编译

啥平台的,是原生的还是高通的还是mtk的?反正都类似,你需要一个Android.mk然后源码需要整体new过。然后编译的时候编译到Android.mk所在目录就可以了。反正我现在接触mtk平台的,new代码方法如下:1、首先到XXXXXX/L23_XXXXXXX_AN5.1_MT6735_65C_L1.MP3.V1.8.9_150503/android_mtk_6753_mp目录下,使用如下命令./TmakeGionee
BFL7506A
-p
packages/apps/XXXXX(XXXXXX就是你apk代码所存放的并且与Android.mk同级的目录)。

Ⅸ android modem模块怎么编译

(1)MT6577以及之前的chip平台(如MT6575,73等) 的modem编译环境和MTK的Feature Phone的编译环境一样,即Windows+RVCT
(2)从MT6589开始,modem编译环境已经切换到Linux OS + GCC[KEYWORD]modem编译[SOLUTION]
(1)MT6577以及之前的chip平台的modem编译环境文档,请到DCC上搜索
MTK_MakeBuild_Design_Customer.docx
,该文档详细介绍环境搭建和编译流程介绍。
(2)MT6589以及后续chip的modem编译环境参考文档,请到DCC上搜索
该文档详细介绍环境搭建和编译流程介绍。

热点内容
结构体访问成员变量 发布:2025-01-17 04:32:09 浏览:30
热点缓存 发布:2025-01-17 04:30:07 浏览:522
砂的细度算法 发布:2025-01-17 04:22:58 浏览:980
安卓系统的隐私空间在哪里 发布:2025-01-17 04:22:49 浏览:591
web工程编译 发布:2025-01-17 04:21:27 浏览:159
阿里云存储混合云存储 发布:2025-01-17 04:12:10 浏览:565
腾讯编译面试 发布:2025-01-17 04:11:27 浏览:872
python虚拟环境开发 发布:2025-01-17 04:04:34 浏览:690
编译运行后保存exe文件 发布:2025-01-17 04:00:18 浏览:565
asm源码编译 发布:2025-01-17 03:54:24 浏览:287