Internship Report Format
Internship Report Format
Submitted by
DINESH.P 717821P214
BACHELOR OF ENGINEERING
IN
MAY 2023
i
CERTIFICATE
– 2023 academic year, in partial fulfilment of the requirements for the award of the
DESIGN.
Certified that the candidate was examined in the viva-voce examination held on……………………….
……………………..
(Internal Examiner)
ii
INTERNSHIP CERTIFICATE
iii
ACKNOWLEDGEMENT
1
ABSTRACT
Java is a versatile and powerful programming language that can be used for
developing a wide range of applications. It is platform-independent, which means it
can be run on any platform, including Android and iOS. An important note regarding
iOS is that there is no Java Virtual Machine running on iPhones. However, you can
bypass this limitation by compiling the Java input to the Objective-C code. Why
would one prefer using Java? As a mobile app development language, Java has many
benefits and reasons to stick to it. As of now, the main perks of Java for mobile app
development range from cross-platform compatibility, constant updates, and pen-
source to community support and native mobile development tools.Mobile
application development is the process of making software for smartphones, tablets
and digital assistants, most commonly for the Android and iOS operating systems.
The software can be preinstalled on the device, downloaded from a mobile app store
or accessed through a mobile web browser. The programming and markup languages
used for this kind of software development include Java.Mobile app development is
rapidly growing. From retail, telecommunications and e-commerce to insurance,
healthcare and government, organizations across industries must meet user
expectations for real- time, convenient ways to conduct transactions and access
information. Today, mobile devices—and the mobile applications that unlock their
value—are the most popular way for people and businesses to connect to the internet.
To stay relevant, responsive and successful, organizations need to develop the mobile
applications that their customers, partners and employees demand. Yet mobile
application development might seem daunting. Once you’ve selected the OS platform
or platforms, you need to overcome the limitations of mobile devices and usher your
app all the way past the potential hurdles of distribution. Fortunately, by following a
few basic guidelines and best practices, you can streamline your application
development journey.
2
There are two dominant platforms in the modern smartphone market. One is the iOS
platform from Apple Inc. The iOS platform is the operating system that powers
Apple's popular line of iPhone smartphones. The second is Android from Google. The
Android operating system is used not only by Google devices but also by many other
OEMs to built their own smartphones and other smart devices.Depending on the
intended use case and target audience for the mobile application you are developing,
you might have other considerations. For example, if you’re designing an app for
your organization’s employees, you’ll need to support the platforms they use, which
may mean developing cross-platform apps that work for both Android and iOS. Or if
you’re building a mobile application for your customers and you know the majority of
them, use iPhones, then developing iOS applications should be a top priority.
Additional considerations when developing your mobile applications include
monetization strategies and anticipated user behavior which can be influenced by
geographical and cultural factors.
3
TABLE OF CONTENTS
CHAPTER PAGE
TITLE
NO NO
ACKNOWLEDGEMENT 1
ABSTRACT 2
2 HISTORY OF ANDROID 9
4
WEEKLY INTERNSHIP REPORT ACTIVITIES
5
DATE DAY NAME OF THE TOPIC/MODULE COMPLETED
15.02.2023 Monday Loading page creation in xml coding
5th WEEK
6
INTRODUCTION
Chapter:1
Mobile application development is the process of creating software
applications that run on a mobile device, and a typical mobile application utilizes
a network connection to work with remote computing resources. Hence, the
mobile development process involves creating installable software bundles
(code, binaries, assets, etc.), implementing backend services such as data access
with an API, and testing the application on target devicesThere are two
dominant platforms in the modern smartphone market. One is theiOS platform
from Apple Inc. The iOS platform is the operating system that powers Apple's
popular line of iPhone smartphones. The second is Android from Google. The
Android operating system is used not only by Google devicesbut also by many
other OEMs to built their own smartphones and other smart devices.Although
there are some similarities between these two platforms when building
applications, developing for iOS vs. developing for Android involves using
different software development kits (SDKs) and different development
toolchain. While Apple uses iOS exclusively for its own devices, Google
makesAndroid available to other companies provided they meet specific
requirementssuch as including certain Google applications on the devices they
ship.
7
1.1 Alternatives for Building Mobile Apps
Each of these approaches for developing mobile applications has its own set of
advantages and disadvantages. When choosing the right development approachfor
their projects, developers consider the desired user experience, the computing
resources and native features required by the app, the development budget, time
targets, and resources available to maintain the app.
8
HISTORY OF ANDROID
Chapter:2
9
Rubin had difficulty attracting investors early on, and Android was facing
eviction from its office space. Steve Perlman, a close friend of Rubin, brought
him $10,000 in cash in an envelope, and shortly thereafter wired an undisclosed
amount as seed funding. Perlman refused a stake in the company, and has stated
"I did it because I believed in the thing, and I wanted to help Andy. In 2005,
Rubin tried to negotiate deals with Samsung and HTC. Shortly afterwards,
Google acquired the company in July of that year for at least $50 million; this
was Google's "best deal ever" according to Google's then-vice president of
corporate development, David Lawee, in 2010. Android's key employees,
including Rubin, Miner, Sears, and White, joined Google as part of the
acquisition. Not much was known about the secretive Android Inc. at the time,
with the company having provided few details other than that it was making
software for mobile phones. At Google, the team led by Rubin developed a
mobile device platform powered by the Linux kernel. Google marketed the
platform to handset makers and carriers on the promise of providing a flexible,
upgradeable system. Google had "lined up a series of hardware components and
software partners and signaled to carriers that it wasopen to various degrees of
cooperation".Speculation about Google's intention to enter the mobile
communications market continued to build through December 2006. An early
prototype had aclose resemblance to a BlackBerry phone, with no touchscreen
and a physical QWERTY keyboard, but the arrival of 2007's Apple iPhone
meant thatAndroid "had to go back to the drawing board". Google later changed
its Android specification documents to state that "Touchscreens will be
supported" although “the product was designed with the presence of discrete
physical buttons as an assumption,therefore a touchscreen cannot completely
replace physical buttons”.
10
By 2008, both Nokia and BlackBerry announced touch-basedsmartphones
to rival the iPhone 3G, and Android's focus eventually switched to just
touchscreens. The first commercially available smartphone running Android was
the HTC Dream, also known as T-Mobile G1, announced on September 23,
2008. On November 5, 2007, the Open Handset Alliance, a consortium of
technology companies including Google, device manufacturers such as HTC,
Motorola and Samsung, wireless carriers such as Sprint and T-Mobile, and
chipset makers such as Qualcomm and Texas Instruments, unveiled itself, with a
goal to develop "the first truly open and comprehensive platform for mobile
devices".Within a year, the Open Handset Alliance faced two other open source
competitors, the Symbian Foundation and the LiMo Foundation, the latter also
developing a Linux-based mobile operating system.Since 2008, Android has
seen numerous updates which have incrementally improved the operating
system, adding new features and fixing bugs in previousreleases. Each major
release is named in alphabetical order after a dessert or sugary treat, with
the first few Android versions being called "Cupcake", "Donut", "Eclair", and
"Froyo", in that order. During its announcement of Android KitKat in 2013,
Google explained that "Since these devices make our lives so sweet, each
Android version is named after a dessert", although a Google spokesperson told
CNN in an interview that "It's kind of like an internalteam thing, and we prefer
to be a little bit—how should I say—a bit inscrutablein the matter, I'll say".In
2010, Google launched its Nexus series of devices, a lineup in which
Googlepartnered with different device manufacturers to produce new devices
and introduce new Android versions. The series was described as having
"played a pivotal role in Android's history by introducing new software
iterations and hardware standards across the board", and became known for its
"bloat-free" software with "timely ... updates".At its developer conference in
May 2013.
11
Google announced a special version of the Samsung Galaxy S4, where, instead
of using Samsung's own Android customization, the phone ran "stock Android"
and was promised to receive new system updates fast.Thedevice would become
the start of the Google Play edition program, and was followed by other
devices, including the HTC One Google Play edition,and Moto G Google Play
edition. In 2015, Ars Technica wrote that "Earlier this week, the last of the
Google Play edition Android phones in Google's online storefront were listed
as"no longer available for sale" and that "Now they're all gone, and it looks a
whole lot like the program has wrapped up".From 2008 to 2013, Hugo Barra
served as product spokesperson, representingAndroid at press conferences and
Google I/O, Google's annual developer- focused conference. He left Google in
August 2013 to join Chinese phone maker Xiaomi.[43][44] Less than six months
earlier, Google's then-CEO Larry Page announced in a blog post that Andy
Rubin had moved from the Androiddivision to take on new projects at Google,
and that Sundar Pichai would become the new Android lead.[45][46] Pichai
himself would eventually switch positions, becoming the new CEO of Google
in August 2015 following the company's restructure into the Alphabet
conglomerate, making Hiroshi Lockheimer the new head of Android.On
Android 4.4 Kit Kat, shared writing access to MicroSD memory cards hasbeen
locked for user-installed applications, to which only the dedicated directories
with respective package names, located inside Android/data/ ,remained
writeable. Writing access has been reinstated with Android5 Lollipop through
the backwards-incompatible Google Storage AccessFramework interface. In
June 2014, Google announced Android One, a set of "hardware reference
models" that would "allow [device makers] to easily create high-quality
phonesat low costs", designed for consumers in developing countries. In
September, Google announced the first set of Android One phones for release
inIndia.
12
However, Recode reported in June 2015 that the project was "a
disappointment", citing "reluctant consumers and manufacturing partners"
and"misfires from the search company that has never quite crackedhardware".
Plans to relaunch Android One surfaced in August 2015, with Africa announced
as the next location for the program a week later. A report from The
Information in January 2017 stated that Google is expanding its low-
cost.Android One program into the United States, although The Verge notes that
thecompany will presumably not produce the actual devices itself.Google
introduced the Pixel and Pixel XL smartphones in October 2016, marketed as
being the first phones made by Google, and exclusively featured certain
software features, such as the Google Assistant, before wider rollout. The Pixel
phones replaced the Nexus series, with a new generation of Pixel phones
launched in October 2017. In May 2019, the operating system became
entangled in the trade war between China and the United States involving
Huawei, which, like many other tech firms, had become dependent on access to
the Android platform. In the summerof 2019, Huawei announced it would
create an alternative operating system to Android known as Harmony OS, and
has filed for intellectual property rights across major global markets.[73][74] Under
such sanctions Huawei has long-term plans to replace Android in 2022 with the
new operating system, as Harmony OS was originally designed for internet of
things devices, rather than for smartphones and tablet On August 22, 2019, it
was announced that Android "Q" would officially be branded as Android 10,
ending the historic practice of naming major versions after desserts. Google
stated that these names were not "inclusive" to international users (due either to
the aforementioned foods not being internationally known, or being difficult to
pronounce in some languages). Onthe same day, Android Police reported that
Google had commissioned a statueof a giant number "10" to be installed in the
lobby of the developers' new office.Android 10 was released on September 3,
2019, to Google Pixel phonesfirst.In late 2021, some users reported that they
13
were unable to dial emergency services.
14
The problem was caused by a combination of bugs in Android and in the
Microsoft Teams app; both companies released updates addressing the issue
like Google. In September 2007, InformationWeek covered an Evalueserve
study reporting that Google hadfiled several patent applications in the area
ofmobile telephony. Since 2008, Android has seen numerous updates which
have incrementally improved the operating system, adding new features and
fixing bugs in previousreleases. Each major release is named in alphabetical
order after a dessert or sugary treat, with the first few Android versions being
called "Cupcake","Donut", "Eclair", and "Froyo", in that order. During its
announcement ofAndroid KitKat in 2013, Google explained that "Since these
devices make our lives so sweet, each Android version is named after a
dessert", although a Google spokesperson told CNN in an interview that "It's
kind of like an internalteam thing, and we prefer to be a little bit—how should I
say—a bit inscrutablein the matter, In 2010, Google launched its Nexus series
of devices, a lineup in which Googlepartnered with different device
manufacturers to produce new devices and introduce new Android versions.
The series was described as having "played a pivotal role in Android's history
by introducing new software iterations and hardware standards across the
board", and became known for its "bloat-free" software with "timely ...
updates".At its developer conference in May 2013, Google announced a special
version of the Samsung Galaxy S4, where, instead of using Samsung's own
Android customization, the phone ran "stock Android"and was promised to
receive new system updates fast.The device would becomethe start of the
Google Play edition program, and was followed by other devices, including the
HTC One Google Play edition,and Moto G Google Play edition. In 2015, Ars
Technica wrote that "Earlier this week, the last of the Google Play edition
Android phones in Google's online storefront were listed as "no longer available
for sale" and that "Now they're all gone, and it looks a whole lot like the
program has wrapped up".
15
2.1 Java for mobile development?
Java is a versatile and powerful programming language that can be used for
developing a wide range of applications. It is platform-independent, which
means it can be run on any platform, including Android and iOS. An important
note regarding iOS is that there is no Java Virtual Machine running on iPhones.
However, you can bypass this limitation by compiling the Java input to the
Objective-C code.
Before going any further and explaining why businesses should stick to
Java,let’s highlight its primary benefits.
Security and robustness
One of the main features of Java as a mobile application development tool
is itsapproach to security. As a programming language, Java has a range of
essentialsecurity features that guarantee its robustness. If you combine this perk
with cross-compatibility, you’ll get a top-notch tool for developing a mission-
criticalapplication for your business.
Widespread popularity
Another great perk of using Java for mobile application development is its
widespreadness in the coders’ community. It means that you have a chanceto offshore
the entire Java development team and have a great selection of specialists to choose
from. On top of that, many Android apps run on Java making it a prevalent platform
for developing, releasing, and marketing yourmobile app.
Built-in mobile development features
16
Compared to other programming languages, Java seems to be most
suited for developing a top-notch mobile application. It has numerous
features that affectapp performance, such as Just-In-Time compilation
and garbage collection.Because this programming language utilizes the
resources efficiently, it’s the most well-rounded tool for mobile
development purposes.
Relatively low investment
Remember we mentioned that Java is one of the most widespread
programminglanguages in the field? And that there is a huge user base
with billions of devices that can run mobile apps? These two statements
translate into the fact that there are development teams that offer high-
quality Java services at affordable rates. For your business, it translates
into better hiring options, reduced recruitment costs, and better results for
your application.
17
Built-in support for Google Cloud Platform, enabling integration with
Firebase Cloud Messaging (Earlier 'Google Cloud Messaging') and
GoogleApp Engine.
Android Virtual Device (Emulator) to run and debug apps in the
Androidstudio.
18
2.5 VERSION HISTORY OF ANDROID :
19
Version Release date
20
2.5 SYSTEM REQUIREMENTS:
Microsoft
macOS Linux
Windows
21
CHAPTER: 3
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/app_name"
android:textSize="34dp"
package com.example.notespro;
import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.os.Bundle;
import android.os.Handler;
22
public class splashacitivity extends AppCompatActivity
{ @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_splashacitivity);
new Handler().postDelayed(new
Runnable() { @Override
public void run() {
startActivity(ne
w
Intent(splashacitivity.this,MainActivity.class));
}
}(1000);
}
}
23
OUTPUT:
24
4.2 Login screen with firebase Authentication:
CODING:
<ImageView
android:layout_width="100dp"
android:layout_height="100dp"
android:layout_centerHorizontal="tru
e" android:id="@+id/sigin_icon"
android:layout_marginVertical="18dp
" android:src="@drawable/sigin"/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@id/sigin_icon"
android:id="@+id/hello_text"
android:orientation="vertical">
<TextView
android:layout_width="match_pa
rent"
android:layout_height="wrap_co
ntent" android:text="Hello"
android:textSize="32sp"
25
android:textStyle="bold"
android:textColor="@color/black
"/>
<TextView
android:layout_width="match_parent"
android:layoutheight= "wrap_content"
android:text="Welcome" android:textSize="32sp"
android:textStyle="bold"
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@id/sigin_icon"
android:id="@+id/hello_text"
android:orientation="vertical">
<TextView
android:layout_width="match_pa
rent"
android:layout_height="wrap_co
ntent" android:text="Hello"
android:textSize="32sp"
android:textStyle="bold"
android:textColor="@color/black
"/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@id/hello_text"
android:id="@+id/form_layout"
android:layout_marginVertical="32dp"
android:orientation="vertical">
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
26
android:hint="Email id"
android:id="@+id/Emailid_edit_text"
android:inputType="textEmailAddress"
android:background="@drawable/rounde
d_corner" android:padding="16dp"
android:textSize="20sp"
android:layout_marginTop="12dp"/>
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="password"
android:id="@+id/password_edit_text"
android:inputType="textPassword"
android:background="@drawable/rounde
d_corner" android:padding="16dp"
android:textSize="20sp"
android:layout_marginTop="12dp"/>
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="confirm password"
android:id="@+id/confirm_password_edit
_text" android:inputType="textPassword"
android:background="@drawable/rounde
d_corner" android:padding="16dp"
android:textSize="20sp"
android:layout_marginTop="12dp"/>
<com.google.android.material.button.Material
Button
android:layout_width="match_parent"
android:layout_height="64dp"
android:text="Create Account"
android:id="@+id/crete_account_btn"
android:textSize="16sp"
android:layout_margin="23dp"/>
<ProgressBar
27
android:layout_width="24dp"
android:layout_height="24dp"
android:id="@+id/progressbar"
android:visibility="gone"
android:layout_gravity="center"
android:layout_marginTop="12dp"
/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@id/form_layout"
android:orientation="vertical"
android:gravity="center">
<TextView
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:text="Already have an account?"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:text="login"
android:id="@+id/login_text_view_btn"
android:textStyle="bold"/>
</LinearLayout>
</RelativeLayout>
package com.example.notespro1;
import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;
import android.app.Activity;
28
import
android.media.MediaPlayer;
import android.os.Bundle;
importandroid.util.Patterns;
import android.view.View;
import
android.widget.Button;
import
android.widget.EditText;
import
android.widget.ProgressBar;
import
android.widget.TextView;
import
com.google.android.gms.tasks.OnCompleteListener;
import com.google.android.gms.tasks.Task;
import com.google.firebase.auth.AuthResult;
import
com.google.firebase.auth.FirebaseAuth;
import java.util.regex.Pattern;
@Override
29
protected void onCreate(Bundle
savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_createacco
unt);
emailEditText =
findViewById(R.id.Emailid_edit_text);
passwordEditText =
findViewById(R.id.password_edit_text);
confirmpasswordEditText =
findViewById(R.id.confirm_password_edit_text);
CreateAccountBtn =
findViewById(R.id.crete_account_btn); progressBar =
findViewById(R.id.progressbar); loginBtnTextview =
findViewById(R.id.login_text_view_btn);
CreateAccountBtn.setOnClickListener(v>createaccont
());
loginBtnTextview.setOnClickListener(v->finish());
void createaccount(){
String email = emailEditText.getText().toString();
String password =
passwordEditText.getText().toString(); String
confirmpassword =
confirmpasswordEditText.getText().toString();
30
boolean isvalidated =
validateData(email,password,confirmpassword); if(!isvalidated){
return;
}
createAccountInFirebase(email,password);
}
void createAccountInFirebase(String email,String
password){ changeInProgress(true);
FirebaseAuth firebaseAuth =
FirebaseAuth.getInstance();
firebaseAuth.createUserWithEmailAndPassword(email,password).addOnCo
mpleteLi stener(createaccount.this,
new
OnCompleteListener<AuthRes
ult>() { @Override
public void onComplete(@NonNull
Task<AuthResult> task)
{
if(task.isComplete()){
//creating account is done
}
}
}
);
31
}
void changeInProgress(boolean
inProgress){ if(inProgress){
progressBar.setVisibility(View.VISIBLE);
CreateAccountBtn.setVisibility(View.GONE);
}else{
progressBar.setVisibility(View.GONE);
CreateAccountBtn.setVisibility(View.VISIBLE);
}
}
if (!Patterns.EMAIL_ADDRESS.matcher(email).matches()){
emailEditText.setError("Email is Invalid");
return false;
}
if(password.length()<6){
passwordEditText.setError("password length is invalid"); return
false;
}
if(password.equals(confirmpassword)){
confirmpasswordEditText.setError("password not matched");
return false;
}
return true;
}
32
OUTPUT:
33
4.3 NOTIFICATION BAR:
CODING:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
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"
android:padding="20dp"
tools:context=".actionbar">
<Button
android:id="@+id/alertbutton"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:text="Close Application"
android:textSize="20dp"/>
</RelativeLayout>
package com.example.mynotificationtest;
import androidx.appcompat.app.AlertDialog;
import
androidx.appcompat.app.AppCompatActivity;
import android.content.DialogInterface;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
public class actionbar extends AppCompatActivity {
Button btnclose;
AlertDialog.Builder builder;
@Override
34
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_actionbar);
btnclose = findViewById(R.id.alertbutton);
builder = new AlertDialog.Builder(this);
btnclose.setOnClickListener(new
View.OnClickListener() { @Override
public void onClick(View view)
{ builder.setTitle("Alert!!")
.setMessage("Do you want to close the
application");
.setCancelable(true)
.setPositiveButton("Yes",
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface
dialogInterface, int i) {
finish();
}
})
.setNegativeButton("no",
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface
dialogInterface, int i) {
}
})
.show();
}
});
}
}
35
OUTPUT:
36
CONCLUSION
After achieving the proper goal life, an enginner has to enter professional
life.According to this life,he has to serve an industry,may be public or private
sector or self owned.For the efficient work in the field,he must be well aware of
the practical knowledge as well as theoretical knowedge.
Due to all above reasons and to bridge the gap between theory and
practical our Enginnering curriculam provides a practical training of 30
days.During this period a student works in the industry and get all types of
experience and knowledge about the working of companies and hardware and
software tools.
37
REFERENCES
Web Links:
38