2015-02-14 3 views
1

Я просто начинаю разработку Android-приложения. У меня есть несколько вопросов. Я ищу создать приложение для простого напоминания о местоположении. Есть много учебников, но я ищу конкретную функцию, когда пользователь создает напоминание, и он получает текущее местоположение, и как только он создается, он помещается на карту (я не знаю, какой тип объекта это будет, будет ли это маркер, вызывая API) со своим собственным уникальным географом, где пользователь может его увидеть.Android: приложение на основе местоположения

Пользователь может создавать несколько напоминаний, поскольку он сохраняется в базе данных. В настоящее время я реализовал простой графический интерфейс с картами Google, следуя учебному пособию с системой входа в систему, чтобы каждое созданное напоминание было уникальным для пользователя.

+0

Stack Overflow предназначен для программирования * вопросов *. Какой у Вас вопрос*? – CommonsWare

ответ

0

Я не могу получить именно ваш реальный вопрос. Но если это о том, как вы наберете маркеры напоминаний в Google Map Google, я думаю, что эта ссылка укажет вам хороший способ: http://tips4php.net/2010/10/use-php-mysql-and-google-map-api-v3-for-displaying-data-on-map/. И если вы используете App Inventor я предлагаю вам следовать этому учебнику делают несколько настроек: http://appinventor.mit.edu/explore/ai2/android-wheres-my-car.html

1

Когда пользователь хочет создать напоминание, вы должны получить его текущее местоположение и поместить маркер в Google Maps с этим местоположение:

private LocationListener locationListener; 
private LocationManager locationManager; 
private Criteria criteria; 

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 

    locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE); 
    initCriteria(); 
    initLocationListener(); 
} 

private void initCriteria() { 
    criteria = new Criteria(); 
    criteria.setAccuracy(Criteria.ACCURACY_FINE); 
    criteria.setPowerRequirement(Criteria.POWER_HIGH); 
} 

private void initLocationListener() { 
    locationListener = new LocationListener() { 

     @Override 
     public void onLocationChanged(Location location) { 
      placeMapMarkerInLocation(location); 
     } 

     @Override 
     public void onProviderDisabled(String provider) { 
      // Empty 

     } 

     @Override 
     public void onProviderEnabled(String provider) { 
      // Empty 
     } 

     @Override 
     public void onStatusChanged(String provider, int status, 
       Bundle extras) { 
      // Empty 
     } 
    }; 
} 

// User create reminder action 
private void createReminder() { 
    locationManager.requestSingleUpdate(criteria, locationListener, null); 
} 

private void placeMapMarkerInLocation(Location location) { 
    map.addMarker(new MarkerOptions() 
     .position(new LatLng(location.getLatitude(), location.getLongitude())) 
     .title("Im here!")); 
} 
+0

Спасибо, теперь я вижу логику. Можно ли использовать API для использования Fused location. Также Id нравится устанавливать его таким образом, чтобы он был включен/отключен в определенные дни, например, например. если его понедельник, классифицированная геозащита включена в течение определенных дней. Извини я плохо знаю английский – DaveDave

Смежные вопросы