Я разрабатываю приложение для доказательства концепции в школе, и мне нужно разработать простое приложение, которое позволяет родительскому треку дочернее устройство Android. Я выяснил, как использовать GPS для получения обновлений местоположения сейчас. Каков наилучший способ преодоления разрыва между родительским устройством и дочерним устройством? Как приложение узнает, кто является родителем и кто является ребенком? Также лучше всего отправить дочерние данные с помощью getLastKnownLocation (лучше всего) на удаленный сервер, а затем каким-либо способом отправить родителя или есть более простой способ сделать это?
Заранее спасибо.
25.03.2012 ******** Обновление ***********************
Хорошо, основываясь на советах от вас, ребята, у меня есть PHP-код в файле
<?php
$thisString = $_POST["action"]; // Variable to receive the request from
echo $thisString;
?>
и я отправляю строку в веб-службу с этим кодом в методе
HttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = new HttpPost("http://kre8tiveinspired.com/android/simpleTest.php");
// This is the data to send
String MyName = **"String Test"**; //any data to send
try {
// Add your data
List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(1);
nameValuePairs.add(new BasicNameValuePair("action", MyName));
httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
// Execute HTTP Post Request
ResponseHandler<String> responseHandler = new BasicResponseHandler();
String response = httpclient.execute(httppost, responseHandler);
//This is the response from a php application
String reverseString = response;
Toast.makeText(this, "response " + reverseString, Toast.LENGTH_LONG).show();
}...
Это дает мне тост, говорящий "тест стринг-теста". ОК теперь это работает, но как я могу отправить две разные переменные, такие как long и lat. а затем получить две разные переменные из responseHandler, когда я выполняю команду httpclient.execute(httppost, responseHandler.
Вероятно, ваше приложение должно зарегистрировать будильник, который просыпает службу, установленную с вашим приложением, на дочернем телефоне. Эта служба должна отправлять данные о местоположении на сервер, который будет перенаправлять его на родительский телефон. Приложению также потребуется установить службу на родительском телефоне для получения уведомлений.
Чтобы решить, кто является родителем, а какой является дочерним, вам, скорее всего, нужно будет настроить приложение отдельно на каждом телефоне, то есть родительский установить приложение на свой телефон и на дочерний телефон и установить дочерний телефон в качестве дочернего и их как родителя, Вы можете защитить паролем эту настройку. Другим вариантом будет разработка двух приложений: Where My Kid (отслеживание) и Where My Kid (родительский).
Наконец, вам нужна система, работающая на сервере для управления данными, поступающими от ребенка. Затем он отправит соответствующую информацию родительскому устройству. Вы также можете создать родительскую учетную запись, а затем войти в нее на родительском и дочернем устройствах, чтобы сервер знал, куда отправлять информацию.
Это непростой проект. Если вы хотите создать что-то коммерческое или дистрибутивное, для этого потребуется немалая работа. Если это действительно только доказательство концепции, как вы упомянули, вы можете сократить некоторые углы. В любом случае, то, что я изложил, в значительной степени минимально вам нужно.
Простым подходом было бы выполнение службы на дочернем устройстве. Каждый так часто получает текущее местоположение и отправляет обновление на сервер. Тогда у вас будет приложение на родительском устройстве, которое может по запросу или в другом опросе службы для обновлений через регулярные промежутки времени.
Это самый простой подход, но вы должны выполнить то, что хотите. Что касается определения того, какое устройство должно быть у вас в состоянии контролировать это на уровне приложения (может быть два разных приложения или одно и то же приложение, а другое - как клиент (дочерний) в конфигурации, возможно, ключ для изменения настроек или, возможно, те, которые вытаскиваются с сервера.Также вы захотите получить некоторую пару, чтобы вы могли убедиться, что родитель просматривает правильную дочернюю информацию. Это может быть так же просто, как вывод, который генерируется и отображается на обоих устройствах для подтверждения во время начальной настройки,
Я начал бы просто и расширяться по мере развития потребностей.