Mobile Application LabManual
Mobile Application LabManual
<TextView
android:id="@+id/edTxt"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="RNSIT"
android:textAppearance="?android:attr/textAppearanceLarge"
/>
<Button
android:id="@+id/btnConvert"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Convert to Italic" />
<TextView
android:id="@+id/textView4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceLarge"
/>
<TextView
android:id="@+id/textView5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Select Your Dept"
android:textAppearance="?android:attr/textAppearanceLarge"
/>
<Spinner android:id="@+id/spDept"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
</LinearLayout>
</RelativeLayout>
<ImageView
android:id="@+id/imageView_graphics"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_alignParentTop="true"
android:layout_marginTop="13dp" />
</android.support.constraint.ConstraintLayout>
MainActivity.java
package com.example.srivatsa.malab4;
import android.graphics.Bitmap;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.drawable.BitmapDrawable;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.ImageView;
<ImageView
android:id="@+id/imageView"
android:layout_width="250dp"
android:layout_height="250dp"
android:layout_margin="50dp"
android:layout_gravity="center" />
<Button
android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:layout_gravity="center"
android:text="Load Image 1" />
<Button
android:id="@+id /button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:layout_gravity="center"
android:text="Load image 2" />
</LinearLayout>
Once the above code is placed in the said file, the Graphical view will contain an ImageView
component and two buttons. Now place two image files india1.png and india2.png into the folders
drawable-hdpi, drawable-ldpi etc. under res folder.
package com.example.program6;
import android.os.Bundle;
import android.app.Activity;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;
bt1.setOnClickListener(new View.OnClickListener(){
@Override
publicvoid onClick(View v) {
new Thread(new Runnable(){
@Override
publicvoid run(){
img.post(new Runnable(){
@Override
publicvoid run(){
img.setImageResource(R.drawable.india1);
}
});
}
}).start();
}
});
bt2.setOnClickListener(new View.OnClickListener(){
@Override
publicvoid onClick(View v)
{
new Thread(new Runnable(){
@Override
publicvoid run(){
img.post(new Runnable(){
@Override
publicvoid run() {
img.setImageResource(R.drawable.india2);
}
});
}
}).start();
}
});
}
}
<Button
android:id="@+id/retrieve_location_button"
android:text="Retrieve Location"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
</LinearLayout>
MainActivity.java
package com.example.program7;
import android.app.Activity;
import android.os.Bundle;
importandroid.view.Menu;
importandroid.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.location.Location;
import android.location.LocationListener;
import android.location.LocationManager;
import android.content.Context;
importandroid.util.Log;
import android.widget.Button;
import android.widget.Toast;
protectedvoid showCurrentLocation() {
Location location =
locationManager.getLastKnownLocation(
LocationManager.GPS_PROVIDER);
if (location != null) {
String message = String.format("Current Location \n
Longitude: %1$s \n Latitude: %2$s",
location.getLongitude(), location.getLatitude()
);
Toast.makeText(MainActivity.this, message,
Toast.LENGTH_LONG).show();
}
}
publicvoid onProviderDisabled(String s) {
Toast.makeText(MainActivity.this, "Provider disabled by the
user.GPS turned off", Toast.LENGTH_LONG).show();
}
publicvoid onProviderEnabled(String s) {
Toast.makeText(MainActivity.this, "Provider enabled by the
user. GPS turned on",Toast.LENGTH_LONG).show();
}
}
}
AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.program7"
android:versionCode="1"
android:versionName="1.0">
<application android:icon="@drawable/ic_launcher"
android:label="@string/app_name">
<activity android:name=".MainActivity"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
<uses-permission
android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission
android:name="android.permission.ACCESS_MOCK_LOCATION" />
<uses-permission
android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-sdk android:minSdkVersion="3" />
</manifest>
8.Create an application that writes data to the SD card.
MainActivity.java
package in.wptraffcianalyzer.filereadwritedemo;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import android.app.Activity;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
public class MainActivity extends Activity {
EditText etPath;
EditText etContent;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
String path = getPreferences(MODE_PRIVATE).getString("fpath",
"/sdcard/wpta_file1");
etPath = (EditText) findViewById(R.id.et_path);
etPath.setText(path);
etContent = (EditText) findViewById(R.id.et_content);
OnClickListener saveClickListener = new OnClickListener(){
@Override
public void onClick(View v) {
File file = new File(etPath.getText().toString());
FileWriter writer=null;
try {
writer = new FileWriter(file);
writer.write(etContent.getText().toString());
writer.close();
SharedPreferences.Editor editor =
getPreferences(MODE_PRIVATE).edit()editor.putString
("fpath", file.getPath());
editor.commit();
Toast.makeText(getBaseContext(), "Successfully
saved", Toast.LENGTH_SHORT).show();
} catch (IOException e) {
e.printStackTrace();
}
} };
OnClickListener readClickListener = new OnClickListener(){
@Override
public void onClick(View v) {
File file = new File(etPath.getText().toString());
String strLine="";
StringBuilder text = new StringBuilder();
try {
FileReader fReader = new FileReader(file);
BufferedReader bReader = new BufferedReader(fReader);
while( (strLine=bReader.readLine()) != null ){
text.append(strLine+"\n");
}
Toast.makeText(getBaseContext(), "Successfully
loaded",Toast.LENGTH_SHORT).show();
} catch (IOException e) {
e.printStackTrace(); }
etContent.setText(text);
}
};
Button btnSave = (Button) findViewById(R.id.btn_save);
btnSave.setOnClickListener(saveClickListener);
Button btnRead = (Button) findViewById(R.id.btn_read);
btnRead.setOnClickListener(readClickListener);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}
}
Activitymain.xml
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<EditText
android:id="@+id/et_path"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:inputType="text" />
<EditText
android:id="@+id/et_content"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:inputType="textMultiLine"
android:layout_below="@id/et_path"
android:minLines="4"
android:maxLines="4" />
<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_below="@id/et_content" >
<Button
android:id="@+id/btn_read"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/str_btn_read" />
<Button
android:id="@+id/btn_save"
android:layout_toRightOf="@id/btn_read"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/str_btn_save" />
</RelativeLayout>
</RelativeLayout>
String.Xml
<resources>
<string name="app_name">FileReadWriteDemo</string>
<string name="hello_world">Hello world!</string>
<string name="menu_settings">Settings</string>
<string name="title_activity_main">FileReadWrite Demo</string>
<string name="str_btn_read">Read</string>
<string name="str_btn_save">Save</string>
</resources>
9.Implement an application that creates an alert upon receiving a
message.
activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Message!"
android:textSize="30sp"/>
<EditText
android:id="@+id/editText"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:singleLine="true"
android:textSize="30sp"/>
<Button
android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="30dp"
android:layout_gravity="center"
android:text="notify"
android:textSize="30sp"
/>
</LinearLayout>
MainActivity.java
package com.example.administrator.expg09;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.app.Notification;
import android.app.NotificationManager;
import android.app.PendingIntent;
import android.content.Intent;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
Button notify;
EditText e;
@Override
protected void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
notify=(Button) findViewById(R.id.button);
e=(EditText)findViewById(R.id.editText);
notify.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View view){
Intent intent=new Intent(MainActivity.this,
SecondActivity.class);
PendingIntent pending=
PendingIntent.getActivity(MainActivity.this,0,intent,0);
Notification noti=new Notification.Builder(
MainActivity.this).setContentTitle("New Message").
setContentText(e.getText().toString()).
setSmallIcon(R.mipmap.ic_launcher).
setContentIntent(pending).build();
NotificationManager manager=(NotificationManager)
getSystemService(NOTIFICATION_SERVICE);
noti.flags|=Notification.FLAG_AUTO_CANCEL;
manager.notify(0,noti);
}
});
}
}
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.media.Ringtone;
import android.media.RingtoneManager;
import android.net.Uri;
import android.widget.Toast;
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category
android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<receiver android:name=".AlarmReceiver">
</receiver>
</application>
</manifest>
MainActivity.java
package com.example.administrator.alarm;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.app.AlarmManager;
import android.app.PendingIntent;
import android.content.Intent;
import android.view.View;
import android.widget.TimePicker;
import android.widget.Toast;
import android.widget.ToggleButton;
import java.util.Calendar;
@Override
protected void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
alarmTimePicker = (TimePicker) findViewById(R.id.timePicker);
alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE);
}
public void OnToggleClicked(View view){
long time;
if (((ToggleButton) view).isChecked()){
Toast.makeText(MainActivity.this, "ALARM ON",
Toast.LENGTH_SHORT).show();
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.HOUR_OF_DAY,
alarmTimePicker.getCurrentHour());
calendar.set(Calendar.MINUTE,
alarmTimePicker.getCurrentMinute());
Intent intent = new Intent(this, AlarmReceiver.class);
pendingIntent=PendingIntent.getBroadcast(this, 0, intent,0);
time=(calendar.getTimeInMillis()-
(calendar.getTimeInMillis()%60000));
if(System.currentTimeMillis()>time){
if (calendar.AM_PM == 0)
time = time + (1000*60*60*12);
else
time = time + (1000*60*60*24);
}
alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, time,
10000, pendingIntent);
}
else{
alarmManager.cancel(pendingIntent);
Toast.makeText(MainActivity.this, "ALARM OFF",
Toast.LENGTH_SHORT).show();
}
}
}
activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<TimePicker
android:id="@+id/timePicker"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center" />
<ToggleButton
android:id="@+id/toggleButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_margin="20dp"
android:checked="false"
android:onClick="OnToggleClicked" />
</LinearLayout>