Showing posts with label android. Show all posts
Showing posts with label android. Show all posts
2020-01-20
enable adb over tcpip
# enable adb over tcpip
$ adb tcpip 5555
or
$ adb -d tcpip 5555
# adb connect over tcpip
$ adb connect 192.168.35.9
$ adb -l
2019-09-25
[android] security patch error
# android security patch 중 다음과 같은 에러 발생
---
FAILED: out/soong/.intermediates/system/core/liblog/liblog/android_arm_armv7-a-neon_cortex-a7_core_shared/liblog.so.abidiff
(prebuilts/clang-tools/linux-x86/bin/header-abi-diff -allow-unreferenced-changes -allow-unreferenced-elf-symbol-changes -lib liblog -arch arm -o out/soong/.intermediates/system/core/liblog/liblog/android_arm_armv7-a-neon_cortex-a7_core_shared/liblog.so.abidiff -new out/soong/.intermediates/system/core/liblog/liblog/android_arm_armv7-a-neon_cortex-a7_core_shared/liblog.so.lsdump -old out/soong/.intermediates/system/core/liblog/liblog/android_arm_armv7-a-neon_cortex-a7_core_shared/liblog.so_ref.lsdump)|| (echo ' ---- Please update abi references by running platform/development/vndk/tools/header-checker/utils/create_reference_dumps.py -l liblog ----' && exit 1)
******************************************************
error: VNDK library: liblog's ABI has INCOMPATIBLE CHANGES Please check compatiblity report at : out/soong/.intermediates/system/core/liblog/liblog/android_arm_armv7-a-neon_cortex-a7_core_shared/liblog.so.abidiff
******************************************************
---- Please update abi references by running platform/development/vndk/tools/header-checker/utils/create_reference_dumps.py -l liblog ----
---
FAILED: out/soong/.intermediates/system/core/liblog/liblog/android_arm_armv7-a-neon_cortex-a7_core_shared/liblog.so.abidiff
(prebuilts/clang-tools/linux-x86/bin/header-abi-diff -allow-unreferenced-changes -allow-unreferenced-elf-symbol-changes -lib liblog -arch arm -o out/soong/.intermediates/system/core/liblog/liblog/android_arm_armv7-a-neon_cortex-a7_core_shared/liblog.so.abidiff -new out/soong/.intermediates/system/core/liblog/liblog/android_arm_armv7-a-neon_cortex-a7_core_shared/liblog.so.lsdump -old out/soong/.intermediates/system/core/liblog/liblog/android_arm_armv7-a-neon_cortex-a7_core_shared/liblog.so_ref.lsdump)|| (echo ' ---- Please update abi references by running platform/development/vndk/tools/header-checker/utils/create_reference_dumps.py -l liblog ----' && exit 1)
******************************************************
error: VNDK library: liblog's ABI has INCOMPATIBLE CHANGES Please check compatiblity report at : out/soong/.intermediates/system/core/liblog/liblog/android_arm_armv7-a-neon_cortex-a7_core_shared/liblog.so.abidiff
******************************************************
---- Please update abi references by running platform/development/vndk/tools/header-checker/utils/create_reference_dumps.py -l liblog ----
---
# 출력된 로그처럼 실행하면 또 에러 발생;;
$ development/vndk/tools/header-checker/utils/create_reference_dumps.py -l liblog
# 모델명을 파라미터로 넣어주면 정상적으로 업데이트 됨.
$ development/vndk/tools/header-checker/utils/create_reference_dumps.py -l liblog -products my_product
- 참고로 모델명은 lunch 파라미터와 동일.
TARGET_PRODUCT=my_product
Labels:
abi,
android,
create_reference_dumps.py,
patch,
security,
security patch,
update abi
2019-07-12
set time on android console
### display date
# date
Tue Jul 13 19:25:15 GMT 1999
# date +'%D %T'
07/13/99 19:25:00
### set date
# date 07131924
Sat Jul 13 19:24:00 GMT 2019
# date 07131924.45
Sat Jul 13 19:24:45 GMT 2019
# date 071319241999.23
Tue Jul 13 19:24:23 GMT 1999
### help
# date --help
usage: date [-u] [-r FILE] [-d DATE] [+DISPLAY_FORMAT] [-D SET_FORMAT] [SET]
Set/get the current date/time. With no SET shows the current date.
Default SET format is "MMDDhhmm[[CC]YY][.ss]", that's (2 digits each)
month, day, hour (0-23), and minute. Optionally century, year, and second.
Also accepts "@UNIXTIME[.FRACTION]" as seconds since midnight Jan 1 1970.
-d Show DATE instead of current time (convert date format)
-D +FORMAT for SET or -d (instead of MMDDhhmm[[CC]YY][.ss])
-r Use modification time of FILE instead of current date
-u Use UTC instead of current timezone
+FORMAT specifies display format string using strftime(3) syntax:
%% literal % %n newline %t tab
%S seconds (00-60) %M minute (00-59) %m month (01-12)
%H hour (0-23) %I hour (01-12) %p AM/PM
%y short year (00-99) %Y year %C century
%a short weekday name %A weekday name %u day of week (1-7, 1=mon)
%b short month name %B month name %Z timezone name
%j day of year (001-366) %d day of month (01-31) %e day of month ( 1-31)
%N nanosec (output only)
%U Week of year (0-53 start sunday) %W Week of year (0-53 start monday)
%V Week of year (1-53 start monday, week < 4 days not part of this year)
%D = "%m/%d/%y" %r = "%I : %M : %S %p" %T = "%H:%M:%S" %h = "%b"
%x locale date %X locale time %c locale date/time
usage: date [-u] [-r FILE] [-d DATE] [+DISPLAY_FORMAT] [-D SET_FORMAT] [SET]
Set/get the current date/time. With no SET shows the current date.
Default SET format is "MMDDhhmm[[CC]YY][.ss]", that's (2 digits each)
month, day, hour (0-23), and minute. Optionally century, year, and second.
Also accepts "@UNIXTIME[.FRACTION]" as seconds since midnight Jan 1 1970.
-d Show DATE instead of current time (convert date format)
-D +FORMAT for SET or -d (instead of MMDDhhmm[[CC]YY][.ss])
-r Use modification time of FILE instead of current date
-u Use UTC instead of current timezone
+FORMAT specifies display format string using strftime(3) syntax:
%% literal % %n newline %t tab
%S seconds (00-60) %M minute (00-59) %m month (01-12)
%H hour (0-23) %I hour (01-12) %p AM/PM
%y short year (00-99) %Y year %C century
%a short weekday name %A weekday name %u day of week (1-7, 1=mon)
%b short month name %B month name %Z timezone name
%j day of year (001-366) %d day of month (01-31) %e day of month ( 1-31)
%N nanosec (output only)
%U Week of year (0-53 start sunday) %W Week of year (0-53 start monday)
%V Week of year (1-53 start monday, week < 4 days not part of this year)
%D = "%m/%d/%y" %r = "%I : %M : %S %p" %T = "%H:%M:%S" %h = "%b"
%x locale date %X locale time %c locale date/time
2019-06-21
how to extract boot.img & recovery.img
출처 : https://unix.stackexchange.com/questions/64628/how-to-extract-boot-img
/*
download tools
*/
$ wget https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/android-serialport-api/android_bootimg_tools.tar.gz
/*
unpack recovery.img
*/
$ mkdir recovery
$ ./unpackbootimg -i recovery.img -o recovery
$ cd recovery
$ mkdir ramdisk
$ cd ramdisk
$ gunzip -c ../recovery.img-ramdisk.gz | cpio -i
2019-03-21
DEVICE_PACKAGE_OVERLAYS, PRODUCT_PACKAGE_OVERLAYS
### DEVICE_PACKAGE_OVERLAYS, PRODUCT_PACKAGE_OVERLAYS
1. mk 파일에 overlay 폴더 지정.
DEVICE_PACKAGE_OVERLAYS += device_overlay_folder
PRODUCT_PACKAGE_OVERLAYS += product_overlay_folder
2. DEVICE_PACKAGE_OVERLAYS와 PRODUCT_PACKAGE_OVERLAYS에 동일한 item이 존재할 경우, PRODUCT_PACKAGE_OVERLAYS 의 내용이 적용됨.
3. PRODUCT_PACKAGE_OVERLAYS에 동일한 item이 존재할 경우, 앞의 item 값이 적용됨.
예) 다음과 같이 folder1,2가 순서대로 overlay되고, 두 폴더내에 동일한 item이 있을 경우, folder1의 값이 적용됨.
PRODUCT_PACKAGE_OVERLAYS += product_overlay_folder1
PRODUCT_PACKAGE_OVERLAYS += product_overlay_folder2
4. DEVICE_PACKAGE_OVERLAYS에 동일한 item이 존재할 경우, 앞의 item값이 적용됨.
### overlays 적용 후 확인 방법
1. frameworks/... 하위 폴더 내용
- target의 system/framework/framework-res.apk 파일에 적용됨.
- apktool로 framework-res.apk unpack 후 내용 확인.
download : https://ibotpeaches.github.io/Apktool/
unpack :
$ apktool d framework-res.apk
$ java -jar ~/bin/apktool.jar d framework-res.apk
2019-03-08
mount ex4 image file
# ext4 이미지 파일을 mount 하는 방법
$ mount -t ext4 -o loop image_ext4.raw /mnt/ext4_target
@ read-only 마운드
$ mount -t ext4 -o loop,ro image_ext4.raw /mnt/ext4_target
$ ./simg2img system.img image_ext4.raw
2019-01-15
[android] kernel boot parameter to propery
참고 : system/core/init/init.cpp
/proc/cmdline 의 androidboot.xxx=yyy 는 ro.boot.xxx=yyy 로 propery 세팅 됨.
Labels:
android,
androidboot,
boot parameter,
cmdline,
kernel,
property,
ro.boot
2018-11-06
add-radio-file for android recovery
# update package file(update.zip)에 기타 파티션(예, bootloader)를 추가 방법.
makefile에 다음과 같이 추가.
$(call add-radio-file,bootloader.img)
- INSTALLED_RADIOIMAGE_TARGET += bootloader.img
- $(LOCAL_PATH)/bootloader.img를 $(PRODUCT_OUT)/bootloader.img 로 복사
$(call add-radio-file,folder/bootloader.img)
- INSTALLED_RADIOIMAGE_TARGET += bootloader.img
- $(LOCAL_PATH)/folder/bootloader.img를 $(PRODUCT_OUT)/bootloader.img 로 복사
# 다른 방법
makefile에 아래 동작 추가
- INSTALLED_RADIOIMAGE_TARGET += bootloader.img
- bootloader.img를 $(PRODUCT_OUT)/bootloader.img에 복사
Labels:
android,
bootloader,
recovery,
update.zip
2018-11-01
re-mount system & vendor partition rw mode on android
### w/ console, adb shell or terminal
@ re-mount system partition rw option
// Android Pie (9.0)
# mount -o rw,remount /
// Android Oreo
# mount -o rw,remount /system
@ re-mount vendor partition rw option
# mount -o rw,remount /vendor
### w/ adb
$ adb connect
$ adb root
$ adb connect
@ re-mount system & vendor partition rw option
$ adb remount
2018-10-23
preferred activities
@ xml path
/system/etc/preferred-apps/preferred-activities-home.xml
/data/system/users/0/package-restrictions.xml
@ source code
frameworks/base/services/core/java/com/android/server/pm/Settings.java
@ reference site
https://stackoverflow.com/questions/34073290/set-default-application-on-aosp
https://github.com/opengapps/all/blob/master/etc/preferred-apps/google.xml
Labels:
activity,
android,
default,
preferred activities
2018-10-15
android - init.rc
on late-init
trigger early-fs
trigger fs
trigger post-fs
trigger late-fs
trigger post-fs-data
trigger early-boot
trigger boot
on boot
class_start hal
class_start core
Subscribe to:
Posts (Atom)