Reputation: 41
I am trying to build a custom rom in AOSP angler-debug (Nexus6p, 8.0).
Full build works fine.Then I change some code in
framework/base/core/java/..
and run
mmma framework/base
to rebuild the framework.
Here is the problem :
When I use adb sync
to update framework, it leads to boot failure:
"didn't find class "com.android.providers.settings.SettingsProvider on path: ...."
"No original dex files found for dex location /system/priv-app/SettingsProvider/SettingsProvider.apk"
When I use make snod
and fastboot flashall
to flash system image, the device can boot correctly and the modified code effects.
Question : Is there something different between these two commands?
Upvotes: 1
Views: 367
Reputation: 21
If You Have Any Changes in frameworks/base/ which modifies the framwork.jar and service.jar.
We can send the whole framework dir to /system/framework/ locations.
$adb push out/target/product/emulator_car64_x86_64/system system/framework/
Alternativly replacing framwork.jar and service.jar was also fine but replacing the whole framework will make 100% sure if your changes are
Upvotes: 0
Reputation:
There are some mechanisms in framework to make sure the framework.jar is the original one when device is flashed. It seems that other parts of framework does not have this limitation.
In my experience, if your change codes other than framework/base
, adb sync
is fine, otherwise flash system image to avoid weird things.
You should feel lucky that building speed is way faster in AOSP 8, when I worked with AOSP 5, build the framework/base
is a disaster.
Upvotes: 0