Чтобы добавить к ответу Юссифа:
A3: одно отличие состоит в том, что установка соединения будет быстрее, так как соединение позволяет использовать кэш GATT db. В противном случае повторное обнаружение службы должно выполняться при каждом подключении (если служба изменила характеристики c).
A4: на Android вы можете позвонить на createBond
, чтобы начать сопряжение, но на iOS есть API для безопасности не существует, поэтому вам нужно либо взаимодействовать с характеристикой c, которая отправляет ошибку о необходимости сопряжения, либо удаленное устройство может отправить запрос безопасности для инициирования сопряжения.
A5: iOS показывает диалог «принять / прервать» для просто работ, Android нет.