Android.mk - include prebuilt apk with splitted resource apk - LineageOS Questions & Answers

Hi @All,
i'm using a custom vendor tree for my rom with some apk's which will be included directly into my rom during build.
here is a sample (part) of my android.mk of my gapps vendor tree:
Code:
include $(CLEAR_VARS)
LOCAL_MODULE := GoogleMaps
LOCAL_SRC_FILES := app/$(LOCAL_MODULE).apk
LOCAL_MODULE_SUFFIX := $(COMMON_ANDROID_PACKAGE_SUFFIX)
LOCAL_MODULE_CLASS := APPS
LOCAL_CERTIFICATE := PRESIGNED
include $(BUILD_PREBUILT)
And now the funny part: Since longer time apks from some dev's including (google) ae splittet to a primary apk without special resourcs like dpi realted stuff or lang packs. This parts are delivered as seperated resource apk's while for example downloading from play store.
Ho can i included this special resource apk's ?
I know they must be located in same folder - for example if Google Maps:
primary apk location:
Code:
/system/app/GoogleMaps/GoogleMaps.apk
Than the german lang pack must be located this way:
Code:
/system/app/GoogleMaps/split.config.de.apk
Does anybody know the working solution to include the resource apk inside the android.mk (copy file breaks cause it's identified as apk) - i didn't found a solution...
Thx

Use
Code:
LOCAL_PACKAGE_SPLITS := split.config.de.apk split.config.mdpi.apk
For example, all of splits can be listed in that variable.
Unfortunately, during build, system will try to sign split apks even if PRESIGNED flag is specified. Solution is to remove signing rules in prebuilt_internal.mk.
Seems that using prebuilt split apps isn't supported for building android. Only building and installing split apks from sources (Take a look on "Split" app inside frameworks/tests folder).

Related

[unofficial NIGHTLY ROMS] - Source build machine+GUIDES!!

Here is example of what i have done with codenameandroid source.
First thanks to Trojan38 for helping with this.
I created folder CNA in my home folder.
repo init -u https://github.com/CNA/android_manifest.git -b jellybean
repo sync
After repo is synced i copied local_manifest.xml from cm10 to include galaxysmtd into source three.
This file can be found in .repo folder.When u open you repo folder you have to enable Show hidden files.
Code:
<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<project name="CyanogenMod/android_device_samsung_galaxysmtd" path="device/samsung/galaxysmtd" remote="github" revision="jellybean" />
<project name="CyanogenMod/android_packages_apps_SamsungServiceMode" path="packages/apps/SamsungServiceMode" remote="github" revision="jellybean" />
<project name="CyanogenMod/android_device_samsung_aries-common" path="device/samsung/aries-common" remote="github" revision="jellybean" />
<project name="CyanogenMod/android_kernel_samsung_aries" path="kernel/samsung/aries" remote="github" revision="jellybean" />
<project name="CyanogenMod/android_hardware_samsung" path="hardware/samsung" remote="github" revision="jellybean" />
</manifest>
Also you have to copy these 2 folders from cm10 repo:
/vendor/samsung/aries-common
/vendor/samsung/galaxysmtd
Then go to folder /vendor/cna
Open file vendorsetup.sh
Add lunch combo for galaxysmtd like on code bellow:
Code:
add_lunch_combo cna_crespo-userdebug
add_lunch_combo cna_crespo4g-userdebug
add_lunch_combo cna_grouper-userdebug
add_lunch_combo cna_maguro-userdebug
add_lunch_combo cna_stingray-userdebug
add_lunch_combo cna_stingray_cdma-userdebug
add_lunch_combo cna_toro-userdebug
add_lunch_combo cna_toroplus-userdebug
add_lunch_combo cna_umts_everest-userdebug
add_lunch_combo cna_wingray-userdebug
add_lunch_combo cna_d2att-userdebug
add_lunch_combo cna_d2spr-userdebug
add_lunch_combo cna_d2tmo-userdebug
add_lunch_combo cna_d2usc-userdebug
add_lunch_combo cna_d2vzw-userdebug
add_lunch_combo cna_i9300-userdebug
add_lunch_combo cna_galaxysmtd-userdebug
Then go to folder /vendor/cna/products
Create file cna_galaxysmtd.mk
File should look like this
Code:
$(call inherit-product, device/samsung/galaxysmtd/full_galaxysmtd.mk)
# Inherit some common stuff.
$(call inherit-product, vendor/cna/config/common_full_phone.mk)
# Inherit some common stuff.
$(call inherit-product, vendor/cna/config/gsm.mk)
PRODUCT_COPY_FILES += \
vendor/cna/prebuilt/hdpi/bootanimation.zip:system/media/bootanimation.zip
# Release name
PRODUCT_RELEASE_NAME := GT-I9000
PRODUCT_BUILD_PROP_OVERRIDES += PRODUCT_NAME=GT-I9000 BUILD_FINGERPRINT="samsung/GT-I9000/GT-I9000:2.3.5/GINGERBREAD/XXJVT:user/release-keys" PRIVATE_BUILD_DESC="GT-I9000-user 2.3.5 GINGERBREAD XXJVT release-keys"
PRODUCT_NAME := cna_galaxysmtd
PRODUCT_DEVICE := galaxysmtd
PRODUCT_BRAND := samsung
PRODUCT_MODEL := GT-I9000
PRODUCT_MANUFACTURER := samsung
In that same folder open file AndroidProducts.mk
File should look like this
Code:
PRODUCT_MAKEFILES := \
$(LOCAL_DIR)/cna_crespo.mk \
$(LOCAL_DIR)/cna_crespo4g.mk \
$(LOCAL_DIR)/cna_grouper.mk \
$(LOCAL_DIR)/cna_maguro.mk \
$(LOCAL_DIR)/cna_stingray.mk \
$(LOCAL_DIR)/cna_stingray_cdma.mk \
$(LOCAL_DIR)/cna_toro.mk \
$(LOCAL_DIR)/cna_toroplus.mk \
$(LOCAL_DIR)/cna_umts_everest.mk \
$(LOCAL_DIR)/cna_wingray.mk \
$(LOCAL_DIR)/cna_d2att.mk \
$(LOCAL_DIR)/cna_d2spr.mk \
$(LOCAL_DIR)/cna_d2tmo.mk \
$(LOCAL_DIR)/cna_d2usc.mk \
$(LOCAL_DIR)/cna_d2vzw.mk \
$(LOCAL_DIR)/cna_i9300.mk \
$(LOCAL_DIR)/cna_galaxysmtd.mk \
Then do another repo sync.
Then build like this:
. build/envsetup.sh
lunch (choose galaxysmtd)
mka squish
This is how my manifest file looks like.It includes some part of code from CM10.
You can download it from this location.File is default.xml
https://drive.google.com/#folders/0Bw09xjTGhT_HeHF1OVpNYnNwTmM
Want to include something from source into your builds?
For example i want to include DSPManager form CM10 into CNA build.
I will open default.xml file(manifest file) on this location .repo/manifests
Add this line into file
Code:
<project path="packages/apps/DSPManager" name="CyanogenMod/android_packages_apps_DSPManager" remote="github" revision="jellybean" />
Go to folder /build/target/product and open file core.mk
Add DSPManager like in code bellow at beggining of the file.
Code:
PRODUCT_BRAND := generic
PRODUCT_DEVICE := generic
PRODUCT_NAME := core
PRODUCT_PROPERTY_OVERRIDES := \
ro.config.notification_sound=Proxima.ogg \
ro.config.alarm_alert=Cesium.ogg
PRODUCT_PACKAGES := \
ApplicationsProvider \
BackupRestoreConfirmation \
Browser \
Contacts \
ContactsProvider \
DSPManager \
DefaultContainerService \
DownloadProvider \
DownloadProviderUi \
Like this all your builds for all devices will have DSP Manager included.
GUIDES!
Want to build from source?​
Want to build CM10 from source.Here it is:
http://forum.xda-developers.com/showthread.php?t=1813924
This is good start for everyone.In link above you have a everything you need to set up your android enviroment.
Things that are not in this guide is:
Do not log on to machine as root.Use account created during install and use sudo commands in terminal.
Place all your work in home folder.
For example this is how i set my build machine.
In my home folder i created folder android.In that folder i create folders:aokp and cm10.
Yes,you can have different repo's on one machine.
Want to build AOKP from source.Here it is:
Create separate folder (for example AOKP).
Go to terminal and navigate to that folder.
Then type:
repo init -u https://github.com/AOKP/platform_manifest.git -b jb-mr1
repo sync
Download files local_manifest.xml and galaxysmtd.mk and folder aries-common from here http://rootaxbox.no-ip.org/malcho/AOKP%20Beast/
Local_manifest.xml goes to .repo folder(you have to enable Show hidden files and folders).
galaxysmtd.mk file goes to vendor/aokp/products
aries -common folder goes to vendor/aokp/overlay
In folder vendor/aokp/products add this to AndroidProducts.mk file.
$(LOCAL_DIR)/galaxysmtd.mk
In folder vendor/aokp add this to vendorsetup.sh file.
add_lunch_combo aokp_galaxysmtd-userdebug
repo sync
. build/envsetup.sh
lunch
choose galaxysmtd
make bacon
ROM wil be in folder /out/target/product/galaxysmtd
Want to build BAKED from source.Here it is:
Create separate folder (for example BAKED).
Go to terminal and navigate to that folder.
Then type:
repo init -u https://github.com/TeamBAKED/platform_manifest.git -b jb
repo sync
. build/envsetup.sh && lunch baked_galaxysmtd-userdebug && mka bacon
TeamBaked Github for tracking changes:
https://github.com/TeamBAKED
Want to build PARANOID from source.Here it is:
Create separate folder (for example paranoid).
Go to terminal and navigate to that folder.
Then type:
repo init -u git://github.com/ParanoidAndroid/manifest.git -b jellybean
Go to folder.On drop menu select menu View and option Show hidden files and folders.
Then folder .repo will appear.Go to folder manifests.
Open file default.xml with gedit.
Erase bolded line(Paranoid preference)
<project path="packages/apps/PackageInstaller" name="CyanogenMod/android_packages_apps_PackageInstaller" />
<project path="packages/apps/ParanoidPreferences" name="android_packages_apps_paranoidpreferences" remote="paranoid" revision="jellybean" />
<project path="packages/apps/ParanoidWallpapers" name="ParanoidAndroid/android_packages_apps_ParanoidWallpapers" />
Go back to folder .repo.
Copy local_manifest.xml from cm10 repo.This needs to be done to sync galaxys files.
repo sync
./rom-build.sh galaxysmtd
ParanoidAndroid github for tracking changes:
https://github.com/ParanoidAndroid
Want to build SLIM from source.Here it is:
Create separate folder (for example slimroms).
Go to terminal and navigate to that folder.
repo init -u git://github.com/SlimRoms/platform_manifest.git -b jb
repo sync
Do initial build for galaxysmtd
. build/envsetup.sh
lunch
choose galaxys i think number 16
make -j4 bacon
Error will appear.
Go to folder
/slimroms/kernel/samsung/ics-ramdisk from terminal
tar zxvf jb_combo.tar.gz
tar zxvf jb_combo_c.tar.gz
tar zxvf jb_combo_v.tar.gz
go to folder
/slimroms/kernel/samsung/samsung-kernel-aries/arch/arm/configs
Open file semaphore_galaxys_defconfig with text editor
type in terminal id enter in file your ID and GID.
Make shure the path is correct to your jbcombo.
CONFIG_INITRAMFS_SOURCE="~/android/slimroms/kernel/samsung/ics-ramdisk/jb_combo_c/"
CONFIG_INITRAMFS_ROOT_UID=1000
CONFIG_INITRAMFS_ROOT_GID=1000
Go back to your root folder slimroms.
. build/envsetup.sh
lunch
choose galaxys i think number 16
make -j4 bacon
SlimRoms github for tracking changes:
https://github.com/SlimRoms
EXAMPLE HOW TO TRACK CHANGES:
All patches and changes for cm10 rom goes to this site:
http://review.cyanogenmod.com/#/q/statuspen,n,z
These patch have status open and goes to review.When file is reviewed and approved it goes to status merged.That means that file is now at this site:
https://github.com/CyanogenMod
All patches and changes for aokp rom goes to this site:
http://gerrit.sudoservers.com/#/q/status:open,n,z
These patch have status open and goes to review.When file is reviewed and approved it goes to status merged.That means that file is now at this site:
https://github.com/AOKP
When u do repo sync you practicaly download all files from github site.
Example of my build script.Script do sync repo's and build.
Code:
cd ~/android/cm10
repo sync
cd ~/android/aokp
repo sync
cd ~/android/cm10
rm -rf ~/android/cm10/out/target/product/galaxysmtd
. build/envsetup.sh && brunch galaxysmtd
cd ~/android/aokp
rm -rf ~/android/aokp/out/target/product/galaxysmtd
. build/envsetup.sh && brunch galaxysmtd
You can run script with bash -x parametar to see output.
bash -x reposyncbulid.sh
CHERRY PICKING GUIDE IN PDF IN ATTACHMENT!
TEST ROMS BUILT FROM SOURCE​
DISCONTINUED!!!!
Credits and thanks to:teamkang for source and guide,perka for guide,mialwe,stratosk,DerTeufel1980,lippol94,sixstingsgs,kasper_h,
kosako17,pmos69,prbassplayer,krarvind,aways,droidjam and all others on XDA from which i learned alot!Special thanks to bhu1 and franzyroy!
I love this thread... Thanks!!
only 3 ROMs ?... add more...
i flash 3 roms in a day...that`s nothing...
post cm7, miui, aosp and the other newly added
Give GingerReal a try too. It's great and keeps me coming back.
Yet another variant on the best rom thread! Zzzzz
Insanity cm 014/glitch
ROM, I like darky's rom at froyo time but now at gb time, I prefer either juwe's for performance or tweaky's for features.
Kernel, speedmod for froyo. Talon for gb.Talon's under dev but has been using 1.2kmhz for weeks and vy stable n vy fast.
Sent from my GT-I9000 using XDA Premium App
First I was a big fan of darky's roms, but I just got sick of all the green themes.
The perfect rom for me?
Juwe's smart edition 5.0
As the OP says, It's just great. Fast, Long battery life and looks great
Using it with the semaphore kernel.
I've been testing stock roms for a long time with custom kernels, specially Speedmod or Fugu. Now I'm fully on Cyanogenmod 7 with stock kernel. The stock rom provides stability and standard perfomance, CM7 provides full power over the phone at the cost of some bug or glitches.
I'm also back to stock Ramad JVP deodexed rom.Last night i've flashed Galaxian kernel to see how it works.Had some trouble with bluetooth and GPS butt now it's solved.
Damn,this kernel is fast.I choose default in voltage control(1000Mhz) and applied all tweaks.Phone is flying.
I prefer tweaky's features n apps, juwe's speed n battery life. I am using talon's kernel, its great.
Sent from my GT-I9000 using XDA Premium App
Like many others I tried many custom roms and kernels before concluding that the fastest and most stable with great battery life and speed are brotuck s rom and damian s kernel. On jvp and getting scores of 3500 with quadrant, about 800 higher than any other combination of custom mix and about 2000 points higher than just stock jvp.
Sent from my GT-I9000 using XDA App
I'm missing the speedmod kernel...
I think it's a great kernel, you should try it!
Maybe i will try speedmod why not.I'm returned now to semaphore from galaxian i had a problems with wifi and bluetooth.
Followed your advice; additional questions
Hi Malcho,
I followed your advice and installed EDB 1.2. First impressions are good (but they were good also with F1 Galaxy S2 V6 ....).
A few questions/remarks:
- how do you get 4 days of battery life? Thats about double of what i ever got by hardly using the phone at all.... I'm highly suspicious about this claim and will find out in the next couple of days
- how do i "... remove darky ram script and implemented juwe ram scripts" and what has been the benefit in your experience?
General remark: in my experience the performance of the various Roms (i've tried Stock JVP, F1 Galaxy, EDB with kernels Darky, Speedmod, Galaxian, Fugu) is getting more and more equal in terms of speed and feel. Of course Galaxian seems flying, but running at 1.4 Ghz is foul play in that respect
In my opinion we seem to have come to a point where ROMs have reached their optimum. Whats your opinion?
I turn of wifi and data connections when i don't using it.GPS is allways off.I turn off Auto sync in google account i manually sync contacts and gmail.I turn off back my data in Privacy tab.I use 2G instead off 3G.And i keep my brightness at 10%.Thats it.
If your phone is rooted use root explorer and navigate to folder /etc/init.d.I that folder you have a script under number S98 i think.Remove it.You have to mount that folder as rw.
Then download juwe script and flash it through CWM.You will notice speed of the phone.
I agree with you the roms are in the optimum butt we can except improvements in modems,kernels and other stuffs maybe themes.
I hope that this is the good answer for you.
Hi Malcho, thanks al lot for the quick answer. Now i know what init.d support means in kernels
Regarding battery: i lost 55% in 8 hours, but that is not a surprise considering:
- i have 3G, Wifi, Bluetooth, GPS turned on all the time
- auto sync is off, and is turned on every 4 hours for 5 minutes with the help of Tasker
- 50% of the battery usage is Display on auto-brightness (running time 42 minutes). Auto brightness levels have increased considerably since Gingerbread in my experience,
- 19% of the battery usage in tallk time (22 minutes)
- Wifi is 7%, Android is 7%, Mobile is 6%
So it's display that uses the most power, when i was using Speedmod kernels with lowered brightness, my average battery life was much higher, no wonder. Turning off GPS has never made a difference for me, turning off BT hardly. I do experience larger drains on 3G compared to Wifi.
Plus i have a feeling i need to calibrate the battery , havent done so in +10 ROM/Kernels flashes.
Like in most of linux distribution /etc/init.d is folder for startup scripts..
With your setting yours battery life is ok.As expected.I have a friend how use the same setting as you he says that he can be two days on battery.
Yes you should recalibrate battery.
I recently installed F1 JVP which comes with speedmod-kernel.
Phone went terribly slow and laggy (with lagfix enabled) very soon.
Also I had the Android OS-battery drain issue (speedmod is JVH-based).
So I flashed DarkCore-2.7.3 (since it's based on the JVP-kernel).
Battery-drain is gone, and the phone is fast again.
WRT to AndroidOS-battery-drain-bug, in 2.3.3 only DarkCore and Fugu got it fixed afaik.
In 2.3.4 (JVP+) it seems to be fixed for good. So I'd never use any 2.3.3-based kernel anymore.

Unable to compile ROMS with SnapDragon Clang !

I am unable make use of the SDClang compiler on my
oneplus3 even after setting TARGET_USE_SDCLANG=true in my device's Boardconfig.mk and placing the sdclang-3.8 toolchain in prebuilts/clang/linux-x86/host . any help would be highly appreciated .
The image I'm providing should show the compiler used as sdclang-3.8.7 llvm , but instead of using qClang , it is using aClang (that is the default compiler for CM14.1)
1. Download the Qualcomm LLVM Compiler here: https://developer.qualcomm.com/download/sdllvm/snapdragon-llvm-compiler-...
2. Extract Snapdragon-llvm-3.8.4-toolchain.tar.gz
3. Move toolchains\llvm-Snapdragon_LLVM_for_Android_3.8\prebuilt\linux-x86_64 to prebuilts/clang/linux-x86/host/sdclang-3.8 within your Android build environment.
4. Add the following lines to your device's BoardConfig:
ifneq ($(HOST_OS),darwin)
SDCLANG := true
SDCLANG_PATH := prebuilts/clang/linux-x86/host/sdclang-3.8/bin
SDCLANG_LTO_DEFS := device/qcom/common/sdllvm-lto-defs.mk
endif
5. Compile Android
https://developer.qualcomm.com/qfile/26662/snapdragon-llvm-4.0.2-linux64.tar.gz
https://developer.qualcomm.com/qfile/26953/readme-install-snapdragon-llvm-402.pdf
https://mega.nz/#!PRth0LAQ!_24MF8BqqDQdGrPcTy7VRm8MpnrKYDBtrnMmQjGk_RA
https://mega.nz/#!jFEVBDZa!hxXIfxTrwgwJ79JCW3bKiZ6ltum7OOqpyMuEbQaw74o
厉害了,还是不能编译

[LineageOS Building Question]Custom third party APKs: How to add them to source code?

Hi to all!
I'm building Lineage OS for my device. I added some third party app to my source code: I put apk in a folder in the directory /packages/apps, I added all the apk's name in /vendor/cm/config/common.mk and also within /build/target/core.mk, but the building process doesn't see them and it doesn't include them in the ROM package.
I followed many guides, but all of them failed on this, so I think i'm forgetting something.
There is a method to add third party app to the source code?
Gabrius99 said:
Hi to all!
I'm building Lineage OS for my device. I added some third party app to my source code: I put apk in a folder in the directory /packages/apps, I added all the apk's name in /vendor/cm/config/common.mk and also within /build/target/core.mk, but the building process doesn't see them and it doesn't include them in the ROM package. I followed many guides, but all of them failed on this, so I think i'm forgetting something. There is a method to add third party app to the source code?
Click to expand...
Click to collapse
Try asking within the following thread since it involves how to build a custom ROM from Source Code to End.
http://forum.xda-developers.com/showthread.php?t=2814763
They should be able to either help you out or guide you in the right direction as to where to find the answer.
"Live Long and Prosper..."
~Ambassador S'chn T'gai Spock
Sent via Communicator [D2VZW] from the Bridge of the U.S.S. Enterprise
Ibuprophen said:
Try asking within the following thread since it involves how to build a custom ROM from Source Code to End.
http://forum.xda-developers.com/showthread.php?t=2814763
They should be able to either help you out or guide you in the right direction as to where to find the answer.
"Live Long and Prosper..."
~Ambassador S'chn T'gai Spock
Sent via Communicator [D2VZW] from the Bridge of the U.S.S. Enterprise
Click to expand...
Click to collapse
Thanks a lot
I hope they'll answer me
Gabrius99 said:
Hi to all!
I'm building Lineage OS for my device. I added some third party app to my source code: I put apk in a folder in the directory /packages/apps, I added all the apk's name in /vendor/cm/config/common.mk and also within /build/target/core.mk, but the building process doesn't see them and it doesn't include them in the ROM package.
I followed many guides, but all of them failed on this, so I think i'm forgetting something.
There is a method to add third party app to the source code?
Click to expand...
Click to collapse
Hi. I don't know if you achieved your goal, but I did the procedure bellow to add LibreOfficeViewer to my build and It works for me. Only change the path of device.mk to your device:
LibreofficeViewer
* Create the directory ~/android/system/packages/apps/LibreOfficeViewer
* Edit ~/android/system/packages/apps/LibreOfficeViewer/Android.mk and add:
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE := LibreOfficeViewer
LOCAL_CERTIFICATE := media
LOCAL_SRC_FILES := LibreOfficeViewer.apk
LOCAL_MODULE_CLASS := APPS
LOCAL_MODULE_SUFFIX := $(COMMON_ANDROID_PACKAGE_SUFFIX)
include $(BUILD_PREBUILT)
* Edit ~/android/system/device/motorola/harpia/device.mk and add:
# LibreOfficeViewer
PRODUCT_PACKAGES += \
LibreOfficeViewer
* Copy LibreOfficeViewer.apk to ~/android/system/packages/apps/LibreOfficeViewer
That's it.
cvbrt said:
Hi. I don't know if you achieved your goal, but I did the procedure bellow to add LibreOfficeViewer to my build and It works for me. Only change the path of device.mk to your device:
LibreofficeViewer
* Create the directory ~/android/system/packages/apps/LibreOfficeViewer
* Edit ~/android/system/packages/apps/LibreOfficeViewer/Android.mk and add:
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE := LibreOfficeViewer
LOCAL_CERTIFICATE := media
LOCAL_SRC_FILES := LibreOfficeViewer.apk
LOCAL_MODULE_CLASS := APPS
LOCAL_MODULE_SUFFIX := $(COMMON_ANDROID_PACKAGE_SUFFIX)
include $(BUILD_PREBUILT)
* Edit ~/android/system/device/motorola/harpia/device.mk and add:
# LibreOfficeViewer
PRODUCT_PACKAGES += \
LibreOfficeViewer
* Copy LibreOfficeViewer.apk to ~/android/system/packages/apps/LibreOfficeViewer
That's it.
Click to expand...
Click to collapse
I received some answers in the other thread, but I didn't tried those methods yet. Thanks anyway for the help
cvbrt said:
Hi. I don't know if you achieved your goal, but I did the procedure bellow to add LibreOfficeViewer to my build and It works for me. Only change the path of device.mk to your device:
LibreofficeViewer
* Create the directory ~/android/system/packages/apps/LibreOfficeViewer
* Edit ~/android/system/packages/apps/LibreOfficeViewer/Android.mk and add:
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE := LibreOfficeViewer
LOCAL_CERTIFICATE := media
LOCAL_SRC_FILES := LibreOfficeViewer.apk
LOCAL_MODULE_CLASS := APPS
LOCAL_MODULE_SUFFIX := $(COMMON_ANDROID_PACKAGE_SUFFIX)
include $(BUILD_PREBUILT)
* Edit ~/android/system/device/motorola/harpia/device.mk and add:
# LibreOfficeViewer
PRODUCT_PACKAGES += \
LibreOfficeViewer
* Copy LibreOfficeViewer.apk to ~/android/system/packages/apps/LibreOfficeViewer
That's it.
Click to expand...
Click to collapse
Great! Still works great for lineage18.1. But u no, ~/android/system is called ~/android/lineage here.
y0va said:
Great! Still works great for lineage18.1. But u no, ~/android/system is called ~/android/lineage here.
Click to expand...
Click to collapse
I hate to revive such a long dead thread but I've been struggling with this and hoping for some help so please forgive me. Do you happen to know if the process is any different for LineageOS 20? I'm getting an error that it's failed due to a non-existent module in product_packages.

Unpacking Device Tree Blob From rockchip boot.img secondfile

GitHub - Evsio0n/rsce-go: Rockchip resource image (RSCE) Pack/Unpack Tool written in Go
Rockchip resource image (RSCE) Pack/Unpack Tool written in Go - GitHub - Evsio0n/rsce-go: Rockchip resource image (RSCE) Pack/Unpack Tool written in Go
github.com
Rockchip resources image(RSCE) is a binary file which contains device tree blob and additional resources (like vendor splash screen) and appears as boot.img-second on unpacking.
Author: @evsio0n
Usage​-u: Unpack the RSCE file to the specified directory.
e.g. ./rsce_tool -u ./boot-second
-p: Pack the file to RSCE file.
e.g. ./rsce_tool -p ./rk-kernel.dtb -p ./logo.bmp -p ./logo-kernel.bmp
use it at your own risk.
Beautiful tool, beats manually doing it every single time.

Pixel Experience 12 for Moto Z2 Play albus

I know development stopped for this phone but I was looking to see how difficult it would be to build my own ROM with PE 12 following this guide and it appears I need some binaries but I have no idea how to get that so I am failing here:
Code:
[email protected]:~/android/pe# source build/envsetup.sh
including vendor/aosp/vendorsetup.sh
[email protected]:~/android/pe# lunch aosp_albus-userdebug
02:35:02 Build sandboxing disabled due to nsjail error.
In file included from build/make/core/config.mk:313:
In file included from build/make/core/envsetup.mk:312:
build/make/core/product_config.mk:160: error: Can not locate config makefile for product "aosp_albus".
02:35:02 dumpvars failed with: exit status 1
Device albus not found. Attempting to retrieve device repository from PixelExperience-Devices Github (http://github.com/PixelExperience-Devices).
Found repository: device_motorola_albus
Checking branch info
Calculated revision: twelve
Branch twelve not found
02:35:05 Build sandboxing disabled due to nsjail error.
In file included from build/make/core/config.mk:313:
In file included from build/make/core/envsetup.mk:312:
build/make/core/product_config.mk:160: error: Can not locate config makefile for product "aosp_albus".
02:35:05 dumpvars failed with: exit status 1
02:35:07 Build sandboxing disabled due to nsjail error.
In file included from build/make/core/config.mk:313:
In file included from build/make/core/envsetup.mk:312:
build/make/core/product_config.mk:160: error: Can not locate config makefile for product "aosp_albus".
02:35:08 dumpvars failed with: exit status 1
** Don't have a product spec for: 'aosp_albus'
** Do you have the right repo manifest?
Any idea how difficult it is to get past this and to get a PE 12 ROM built for this device? I assume once I get the binaries I would also need to modify some code and a bunch of files...
nmajin said:
I know development stopped for this phone but I was looking to see how difficult it would be to build my own ROM with PE 12 following this guide and it appears I need some binaries but I have no idea how to get that so I am failing here:
Code:
[email protected]:~/android/pe# source build/envsetup.sh
including vendor/aosp/vendorsetup.sh
[email protected]:~/android/pe# lunch aosp_albus-userdebug
02:35:02 Build sandboxing disabled due to nsjail error.
In file included from build/make/core/config.mk:313:
In file included from build/make/core/envsetup.mk:312:
build/make/core/product_config.mk:160: error: Can not locate config makefile for product "aosp_albus".
02:35:02 dumpvars failed with: exit status 1
Device albus not found. Attempting to retrieve device repository from PixelExperience-Devices Github (http://github.com/PixelExperience-Devices).
Found repository: device_motorola_albus
Checking branch info
Calculated revision: twelve
Branch twelve not found
02:35:05 Build sandboxing disabled due to nsjail error.
In file included from build/make/core/config.mk:313:
In file included from build/make/core/envsetup.mk:312:
build/make/core/product_config.mk:160: error: Can not locate config makefile for product "aosp_albus".
02:35:05 dumpvars failed with: exit status 1
02:35:07 Build sandboxing disabled due to nsjail error.
In file included from build/make/core/config.mk:313:
In file included from build/make/core/envsetup.mk:312:
build/make/core/product_config.mk:160: error: Can not locate config makefile for product "aosp_albus".
02:35:08 dumpvars failed with: exit status 1
** Don't have a product spec for: 'aosp_albus'
** Do you have the right repo manifest?
Any idea how difficult it is to get past this and to get a PE 12 ROM built for this device? I assume once I get the binaries I would also need to modify some code and a bunch of files...
Click to expand...
Click to collapse
You are missing all the trees for the device; as you seem to have no clue i'd recommend you at least start by building A11. A12 won't boot on albus without significant modifications to the rom, which PE has not included in it's upstream.
For building a rom you need:
The rom structure (Duh)
The device tree (usually called device_brand_codename, in this case device_motorola_albus and store in device/motorola/albus to be properly detected)
The kernel tree (which usually inherits the name of the SOC, in this case msm8953 and goes into kernel/msm8953)
Vendor tree (which follows the same naming convention as device tree and goes in vendor/motorola/albus)
marcost22 said:
You are missing all the trees for the device; as you seem to have no clue i'd recommend you at least start by building A11. A12 won't boot on albus without significant modifications to the rom, which PE has not included in it's upstream.
For building a rom you need:
The rom structure (Duh)
The device tree (usually called device_brand_codename, in this case device_motorola_albus and store in device/motorola/albus to be properly detected)
The kernel tree (which usually inherits the name of the SOC, in this case msm8953 and goes into kernel/msm8953)
Vendor tree (which follows the same naming convention as device tree and goes in vendor/motorola/albus)
Click to expand...
Click to collapse
Thanks for the reply, and yea maybe I’ll start with PE 11 then. Would building that provide the trees for the device or how do you go about getting those? I did read about the modifications needed for PE 12 to get around the iptables drop but willing to mess with it and only plan to use this phone for the projector mod.
nmajin said:
Thanks for the reply, and yea maybe I’ll start with PE 11 then. Would building that provide the trees for the device or how do you go about getting those? I did read about the modifications needed for PE 12 to get around the iptables drop but willing to mess with it and only plan to use this phone for the projector mod.
Click to expand...
Click to collapse
Given the fact that this device had official PE 11 support, those trees (for A11) would be hosted on the PE-Device github. The vendor tree however would be hosted in their gitlab (or you can generate it with the device tree, by having the device plugged in and running extract-files

Categories

Resources