4. Возвратить объект этого класса заглушки из onBind ().
Вопрос 16
Ответ: Если фоновая функциональность связана с активностью, использовать поток. Если нет, запустить сервис с потоком в нем.
Вопрос 17
Ответ: Да, вы можете иметь сервис, запущенный в главном потоке, только если вы не имеете какой-либо активности в главном потоке.
Вопрос 18
Ответ: Может привести к ANR (приложение не отвечает) ошибке, если ваше приложение имеет, по меньшей мере, одну активность, поскольку эта активность будет работать в потоке пользовательского интерфейса.
Вопрос 19
Ответ: Сервис не будет перезапущен системой Android, если метод onStartCommand () вернет START_NOT_STICKY.
Вопрос 20
Ответ: Мы не можем назвать его языком. Это легковесный текстовый формат, который используется для обмена данными между двумя системами, подключенными к сети. Он является альтернативой XML способом передачи данных между системами.
Вопрос 21
Ответ: Number, String, Boolean, null, Array, Object.
Вопрос 22
Ответ: Если данные небольшие – использовать пространства имен, если данные большие, использовать JSON. JSON быстрее, чем XML, поэтому разбор и загрузка будут быстрее. Многие веб-сайты и сервисы, включая Twitter, facebook, Google, LinkedIn использует JSON, а не XML.
Вопрос 23
Ответ: Код состояния доступен в строке состояния, которая содержит статус результата ответа сервера.
Если код состояния <= 400, то это означает успешное выполнение на стороне сервера.
Вопрос 24
Ответ: Это не даст никакой ошибки, но может привести к ANR до 2.3 версии. но начиная с 3,0 это является обязательным, чтобы все сетевые соединения производились в отдельном потоке. Иначе во время выполнения будет исключение NetworkOnMainThreadException.
Если мы не будем использовать отдельный фоновый поток, начиная с версии 3.0, система будет бросать исключение времени выполнения.
Вопрос 25
Ответ: До Froyo (2.2) лучше использовать вариант DefaultHTTPClient или AndroidHttpClient, но после него лучше использовать HttpURLConnection.
Вопрос 26
Ответ: DefaultHttpClient client = new DefaultHttpClient ();
HttpPost post = new HttpPost (»http://mail.google.com/");
List <NameValuePair> params = new ArrayList <NameValuePair> (3);
params. add (new BasicNameValuePair («Email», " [email protected] »));
params. add (new BasicNameValuePair («Passwd», «password here»));
params. add (new BasicNameValuePair («signIn», «Sign in»));
post. setEntity (new UrlEncodedFormEntity (params));
HttpResponse res = client. execute (post);
if (res. getStatusLine (). getStatusCode () <400)
//success
else
//fail
Вопрос 27
Ответ: JSON быстрее, чем XML, XML быстрее, чем SOAP. Но если мы хотим использовать SOAP в мобильных приложениях, мы можем использовать KSOAP, который разработан для встраиваемых устройств и который быстрее.
Вопрос 28
Ответ: JSONException
Вопрос 29
Ответ: JSONObject
JSONArray
Вопрос 30
Ответ: Использовать функцию length ().
Вопрос 31
Ответ: Google Cloud Messaging для chrome (GCM) является сервисом для зарегистрированных пользователей Chrome, который помогает разработчикам отправить данные в сообщении с серверов для их Chrome приложений и расширений. Сервис предназначен для связи с приложениями или расширениями, и/или уведомлений пользователя. Например, обновления календаря могут быть переданы пользователю, даже если приложение календаря не является открытым.
Google Cloud Messaging для Android (GCM) является сервисом, который позволяет отправлять данные с вашего сервера для пользователя Android-устройства, а также получать сообщения от устройства с помощью такого же соединения.
Вопрос 32
Ответ: ClientProtocolException, IOException, UnsupportedEncodingException, XmlPullParserException.
Вопрос 33
Ответ: finish ()
Вопрос 34
Ответ: onPrepareOptionsMenu может быть использован для включения/отключения некоторых пунктов меню в Android приложении.
Вопрос 35
Ответ: Margin определяет дополнительное пространство для всех четырех сторон представления. Margin пространство, как правило, за границами представления. Чтобы оставить пространство на левой стороне, использовать android: layout_marginLeft, чтобы оставить пространство на других сторонах, использовать android: layout_marginRight, android: layout_marginTop, android: layout_marginBottom.
Padding используется, чтобы содержимое представления имело отступ в пикселях. Используйте android: padding
android: paddingBottom
android: paddingLeft
android: paddingRight
android: paddingTop, чтобы установить отступы от различных сторон для содержимого представления.
Вопрос 36
Ответ: Все перечисленное.
Вопрос 37
Ответ: Запускает новую активность, соответствующую фильтру намерений, в новой задаче, если соответствующая задача не находится в памяти в настоящее время.
Вопрос 38
Ответ: Запускает новую активность в новой задаче, где только эта активность будет в этой задаче и никаких-либо других компонентов. Все новые компоненты будут запускаться из новой активности в другой задаче.
Вопрос 39
Ответ: Все перечисленное.
Вопрос 40
Ответ: Все перечисленное.
Вопрос 41
Ответ: Применение анимации перемещения и масштабирования при переходе от одной активности к другой активности называется анимацией активности, чтобы сделать вид, как будто они скользят и масштабируются.
Вопрос 42
Ответ: Все перечисленное.
Вопрос 43
Ответ: Все перечисленное.
Вопрос 44
Ответ: Все перечисленное.
Вопрос 45
Ответ: Все перечисленное.
Вопрос 46
Ответ: Правда, всегда любое приложение будет иметь по умолчанию один основной поток.
Вопрос 47
Ответ: ANR будет происходить, если мы выполняем какие-либо тяжелые операции в UI главном потоке. Если две тяжелые функциональности произойдут в одном потоке, это приведет к задержке ответа на действия пользователя, что может раздражать пользователя, и, следовательно, остановить весь процесс.
Решение – запускать только компоненты пользовательского интерфейса в основном потоке.
Вопрос 48
Ответ: Один процесс, один поток. Да, это возможно, чтобы работать в более чем одном процессе.
Вопрос 49
Ответ: Если поток-а хочет отправить сообщение в поток-б, тогда Looper потока-б должен быть подготовлен, чтобы получить сообщение, отправленное другими. Также возможно с помощью HandlerThread создавать межпоточную коммуникацию.
Вопрос 50
Ответ: Запросить основной поток через коммуникацию между потоками с использованием Handler или функции runOnUiThread, и манипулировать UI.