Posts

Enable Google Dialer: Google Dialer can be enabled by below changes in framework: iff --git a/res/values/config.xml b/res/values/config.xml index c7e2436..3c18071 100644 --- a/res/values/config.xml +++ b/res/values/config.xml @@ -148,10 +148,10 @@      <bool name="config_show_cdma" translatable="false">false</bool>      <!-- Package name for the default in-call UI and dialer [DO NOT TRANSLATE] --> -    <string name="ui_default_package" translatable="false">com.android.dialer</string> +    <string name="ui_default_package" translatable="false">com.google.android.dialer</string>      <!-- Class name for the default main Dialer activity [DO NOT TRANSLATE] --> -    <string name="dialer_default_class" translatable="false">com.android.dialer.DialtactsActivity</string> +    <string name="dialer_default_class" translatable=...

If u registerReceiver twice what will happen?

If u do registerReceiver two times  then it will be added twice in the arraylist as follows / frameworks / base / services / tests / servicestests / src / com / android / server / BroadcastInterceptingContext.java @ Override public Intent registerReceiver ( BroadcastReceiver receiver , IntentFilter filter ) { synchronized ( mInterceptors ) { mInterceptors . add ( new BroadcastInterceptor ( receiver , filter )); } return null ; } @ Override public void sendBroadcast ( Intent intent ) { synchronized ( mInterceptors ) { final Iterator < BroadcastInterceptor > i = mInterceptors . iterator (); while (i. hasNext ()) { final BroadcastInterceptor interceptor = i. next (); if ( interceptor . dispatchBroadcast ( intent )) { i. remove (); } } } } public boolean dispatchBroadcast ( Intent in...

Important adb commands

1)Command to see the package and version of the .apk ./aapt dump badging  /vendor/google/apps/AndroidPay/AndroidPay_arm64.apk 2)Command to debug tombstone: addr2line -C -f -e /../out/target/product//symbols/system/lib64/libxyz.so 0000000000007cf4 3)adb shell mount -o rw,remount,rw /system 4)adb shell screenrecord /sdcard/abc .mp4 5) /data/system/users/0/settings_global.xml 6)dumpsys package com.google.android.packageinstaller 7) androidmk Android.mk > Android.bp

Wrong java version. 1.8 or 9 is required

If you are getting below error while running cts-tradefed or vts-tradefedor gts-tradefed . Use below steps to resole this error: 1)Check java --version It gave below output: java --version java 12.0.1 2019-04-16 Java(TM) SE Runtime Environment (build 12.0.1+12) Java HotSpot(TM) 64-Bit Server VM (build 12.0.1+12, mixed mode, sharing) 2)Open cts-tradefed or vts-tradefedor gts-tradefed and edit as below: change below line  JAVA_VERSION=$(java -version 2>&1 | head -n 1 | grep 'version [ "]\(1\.8\|9\).*[ "]') to this # check java version JAVA_VERSION=$(java -version 2>&1 | head -n 1 | grep 'version [ "]\(12\.0\.1\|9\).*[ "]') 3)Now try to execute ./cts-tradefed it should execute without any error.

How to make SystemService in Android

Making SystemServerService Step1:Define SystemService name in frameworks/base/core/java/android/content/Context.java along with the link of manager object which will be retrived using getSystemService + + /** +* Use with {@link #getSystemService} to retrieve a {@link +* android.manandaidl.MySampleSystemServiceManager} instance +* @see #getSystemService +* @see android.manandaidl.MySampleSystemServiceManager +*/ +public static final String MY_SYSTEM_SERVICE = “my”; Step 2:Create a service class extending SystemService(MySampleSystemService in my case) I have created myservice folder as below frameworks/base/services/core/java/com/android/server/myservice/MySampleSystemService.java It will contain the aidl Implemenatation also. Step3: start service from SystemServer.java frameworks/base/services/java/com/android/server/SystemServer.java mSystemServiceManager.startService(“com.android.server.myservice.MySampleSystemService”); Step4: Create Manager and Aidl cl...

Serializable and Parcelable

Serializable and Parcelable