Sync from iOS to Android results in excessive list of contacts

I recently synced a new Pixel 3 phone running Android with an old Apple 5s using the included Google sync cables. I noticed that the contacts in my Android Phone app now show everyone I have ever called or had contact with, including by e-mail, rather than the select list of contacts I used to keep on my iPhone.

Is there a way to get just the contacts that I had on my old iPhone instead of having to page through hundreds of useless, old contacts on my new Android device?

Как установить фон для activity в android приложении?

Прошу помощи!! Фон jpg/png, размеры не искажаются. Но когда вылезает клавиатура (она закрывает часть экрана), картинка сжимается, чтобы заполнить оставшийся экран, подстраивается под оставшуюся область. Это, возможно, происходит из-за ScrollView, который сжимается, когда вылезает клавиатура, так как он привязан к кнопкам, привязанным к нижней части экрана. Подскажите, пожалуйста, что можно сделать?

 <?xml version="1.0" encoding="utf-8"?> <android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"     xmlns:app="http://schemas.android.com/apk/res-auto"     xmlns:tools="http://schemas.android.com/tools"     android:id="@+id/constraintlayout"     android:layout_width="match_parent"     android:layout_height="match_parent"     android:background="@drawable/fon"     tools:context=".MainActivity">   <ScrollView             android:id="@+id/scrollView2"             android:layout_width="match_parent"             android:layout_height="0dp"             android:layout_marginTop="8dp"             android:layout_marginBottom="8dp"             android:background="@drawable/for_scroll"             android:visibility="visible"             app:layout_constraintBottom_toTopOf="@+id/btnCount"             app:layout_constraintEnd_toEndOf="parent"             app:layout_constraintHorizontal_bias="0.0"             app:layout_constraintStart_toStartOf="parent"             app:layout_constraintTop_toBottomOf="@+id/tvKof">              <android.support.constraint.ConstraintLayout                 android:id="@+id/linearLayout"                 android:layout_width="match_parent"                 android:layout_height="match_parent">   </android.support.constraint.ConstraintLayout>         </ScrollView> </android.support.constraint.ConstraintLayout> 

Android verified boot and custom ROMs

I’m trying to figure out how exactly works the Android Verified Boot process and its usage with custom ROMs. The documentation I found on it is unclear (or outdated) as there seems to be several ways to do it.

What I understood (please correct me if I’m wrong) is listed below.

Before flashing :

  1. The bootloasder is initially locked, and has to be unlocked through the fastboot command (and a physical confirmation from the end user).
  2. The user data are totally wiped in order to prevent unauthorized access through rooting process (e.g. if a device is theft and the thief tries to access private data).
  3. The custom ROM public key is stored in the user-settable root of trust (alongside with the manufacturer’s one) when the OS is flashed.

Boot process (after flashing) :

  1. The systems is powered on (physical button)
  2. The device embedded BIOS reads the public keys stored in the root of trust (manufacturer and user-settable) and verifies that the kernel image has not been tampered.
  3. If the public key used to check kernel tampering is the user-stable one, then a 10 seconds warning is displayed in order to warn the end-user that the pub. key used to perform these checks is not the manufacturer’s one.
  4. Once the kernel integrity is confirmed, the initial ram image is loaded and the init process is called.
  5. The dm-verity kernel module ensures that the boot process is not tampered through cryptographically signature checks, using a public key.

As I write these lines, several steps are still unclear to me :

  • Why are warnings displayed during boot if integrity checks pass ? I mean, even if the user-settable root of trust is used (instead of the manufacturer’s one), integrity checks are still OK, don’t they ?
  • Is the UNLOCKED state needed in order to set the user-settable root of trust, or is it needed to bypass Android Verified Boot ?
  • How is handled the “tamper evident” feature for the user-settable root of trust ? I mean : the user-settable root of trust should only be set by the end user (and not the manufacturer) but how can we be sure that It did not set one anyway ? Moreover, if the system is rooted, how can we be sure that the “new” OS has not reset the tamper evident flag ? Are one-time programmable memory used ?
  • What public key is used by the dm-verity kernel module in order to perform integrity checks ?

Thanks in advance !

Error when simulating incoming calls on my (real) Android phone (rooted) [duplicate]

This question already has an answer here:

  • Simulate missed call from ADB shell 1 answer

I try to simulate an incoming call on my Android device connected to my computer via adb by:

D:\adb>adb shell am start -a com.android.server.telecom.testapps.CallServiceNotifier.SIM_SUBSCRIPTION_ID2 -d "tel:123456789" 

But always get this error:

Starting: Intent { act=com.android.server.telecom.testapps.CallServiceNotifier.SIM_SUBSCRIPTION_ID2 dat=tel:xxxxxxxxx } Error: Activity not started, unable to resolve Intent { act=com.android.server.telecom.testapps.CallServiceNotifier.SIM_SUBSCRIPTION_ID2 dat=tel:xxxxxxxxx flg=0 x10000000 } 

I have tried on Android 6, 7, 8.

How to simulate an incoming call on real devices?