Android Open Source - myAndroidApps Just Parked Activity






From Project

Back to project page myAndroidApps.

License

The source code is released under:

This is my first GitHub try. Be gentle :)

If you think the Android project myAndroidApps listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

package gidy.carpark;
/*from  www.j av a 2  s  .  c  o  m*/
import gidy.carpark.utils.CommonUtils;
import gidy.carpark.utils.GPSTracker;
import gidy.carpark.utils.LocationUtils;
import gidy.carpark.utils.LocationsAdapter;

import java.io.IOException;

import org.json.JSONException;

import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.content.DialogInterface.OnClickListener;
import android.content.Intent;
import android.os.Bundle;
import android.provider.Settings;
import android.view.KeyEvent;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.inputmethod.EditorInfo;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemLongClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ListView;
import android.widget.TextView;
import android.widget.TextView.OnEditorActionListener;

public class JustParkedActivity extends Activity {

  private static LocationsAdapter adapter;

  private GPSTracker _gpsTracker;
  
  private static String newLoc;

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

    setContentView(R.layout.activity_just_parked);

    _gpsTracker = new GPSTracker(JustParkedActivity.this);

    CommonUtils.initHebrewText(this,(TextView)findViewById(R.id.whereParkedText));

    // Handle locations list
    // Fill the list with locations
    adapter = new LocationsAdapter(this, R.layout.location_button_layout, LocationUtils.getLocations());
    ListView locationsListView = (ListView)findViewById(R.id.locationsList);
    locationsListView.setAdapter(adapter);

    // Handle deleting locations
    locationsListView.setLongClickable(true);
    locationsListView.setOnItemLongClickListener(new OnItemLongClickListener() {
      @Override
      public boolean onItemLongClick(AdapterView<?> arg0, View arg1,
          int position, long arg3) {

        removeParkingLocation(position);    

        return true;
      }
    });


    // Handle NewLocation text box
    EditText newLocationEditText = (EditText) findViewById(R.id.newLocation);
    newLocationEditText.setOnEditorActionListener(new OnEditorActionListener() {
      @Override
      public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {          
        boolean handled = false;
        if (actionId == EditorInfo.IME_ACTION_DONE) {
          newLoc = v.getText().toString();
          if (!newLoc.isEmpty()){

            try{
              addNewLocation();
            }
            catch(Exception e){
              // Too Bad :(
            }
          }
          handled = true;
        }
        return handled;
      }
    });
  }

  @Override
  public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.just_parked, menu);
    return true;
  }

  @Override
  public boolean onOptionsItemSelected(MenuItem item) {
    // Handle action bar item clicks here. The action bar will
    // automatically handle clicks on the Home/Up button, so long
    // as you specify a parent activity in AndroidManifest.xml.
    int id = item.getItemId();
    if (id == R.id.action_settings) {
      return true;
    }
    return super.onOptionsItemSelected(item);
  }

  public void setParking(View view) throws IOException, JSONException{

    String locStr = clearLocStrIfNeeded(((Button)view).getText().toString()); 

    LocationUtils.setCurrentLocation(locStr);
    backToHomeScreen();
  }

  private String clearLocStrIfNeeded(String locStr) {

    if (locStr.endsWith(" (??? ?.?.)")){
      locStr = locStr.substring(0, locStr.length() - 11);
    }

    return locStr;
  }

  private void backToHomeScreen(){
    super.finish();
  }

  private void addNewLocation() throws IOException, JSONException{

    if (!_gpsTracker.canGetLocation()){
      showNoGpsAlert();
    }
    else{
      addNewLocationInner(newLoc);
    }
  }

  private void addNewLocationInner(String newLoc) throws IOException, JSONException{
    ParkingLocation loc = new ParkingLocation(newLoc, _gpsTracker);
    LocationUtils.addLocationAndSetCurrent(loc);
    backToHomeScreen();
  }

  @Override
  public void onStop(){
    try{
      LocationUtils.saveLocationsToDisk();  
      _gpsTracker.stopUsingGPS();
    }catch (Exception e){
      // TOO BAD :(
    }

    super.onStop();
  }

  private void removeParkingLocation(int position){

    final int deletePosition = position;

    AlertDialog.Builder alert = new AlertDialog.Builder(this);

    alert.setTitle("????? ?????");
    alert.setMessage("???? ??????");
    alert.setPositiveButton("??", new OnClickListener() {
      @Override
      public void onClick(DialogInterface dialog, int which) {
        LocationUtils.removeLocation(deletePosition);
        adapter.notifyDataSetChanged();
        adapter.notifyDataSetInvalidated();          }
    });

    alert.setNegativeButton("???", new OnClickListener() {
      @Override
      public void onClick(DialogInterface dialog, int which) {
        dialog.dismiss();
      }
    });

    alert.show();
  }

  private void showNoGpsAlert(){

    AlertDialog.Builder builder = new AlertDialog.Builder(this);

    builder.setTitle("????? ?????")
    .setMessage("????? ?????? ????? ?????" + "\n" + "??? ?????? ????????") 
    .setPositiveButton("??", new OnClickListener() {
      @Override
      public void onClick(DialogInterface dialog, int which) {
        startActivity(new Intent(Settings.ACTION_LOCATION_SOURCE_SETTINGS));
        backToHomeScreen();
      }
    })
    .setNegativeButton("??", new OnClickListener() {
      @Override
      public void onClick(DialogInterface dialog, int which) {
        try {
          addNewLocationInner(newLoc);
        } catch (Exception e) {
          // Too Bad :(
        } 
      }      
    });  
  

    AlertDialog alert = builder.create();
    alert.show();  
  }
}




