Pages

Wednesday 9 April 2014

android.database.sqlite.SQLiteDatabase.rawQuery() is not updating a column

Following is it's solution

public void set_datetime_next(Reminder r, String _newVal) {     
    String[] args = { new Integer(r.getID()).toString() };
    String query =
        "UPDATE " + DBConst.TABLE
      + " SET "   + DBConst.f_DATETIME_NEXT + "=" + _newVal
      + " WHERE " + DBConst.f_ID +"=?";
    Log.i(TAG, query);
    Cursor cu = db.rawQuery(query, args);
    cu.moveToFirst();
    cu.close();
}

While that makes sense, what really puzzles me is the requirement of calling moveToFirst() (or some other function which would "work with" the cursor in some way).
Without the call to both moveToFirst() and close(), the row was never updated. close() by itself, after the rawQuery(), did nothing

Wednesday 2 April 2014

Android google map v2 using mapView

Following url have nice sample for this
https://gist.github.com/joshdholtz/4522551#file-some_layout-xml

--------------------------------------
Example

public class SomeFragment extends Fragment {
 
 MapView mapView;
 GoogleMap map;
 
 @Override
 public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
  View v = inflater.inflate(R.layout.some_layout, container, false);
 
   // Gets the MapView from the XML layout and creates it
  mapView = (MapView) v.findViewById(R.id.mapview);
  mapView.onCreate(savedInstanceState);
 
  // Gets to GoogleMap from the MapView and does initialization stuff
  map = mapView.getMap();
  map.getUiSettings().setMyLocationButtonEnabled(false);
  map.setMyLocationEnabled(true);
 
  // Needs to call MapsInitializer before doing any CameraUpdateFactory calls
  try {
   MapsInitializer.initialize(this.getActivity());
  } catch (GooglePlayServicesNotAvailableException e) {
   e.printStackTrace();
  }
  
  // Updates the location and zoom of the MapView
  CameraUpdate cameraUpdate = CameraUpdateFactory.newLatLngZoom(new LatLng(43.1, -87.9), 10);
  map.animateCamera(cameraUpdate);
 
  return v;
 }
 
 @Override
 public void onResume() {
  mapView.onResume();
  super.onResume();
 }
 
 @Override
 public void onDestroy() {
  super.onDestroy();
  mapView.onDestroy();
 }
 
 @Override
 public void onLowMemory() {
  super.onLowMemory();
  mapView.onLowMemory();
 }
 
}

Following is manifest file

 
 
 
 
 
 
 
 
 
 
 
 
 
 
  
  
  
  
   
    
    
   
  
 
 
 


Layout file