Practical 17
Q1)
XML file
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
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">
  <TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Hello World!"
    app:layout_constraintBottom_toBottomOf="parent"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toTopOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>
JAVA FILE
package com.example.programforactivity;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity {
  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
   }
   protected void onStart()
   {
      super.onStart();
      Log.d("OnStart","Activity is started");
      Toast.makeText(getApplicationContext(),"Activity is
started",Toast.LENGTH_SHORT).show();
   }
   protected void onResume()
   {
     super.onResume();
      Log.d("OnResume","Activity is in interaction");
      Toast.makeText(getApplicationContext(),"Activity is in interaction
",Toast.LENGTH_SHORT).show();
   }
   protected void onPause()
   {
      super.onPause();
      Log.d("OnPause","Activity is Minimized");
      Toast.makeText(getApplicationContext(),"Activity is in Minimized
",Toast.LENGTH_SHORT).show();
   }
   protected void onStop()
   {
      super.onStop();
      Log.d("OnStop","Activity get Stop");
      Toast.makeText(getApplicationContext(),"Activity get Stop
",Toast.LENGTH_SHORT).show();
   }
   protected void onDestroy()
   {
      super.onDestroy();
      Log.d("OnDestroy","Activity get Destroyed");
      Toast.makeText(getApplicationContext(),"Activity get Destroyed
",Toast.LENGTH_SHORT).show();
   }
   protected void onRestart()
   {
      super.onRestart();
      Log.d("OnRestart","Activity is Restarted");
      Toast.makeText(getApplicationContext(),"Activity is Restarted
",Toast.LENGTH_SHORT).show();
   }
}
OUTPUT:-
                                   Practical 18
Q1)
XML file
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
  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"
  android:orientation="vertical"
  android:textAlignment="center"
  tools:context=".MainActivity">
  <EditText
    android:id="@+id/edt1"
    android:minHeight="48dp"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:hint="Enter your URL"
    android:layout_gravity="center"
    android:layout_marginTop="200dp"
    android:ems="12"
     />
  <Button
    android:id="@+id/btn"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Enter "
    android:ems="8"
    android:layout_gravity="center"
    android:layout_marginTop="100dp"
    android:minHeight="48dp"
    />
</LinearLayout>
package com.example.practical181;
import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
public class MainActivity extends AppCompatActivity {
  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    Intent intent = new Intent(Intent.ACTION_WEB_SEARCH);
    EditText edt = (EditText)findViewById(R.id.edt1);
    Button btn = findViewById(R.id.btn);
    btn.setOnClickListener(new View.OnClickListener(){
       @Override
       public void onClick(View view){
         Uri uri = Uri.parse("http://"+edt.getText().toString());
         intent.setData(uri);
         try{
            startActivity(intent);
         }catch(Exception e){
            Log.d("Display Error","start activity errror ");
         }}
    }); }}
OUTPUT:-
Q2)
XML file
<?xml version="1.0" encoding="UTF-8" ?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    tools:context=".MainActivity"
    android:layout_height="match_parent"
    android:layout_width="match_parent"
    android:orientation = "vertical"
  >
  <TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text = "Smart Dialer"
    android:textSize="40sp"
    android:layout_gravity="center"
    android:layout_marginTop="100dp"/>
  <EditText
    android:id="@+id/edt1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:ems="12"
    android:inputType="numberDecimal"
    android:hint="Enter mobile number"
    android:layout_gravity="center"
    android:layout_marginTop="40dp"
    android:minHeight="48dp"
    />
  <Button
    android:id="@+id/btn"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="center"
    android:layout_margin="80dp"
    android:text="Submit"
    />
</LinearLayout>
JAVA FILE
package com.example.practical182;
import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
public class MainActivity extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.activity_main);
      EditText edt = findViewById(R.id.edt1);
      Button btn = findViewById(R.id.btn);
      Intent intent = new Intent(Intent.ACTION_DIAL);
        btn.setOnClickListener(new View.OnClickListener() {
           @Override
           public void onClick(View v) {
             intent.setData(Uri.parse("tel:"+edt.getText().toString()));
             startActivity(intent);
           }
        });
    }
}
AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:tools="http://schemas.android.com/tools">
    <uses-feature
      android:name="android.hardware.telephony"
      android:required="false" />
    <uses-permission android:name="android.permission.CALL_PHONE"/>
    <application
    android:allowBackup="true"
    android:dataExtractionRules="@xml/data_extraction_rules"
    android:fullBackupContent="@xml/backup_rules"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:roundIcon="@mipmap/ic_launcher_round"
    android:supportsRtl="true"
    android:theme="@style/Theme.Practical182"
    tools:targetApi="31">
    <activity
      android:name=".MainActivity"
      android:exported="true">
      <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
      </intent-filter>
    </activity>
  </application>
</manifest>
OUTPUT:-
Q3)
XML file
Activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
  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"
  android:orientation="vertical"
  tools:context=".MainActivity">
  <EditText
    android:id="@+id/edt1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:hint="Enter number"
    android:layout_gravity="center"
    android:layout_marginTop="200dp"
    android:inputType="numberDecimal"
    android:ems="12"
    android:minHeight="48dp"
    />
  <Button
  android:id="@+id/btn"
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  android:layout_gravity="center"
  android:layout_marginTop="100dp"
  android:text="Submit"
  />
</LinearLayout>
JAVA FILE
MainActivity.java
package com.example.pracitcal183;
import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
public class MainActivity extends AppCompatActivity {
    Intent intent;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.activity_main);
      EditText edt = findViewById(R.id.edt1);
      Button btn = findViewById(R.id.btn);
      intent = new Intent(getApplicationContext(),secondActivity.class);
      btn.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
           intent.putExtra("number",Integer.parseInt(edt.getText().toString()));
           startActivity(intent);
           }
        });
    }
}
XML file
Activity_second.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
  xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:tools="http://schemas.android.com/tools"
  tools:context=".secondActivity"
  android:layout_height="match_parent"
  android:layout_width="match_parent"
  >
  <TextView
    android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Value"
        android:layout_centerInParent="true"
        android:textSize="40sp"
        android:id="@+id/txtres"
        />
</RelativeLayout>
JAVA FILE
secondActivity.java
package com.example.pracitcal183;
import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
public class secondActivity extends AppCompatActivity {
    public int factorial(int val){
      if (val == 0)
         return 1;
      else
         return(val * factorial(val-1));
    }
    @Override
    protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.activity_second);
      TextView txt = findViewById(R.id.txtres);
      Intent intent = getIntent();
      int value = intent.getIntExtra("number",1);
      Log.d("factioral",Integer.toString(factorial(value)));
      txt.setText("factorial is :"+Integer.toString(factorial(value)));
    }
}
OUTPUT:-