Java Source Code List

gidy.carpark.HomeScreen.java
gidy.carpark.JustParkedActivity.java
gidy.carpark.ParkingLocation.java
gidy.carpark.WhereParkedActivity.java
gidy.carpark.utils.CommonUtils.java
gidy.carpark.utils.FileUtils.java
gidy.carpark.utils.GPSTracker.java
gidy.carpark.utils.LocationUtils.java
gidy.carpark.utils.LocationsAdapter.java
gidy.medappg.CallAmbulanceActivity.java
gidy.medappg.HomeMenu.java
gidy.medappg.MedAppLogger.java
gidy.medappg.activities.AllergicReactionActivity.java
gidy.medappg.activities.AsthmaActivity.java
gidy.medappg.activities.BleedingActivity.java
gidy.medappg.activities.BrokenBoneActivity.java
gidy.medappg.activities.BurnActivity.java
gidy.medappg.activities.ChokeActivity.java
gidy.medappg.activities.DiabeticActivity.java
gidy.medappg.activities.DistressActivity.java
gidy.medappg.activities.EpilepsyActivity.java
gidy.medappg.activities.HeadInjuryActivity.java
gidy.medappg.activities.HeartAttackActivity.java
gidy.medappg.activities.HypothermiaActivity.java
gidy.medappg.activities.MedicalIssueActivity.java
gidy.medappg.activities.MeningitisActivity.java
gidy.medappg.activities.PoisoningActivity.java
gidy.medappg.activities.StrokeActivity.java
gidy.medappg.activities.UnconsciousBreatingActivity.java
gidy.medappg.activities.UnconsciousNotBreathingActivity.java
gidy.medappg.videoActivities.AsthmaVideoActivity.java
gidy.medappg.videoActivities.BleedingVideoActivity.java
gidy.medappg.videoActivities.BrokenBoneVideoActivity.java
gidy.medappg.videoActivities.BurnVideoActivity.java
gidy.medappg.videoActivities.ChokeActivityVideo.java
gidy.medappg.videoActivities.DiabeticVideoActivity.java
gidy.medappg.videoActivities.DistressVideoActivity.java
gidy.medappg.videoActivities.EpilepsyVideoActivity.java
gidy.medappg.videoActivities.HeadInjuryVideoActivity.java
gidy.medappg.videoActivities.HeartAttackVideoActivity.java
gidy.medappg.videoActivities.PoisoningVideoActivity.java
gidy.medappg.videoActivities.StrokeVideoActivity.java
gidy.medappg.videoActivities.UnconsciousBreatingVideoActivity.java
gidy.medappg.videoActivities.UnconsciousNotBreathingVideoActivity.java
gidy.medappg.videoActivities.VideoActivity.java
gidy.medappnem.CallAmbulanceActivity.java
gidy.medappnem.HomeMenu2Activity.java
gidy.medappnem.HomeMenu3Activity.java
gidy.medappnem.HomeMenu4Activity.java
gidy.medappnem.HomeMenu5Activity.java
gidy.medappnem.HomeMenu.java
gidy.medappnem.MedAppLogger.java
gidy.medappnem.activities.AllergicReactionActivity.java
gidy.medappnem.activities.AsthmaActivity.java
gidy.medappnem.activities.BleedingActivity.java
gidy.medappnem.activities.BrokenBoneActivity.java
gidy.medappnem.activities.BurnActivity.java
gidy.medappnem.activities.ChokeActivity.java
gidy.medappnem.activities.DiabeticActivity.java
gidy.medappnem.activities.DistressActivity.java
gidy.medappnem.activities.EpilepsyActivity.java
gidy.medappnem.activities.HeadInjuryActivity.java
gidy.medappnem.activities.HeartAttackActivity.java
gidy.medappnem.activities.HypothermiaActivity.java
gidy.medappnem.activities.MedicalIssueActivity.java
gidy.medappnem.activities.MeningitisActivity.java
gidy.medappnem.activities.PoisoningActivity.java
gidy.medappnem.activities.StrokeActivity.java
gidy.medappnem.activities.UnconsciousBreatingActivity.java
gidy.medappnem.activities.UnconsciousNotBreathingActivity.java
gidy.medappnem.videoActivities.AsthmaVideoActivity.java
gidy.medappnem.videoActivities.BleedingVideoActivity.java
gidy.medappnem.videoActivities.BrokenBoneVideoActivity.java
gidy.medappnem.videoActivities.BurnVideoActivity.java
gidy.medappnem.videoActivities.ChokeActivityVideo.java
gidy.medappnem.videoActivities.DiabeticVideoActivity.java
gidy.medappnem.videoActivities.DistressVideoActivity.java
gidy.medappnem.videoActivities.EpilepsyVideoActivity.java
gidy.medappnem.videoActivities.HeadInjuryVideoActivity.java
gidy.medappnem.videoActivities.HeartAttackVideoActivity.java
gidy.medappnem.videoActivities.PoisoningVideoActivity.java
gidy.medappnem.videoActivities.StrokeVideoActivity.java
gidy.medappnem.videoActivities.UnconsciousBreatingVideoActivity.java
gidy.medappnem.videoActivities.UnconsciousNotBreathingVideoActivity.java
gidy.medappnem.videoActivities.VideoActivity.java