AIR UNIVERSITY
Faculty of Basic & Applied Sciences
Department of Computer Science & Engineering Spring 2019
Course: CS303 – Mobile Computing | Batch: BSCS-VIII-A-B |
Assignment # 02
Submitted On: Sunday, 19th May, 2019 | Total Marks: 40
Submitted By Syed Muhammad Taqi Mehdi 150835(Section A)
Contribution:
Assignment Tasks:
1. To use a network sensor, you need to implement four steps. Write the code required for each of
the following steps:
a. Declare a location manager variable and a network listener variable.
b. Access/reference to the location Manager.
c. Instantiate the LocationListener and assign it to the network listener. Write the four
methods that need to be implemented. No implementation is required.
d. Send a message to the LocationManager to begin listening for location changes of the
Network sensor.
[Link] locationManager = (LocationManager)
getSystemService(LOCATION_SERVICE);
b. public class LocationManager extends Object
c. LocationManager#requestLocationUpdates(String, long, float, LocationListener)
Public methods
onLocationChanged(Location location)
onProviderDisabled(String provider)
onProviderEnabled(String provider)
onStatusChanged(String provider, int status, Bundle extras)
d.
public abstract void onLocationChanged (Location location)
CODE:
[Link]
package [Link].assignment3;
import [Link];
import [Link];
import [Link];
import [Link];
import [Link];
import [Link];
import [Link];
public class MainActivity extends AppCompatActivity {
private TextView counterText;
private BroadcastReceiver minuteUpdateReceiver;
private int counter;
@Override
protected void onCreate(Bundle savedInstanceState) {
[Link](savedInstanceState);
setContentView([Link].activity_main);
counterText=(TextView) findViewById([Link].counter_text);
}
public void startMinuteUpdate(){
IntentFilter intentFilter=new IntentFilter();
[Link](Intent.ACTION_TIME_TICK);
minuteUpdateReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
counter++;
[Link]("" + counter);
}
};
registerReceiver(minuteUpdateReceiver, intentFilter);
}
@Override
protected void onResume() {
[Link]();
startMinuteUpdate();
}
@Override
protected void onPause()
{
[Link]();
unregisterReceiver(minuteUpdateReceiver);
}
}
activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<[Link]
xmlns:android="[Link]
xmlns:app="[Link]
xmlns:tools="[Link]
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<TextView
android:id="@+id/counter_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="0"
android:textSize="50sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</[Link]>
SCREENSHOT