Campus news information system - Android
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

Campus news information system - Android

on

  • 1,895 views

This is android project for campus news to your smart phones easily from any where

This is android project for campus news to your smart phones easily from any where

Statistics

Views

Total Views
1,895
Views on SlideShare
1,895
Embed Views
0

Actions

Likes
2
Downloads
87
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Campus news information system - Android Document Transcript

  • 1. [1] ACKNOWLEDGEMENT We thank the management of K. C. College of Engineering our Principal and the staff of the Information Technology Department, for motivating us to think beyond books and imbibing in us the attitude and aptitude to implement what we have studied thus far to make us aware with some of the real world challenges. We would like to convey our heartfelt gratitude to our Head of Department Prof. Aarti Bakshi and our project guide Prof. Varsha Wangikar, for inspiring us to take up this project. Their valuable guidance and timely support, without which, we would have never been able to complete the project, cannot be forgotten. We would like to thank Prof. Varsha Wangikar for providing immense support to us and imbibing us with knowledge about the Android based applications. Finally, we would like to express our gratitude for the faculty members of Information Technology Department of K. C. College of Engineering and thank them for their co-operation and timely assistance. Finally, we would like to thank our parents for their moral support. Dhruvil S. Dhulia Harshal J. Nandgaonkar Santosh S. Patel
  • 2. [2] INDEX SR.NO. CONTENTS PAGE NO. Acknowledgement I List of figures IV Abstract V 1. Project Overview 6 1.1 Introduction 7 1.2 Scope & Objective 9 2. Project Analysis 11 2.1 Problem Statement 12 2.2 Literature Survey 14 2.3 Methodology used 15 2.4 Cost Estimation 19 2.5 Gantt Chart (Month wise) 20 2.6 Responsibility Matrix 23 2.7 Data Flow Diagram 24 3. Project Design 25 3.1 Block Diagram 26 3.2 Sequence Diagram 27 3.4 Interface design 29 4. Implementation 30 4.1 Hardware Requirement & software Requirement 31 4.2 Experimental setup 32 4.3 Coding 33 4.4 Testing 44 4.4.1 Different test cases 45 5. Result 47 5.1 Snap Shots of Project 48 6. Advantages of Project 57 7. Conclusion & Future Scope 59 7.1 Conclusion 60 7.2 Further Scope 61 8 References 63
  • 3. [3] List of Acronyms • IEEE: Institute of Electrical And Electronics Engineers. • DSL: Digital Subscriber Line. • API: Application Programming Interface. • Opengl: Open Graphics Library. • HTTP: Hypertext Transfer Protocol.( Wireless Fidelity). • GSM: The Global System For Mobile Communications (GSM). • CDMA: Code Division Multiple Access. • EV-DO: Enhanced Voice-Data Optimized or Enhanced Voice-Data Only(Ev-DO, EV, EVDO Etc.). • PHP : Hypertext Preprocessor. • QBE: Query By Example. • CSV: Common Service Interface.
  • 4. [4] LIST OF FIGURES SR.NO. FIGURES NAME PAGE NO. 1 Architecture of Android 8 2 Current scenario of android market 12 3 Gantt chart 1 20 4 Gantt chart 2 21 5 Gantt chart 3 22 6 Level zero DFD 24 7 Level one DFD 24 8 Block Diagram 26 9 Sequence Diagram 1 27 10 Sequence Diagram 2 27 11 Sequence Diagram 3 28 12 Interface Diagram 29 13 Administrator Login 48 14 Administrator Tab 48 15 Student Login 49 16 Student Tab 49 17 Download List database 50 18 Files directory 50 19 Apply course 51 20 Course database 51 21 View history 52 22 Transfer File 52 23 Admin notification 53 24 Student notification 53 25 Guest Tab 54 26 View course Tab 54 27 Events Tab 55 28 Alumni Tab 55 29 Images Tab 56
  • 5. [5] ABSTRACT Through this report, we introduce a novel approach to sharing information between students, lecturers and the administration in order to enhance quality of information in campus environment. We describe a network for distributing campus information among lecturers and students. The concept of developing campus information is to ensure that student can access information at any time, at any locations and ad-hoc basic. Information System helps the students and lecturers on campus to find and access information based on ad-hoc basic, which is of interest and relevant to students or lecturers through a smart phone. We will develop an Android application thereby providing a collaborative communication system within the campus aiding everyone participating in it. This will create a ubiquitous environment throughout the campus making it a very positive and exciting experience for all the participants. Thus we have implemented the android application which promotes high usage of mobile phones by students into a system through which the students can learn and to present an informative tool which they can use to solve their queries and also receive the latest news running around the campus on their mobile phone devices. With maximum people shifting towards smart phones and a boom in the android application market has motivated us to develop an Android application that will prove to be learning as well as an informative tool for the students across the campus. Our concept of developing a campus information system seeks to provide a collaborative communication system anytime, anywhere throughout the campus. In this project we present a thorough model that we seek to design Campus News Information System as an Android application.
  • 6. [6] PROJECT OVERVIEW
  • 7. [7] 1.1 INTRODUCTION India has the fastest growing telecom network in the world with many users moving towards Smart Phones and majority by students. Other than India all over the world has boom in mobile with many applications that are useful in day today life such as games apps, video calls, photograph apps, Shopping Apps, easy search options etc We introduce a novel approach to share information via an Android application between students and lecturers in order to enhance quality of information in campus environment via HTTP technology. We describe a network for distributing campus information among lecturers and students. The concept of developing campus information via HTTP technology is to ensure that student can access information at any time, within campus. Information System helps the students and lecturers on campus to find and access information based on ad-hoc basic, which is of interest and relevant to students or lecturers, they only need an Android-based smart phone. The CNIS model will use a Semantic Mobile Environment. The architecture of the CNIS will consist of three components: a web application as the user frontend, a server application in the middle and a freely scalable number of service nodes for delivering the information to the mobile devices. Android is Open Google mobile platform which provide greater flexibility, Rapid Application Development and Easy to Develop User Inteface with rich api collection. It is mixture of c,c++ and java.
  • 8. [8] Figure 1: Architecture of Android Android Architecture: 1) Linux operating system kernel that provides the low-level interface with the hardware, memory management, and process control, all optimized for mobile devices. 2) Open source libraries for providing various functionality like Browsing ,font rendering, Multimedia stuff etc. It include SQLite, Web Kit, OpenGL, media manager, Free type and SGL, SurfaceManager etc. • Android uses Dalvik VM which Supports multiple virtual machine processes per device Uses runtime memory efficiently Java .class / .jar files converted to .dex at build time Runs optimized file format (.dex) and Dalvik bytecode 3) An application framework that exposes system services to the application layer, including the window manager, content providers, location manager, telephony, and peer-to-peer services. 4)Application layer which provide interface to develop user-interface and application. It contain all application which interact with user.
  • 9. [9] 1.2 SCOPE Android being a relatively new technology, the future scope in the project is immense. Scalability would be the biggest scope. The application can be made available off campus as well whereby only certain services would be made available to the user. Information security plays a vital role in the system work model for ensuring confidentiality and integrity, smooth functioning and reduced misuse of the system. Advanced security features can be employed for enhanced functioning of the application. As of for now, the project will enable the college student to download the study material such as question bank, assignment questions, tutorials etc. But in the near future, if the lecturer or the professor is not able to take lectures for a long duration, then the lecturer can make a video of the lecture from his workplace and give it to the administrator to upload it on the server, and the corresponding link will be send to the students. Thus the process of e-learning can be incorporated with the CNIS project in the future to provide a robust learning system with the CNIS being a communication system or bridging the gap for a better learning experience. Being a relatively new idea in India, we can even go commercial with the idea and provide numerous campuses with the application.
  • 10. [10] 1.3 OBJEVTIVE Ubiquity across an enterprise or campus is a very positive and exciting experience for the students, faculty, staff and visitors to the institution. Having instant access to email, the internet, and other IT services irrespective of location can dramatically change the way your constituents live, work, study, learn, and play. Thus with CNIS we provide a ubiquitous environment across the campus wherein it will serve as a collaborative communicative system. Our concept of developing a campus information system seeks to answer these questions in a personalized way, at any time, at any location. The idea is to enable the user to find and access all information that is of relevance to him. All he needs is a smart phone which enables the execution of an android application. All used techniques are in themselves not new or unique, but the combination of instant messaging. On top of that, the system based on a platform made purely for research is in the stage of evolving into a product and is even now being utilized as a public service on-campus. There is also an approach to use mobile devices for interaction during classroom teaching. Altogether we find a situation on Campus, where students use their mobile device for learning and interacting.
  • 11. [11] PROJECT Analysis
  • 12. [12] 2.1 PROBLEM STATEMENT India is the fastest growing telecom network in the world with many users moving towards Smart Phones and majority among them being youngsters and students. Other than India all over the world has boom in mobile with many applications that are useful in day today life such as games apps, video calls, photograph apps, Shopping Apps, easy search options etc. Now a day’s mobile is not just for communication purpose but also used for doing number of work using single application within one phone. People just use mobile applications to complete their work faster, efficiently, effectively. Figure 2: Scenario of Android Market  These types of application are provided by many companies like Nokia with windows application, Apples Mac OS and largest selling Samsung Android phone has covered the entire mobile market.  Today all Mobile devices are inbuilt with Bluetooth device. The University of Koblenz campus: in a series of projects in 2010, they developed “Living Books”, personalized, intelligent teaching material, which is also available for PDAs and smart mobile phones. There was also an approach to use mobile devices for interaction during classroom teaching.But the problem with the concept
  • 13. [13] of Living Books was that they used the Bluetooth technology. The Bluetooth technology has the following problems:  One of the things that may cause conflicts for Bluetooth is that it uses the same frequency as the Wavelength standard.  Another problem for Bluetooth is when there are a number of mobile devices in the same room, and possibly attempting the same operation. Since Bluetooth is Omni-directional, it encounters problems in discovering the intended recipient device. Bluetooth devices must perform a discovery operation that will likely find many other devices in the same room. At this point, the user must choose the proposed recipient, which will require special information.  Furthermore, Bluetooth has so many security mechanisms that it would have to carry out in order to prevent eavesdropping. Using Bluetooth, inbuilt application and new application cannot be used in efficient manner, so we have to enlarge our scope from Bluetooth to HTTP or GSM which is much, highly effective in use. Solution to the above problem:  In this project we present a thorough model that we seek to design Campus News Information System as an Android application.  Using Android technology to develop this application, the drawbacks of Bluetooth are overcome and also the purpose of ubiquity is kept alive. Creating an android application for this purpose will have the following advantages:  GSM, EDGE, CDMA, Bluetooth, HTTP, EV-DO and UMTS technologies to send/receive data across mobile networks.  A wide range of libraries for image, audio and video files.  Export and signing app for publishing, SQLite for data storage.
  • 14. [14] 2.2 LITERATURE SURVEY The University of Koblenz campus: in a series of projects in 2010, they developed “Living Books”, personalized, intelligent teaching material, which is also available for PDAs and smart mobile phones. There was also an approach to use mobile devices for interaction during classroom teaching. But the problem with the concept of Living Books was that they used the Bluetooth technology. The Bluetooth technology has the following problems:  One of the things that may cause conflicts for Bluetooth is that it uses the same frequency as the Wavelength standard.  Another problem for Bluetooth is when there are a number of mobile devices in the same room, and possibly attempting the same operation. Since Bluetooth is Omni-directional, it encounters problems in discovering the intended recipient device. Bluetooth devices must perform a discovery operation that will likely find many other devices in the same room. At this point, the user must choose the proposed recipient, which will require special information.  Furthermore, Bluetooth has so many security mechanisms that it would have to carry out in order to prevent eavesdropping.
  • 15. [15] 2.3MEHTODOLOGY USED Campus news information system design mainly focused on two sections  The tool we have used is : Eclipse IDE  Technology used: HTTP based  Programming used: Android Programming. 1) ANDROID SDK The Android SDK provides you the API libraries and developer tools necessary to build, test, and debug apps for Android. If you're a new Android developer, we recommend you download the ADT Bundle to quickly start developing apps. It includes the essential Android SDK components and a version of the Eclipse IDE with built-in ADT (Android Developer Tools) to streamline your Android app development. With a single download, the ADT Bundle includes everything you need to begin developing apps: • Eclipse + ADT plugin • Android SDK Tools • Android Platform-tools • The latest Android platform • The latest Android system image for the emulator • HyperNext Android Creator • RFO Basic • Android APIMiner
  • 16. [16] 2) phpMyAdmin phpMyAdmin is a free software tool written in PHP, intended to handle the administration of MySQL over the World Wide Web. phpMyAdmin supports a wide range of operations with MySQL. The most frequently used operations are supported by the user interface (managing databases, tables, fields, relations, indexes, users, permissions, etc), while you still have the ability to directly execute any SQL statement. Features  Intuitive web interface  Support for most MySQL features:  browse and drop databases, tables, views, fields and indexes  create, copy, drop, rename and alter databases, tables, fields and indexes  maintenance server, databases and tables, with proposals on server configuration  execute, edit and bookmark any SQL-statement, even batch-queries  manage MySQL users and privileges  manage stored procedures and triggers  Import data from CSV and SQL  Export data to various formats: CSV, SQL, XML, PDF, ISO/IEC 26300 - OpenDocument Text and Spreadsheet, Word, LATEX and others  Administering multiple servers  Creating PDF graphics of your database layout  Creating complex queries using Query-by-example (QBE)  Searching globally in a database or a subset of it  Transforming stored data into any format using a set of predefined functions, like displaying BLOB-data as image or download-lin
  • 17. [17] Components of Anroid Programming used in CNIS  Shared Preferences: Interface for accessing and modifying preference data returned by getSharedPreferences(String, int). For any particular set of preferences, there is a single instance of this class that all clients share. Modifications to the preferences must go through a SharedPreferences.Editor object to ensure the preference values remain in a consistent state and control when they are committed to storage.  Notification manager : Each of the notify methods takes an int id parameter and optionally a String tag parameter, which may be null. These parameters are used to form a pair (tag, id), or (null, id) if tag is unspecified. This pair identifies this notification from your app to the system, so that pair should be unique within your app. If you call one of the notify methods with a (tag, id) pair that is currently active and a new set of notification parameters, it will be updated  Activity : With the use of this components of android and HTTP we will connect real time device with campus server.  android.database.sqlite:-  Contains the SQLite database management classes that an application would use to manage its own private database.  Applications use these classes to manage private databases. If creating a content provider, you will probably have to use these classes to create and manage your own database to store content. See Content Providers to learn the conventions for implementing a content provider. See the NotePadProvider class in the NotePad sample application in the SDK for an example of a content provider. Android ships with SQLite version 3.4.0  If you are working with data sent to you by a provider, you will not use these SQLite classes, but instead use the generic android.database classes.  Android ships with the sqlite3 database tool in the tools/ folder. You can use this tool to browse or run SQL commands on the device. Run by typing sqlite3 in a shell window.
  • 18. [18]  HTTP Most network-connected Android apps use HTTP to send and receive data. Android includes two HTTP clients: HttpURLConnection and Apache HttpClient. Both support HTTPS, streaming uploads and downloads, configurable timeouts, IPv6, and connection pooling. We recommend using HttpURLConnection for applications targeted at Gingerbread and higher. For more discussion of this topic, see the blog post Android's HTTP Clients.
  • 19. [19] 2.4 COST ESTIMATION COCOMO (Constructive Cost Model): We will be using basic COCOMO as the cost estimation model for quick, early and rough order of magnitude estimates of software costs. COCOMO uses 3 levels of project complexity: 1. Organic project 2. Semi-detached project 3. Embedded project CNIS can be classified as a semi-detached mode project. The equations in this model are: E = ab(KLOC)bb D = Cb(E)db P = E / D Where E is the effort applied in person-months, D is the development time in chronological months. KLOC is the kilo-lines of code The coefficients ab,bb,cb,db for semi detached mode are as follows: ab = 3.0 bb = 1.12 cb = 2.5 db = 0.35 Now, we assume that the estimated kilo-lines of code in CNIS is 4 KLOC. Effort Estimation: E = 3.0 x (4)1.12 = 14.53 = 15 person-months approx. Duration estimation: D = 2.5 x (15)0.35 = 6.45 = 7 months approx. Persons Estimation: P = 15 / 7 = 2.24 = 3 persons approx.
  • 20. [20] 2.5GANTT CHART (MONTH WISE)
  • 21. [21]
  • 22. [22]
  • 23. [23] 2.6 RESPONSIBILITY MATRIX Table no:1 Responsibility Matrix Activity Dhruvil Dhulia Santosh Patel Harshal Nandgaonkar Defining Project goal S N P Feasibility Study P Project Charter S S Plan project P Analysis P Risk management P S Gui design P S Database design P System design P Implementation P S N Testing P Final reports and presentation S S Evaluate Project P Resposibility Code:- P:- Primary Resposibility S:-Secondary Responsibility N:-Must be Notified
  • 24. [24] 2.7Data Flow Diagram: We can describe the Data Flow for many modules of the project. Here in this section we discuss the Data Flow Diagram for the student to access the resources using the application. Resource is the process in this case. Level 0: Figure 3: level zero DFD Level 1: Figure 4: level one DFD
  • 25. [25] PROJECT design
  • 26. [26] 3.1 BLOCK DIAGRAMS Figure 5: Block diagram The architecture of the CNIS will consist of three components:  a web application as the user frontend,  a server application in the middle and  a freely scalable number of service nodes for delivering the information to the mobile devices
  • 27. [27] 3.2 SEQUENCE DIAGRAMS Figure 6: Sequence Diagram 1 Figure 7: Sequence Diagram 2
  • 28. [28] Figure 8: Sequence diagram 3
  • 29. [29] 3.3INTERFACE DIAGRAM Figure 10 : Interface Diagram
  • 30. [30] implementation
  • 31. [31] 4 Implementation 4.1HARDWARE AND SOFTWARE REQUIREMENT Hardware Interface  Server side o Processor : Pentium 4 with 2.3 GHz or higher o RAM : 1Gb or more o Hard disk : 100Gb or more  Clients: o 32MB RAM o 32MN Flash Memory o 200MHz Online Processor Software Interface  Server side o Xammp Server o My SQL(PHP MyAdmin) o Android SDK API level 10(2.3 Ginger Bread)  Client side : o Eclipse IDE Operating Environment Android is a software stack for mobile devices that includes an operating system, middleware and key applications. The Android SDK provides the tools and APIs necessary to begin developing applications on the Android platform using the Java programming language.
  • 32. [32] 4.2 EXPERIMENTAL SETUP Steps to run CNIS application:- 1) First Download Eclipce indigo, create android environment in eclipse by installing Android SDK and different API Level available for android. 2) After developing CNIS Application run as Android Application. It start CNIS Application on Emulator 3) Then connect Android device to computer via USB and Run program as Android Application it will load Apk file of CNIS Application on device 4) Connect Android device with wifi to get connection with server and administrator.
  • 33. [33] 4.3CODING Admistration.java package com.cnis; import java.io.ByteArrayOutputStream; import java.io.InputStream; import android.app.Activity; import android.app.AlertDialog; import android.app.ProgressDialog; import android.content.DialogInterface; import android.content.Intent; import android.graphics.Color; import android.net.Uri; import android.os.Bundle; import android.view.ContextMenu; import android.view.ContextMenu.ContextMenuInfo; import android.view.Gravity; import android.view.MenuItem; import android.view.View; import android.view.View.OnClickListener; import android.view.ViewGroup.LayoutParams; import android.view.Window; import android.view.WindowManager; import android.widget.ListView; import android.widget.TableLayout; import android.widget.TableRow; import android.widget.TextView; import android.widget.Toast; public class Administrators extends Activity implements CampusNewsISConstants,Runnable{
  • 34. [34] private ListView listView; private boolean doViewCourse=false; private String response=""; private Thread appThread; private ProgressDialog formProgressdialog; @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); this.requestWindowFeature(Window.FEATURE_NO_TITLE); this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); formProgressdialog = ProgressDialog.show(Administrators.this, null, "Please wait...", true); formProgressdialog.setCancelable(false); doViewCourse=true; appThread = new Thread(Administrators.this); appThread.start(); } private OnClickListener tableRowClickListener = new OnClickListener() { public void onClick(View v) { try { // String selectedRow = (String) v.getTag(); // Toast toast = Toast.makeText(Search.this, selectedRow, Toast.LENGTH_SHORT); // toast.show(); registerForContextMenu(v); openContextMenu(v); }
  • 35. [35] catch (Exception ex) { Toast toast = Toast.makeText(Administrators.this, ex.toString(), Toast.LENGTH_SHORT); toast.show(); } } }; @Override public void onCreateContextMenu(ContextMenu menu, View v,ContextMenuInfo menuInfo) { super.onCreateContextMenu(menu, v, menuInfo); CampusNewsISActivity.showLog("Context menu called"); menu.setHeaderTitle("Select Action"); menu.add(0, v.getId(), 0, "Call Now"); menu.add(0, v.getId(), 0, "Send SMS"); menu.add(0, v.getId(), 0, "Send Email"); } @Override public boolean onContextItemSelected(MenuItem item) { if(item.getTitle()=="Call Now") makeCall("444"); else if(item.getTitle()=="Send SMS") sendSMS("444", "We have received your request.We will get back to you soon"); else if(item.getTitle()=="Send Email") sendMail("offers@gmail.com", "Registration", "We have received your request.We will get back to you soon"); return true;
  • 36. [36] } public void makeCall(String number) { String url = "tel:"+number; Intent i = new Intent(Intent.ACTION_DIAL, Uri.parse(url.toString())); startActivity(i); } public void sendSMS(String recipient, String body) { Intent sendIntent = new Intent(Intent.ACTION_VIEW); sendIntent.putExtra("address", recipient); sendIntent.putExtra("sms_body", body); sendIntent.setType("vnd.android-dir/mms-sms"); startActivity(sendIntent); } public void sendMail(String recipient, String subject, String body) { Intent i = new Intent(Intent.ACTION_SEND); i.setType("plain/text"); i.putExtra(android.content.Intent.EXTRA_EMAIL,new String[] { recipient }); i.putExtra(android.content.Intent.EXTRA_SUBJECT, subject); i.putExtra(android.content.Intent.EXTRA_TEXT, body); i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); startActivity(i); } private TableLayout tl; private int rowCount=0; private void showAllCourse(String records[])
  • 37. [37] { rowCount=0; setContentView(R.layout.table); // Get the TableLayout tl = (TableLayout) findViewById(R.id.maintable); TableRow tr = new TableRow(this); tr.setBackgroundColor(Color.parseColor("#FF86AB60")); TextView name = new TextView(this); name.setText("Name"); name.setTextSize(18); tr.addView(name); TextView interest= new TextView(this); interest.setText("Interest"); interest.setTextSize(18); tr.addView(interest); TextView year = new TextView(this); year.setText("Year"); year.setTextSize(18); tr.addView(year); TextView dob= new TextView(this); dob.setText("DOB"); dob.setTextSize(18); tr.addView(dob);
  • 38. [38] // Add the TableRow to the TableLayout tl.addView(tr, new TableLayout.LayoutParams( LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT)); for(int i=0;i<records.length;i++) { String columns[] = CampusNewsISActivity.split(records[i].trim(), "|"); rowCount++; tr = new TableRow(this); if(rowCount%2==0) tr.setBackgroundColor(Color.parseColor("#FF86AB60")); else tr.setBackgroundColor(Color.parseColor("#FF48820E")); tr.setLayoutParams(new LayoutParams( LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT)); name = new TextView(this); name.setText(columns[0]); name.setTextSize(18); tr.addView(name); interest = new TextView(this); interest.setText(columns[1]); interest.setTextSize(18); tr.addView(interest); year = new TextView(this);
  • 39. [39] year.setText(columns[2]); year.setTextSize(18); tr.addView(year); dob = new TextView(this); dob.setText(columns[3]); dob.setTextSize(18); tr.addView(dob); tr.setGravity(Gravity.LEFT); tr.setMinimumHeight(120); // Add the TableRow to the TableLayout tl.addView(tr, new TableLayout.LayoutParams( LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT)); tr.setOnClickListener(tableRowClickListener); // tr.setTag(""+i); } }//end of showAllCourse private void viewCourse() { try { CampusNewsISActivity.showLog("Inside applyCourse:"); response=null; InputStream is=LoginActivity.hitUrl(BASE_URL+"viewcourse.php?"); if (is != null)
  • 40. [40] { ByteArrayOutputStream byteBuffer = new ByteArrayOutputStream(); byte[] buffer = new byte[1024]; int len = 0; while ((len = is.read(buffer)) != -1) { byteBuffer.write(buffer, 0, len); } byte[] data=byteBuffer.toByteArray(); response=new String(data); }//end of if else { CampusNewsISActivity.showLog("IS null"); } } catch(Exception e) { formProgressdialog.dismiss(); CampusNewsISActivity.showLog("Exception in applyCourse e:"+e); } showResults(); }//end of applyCourse private void showResults() { runOnUiThread(new Runnable() { @Override public void run() }
  • 41. [41] }); alertDialogBuilder.setNegativeButton("Close", new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int id) { finish(); } }); alertDialogBuilder.show(); }//end of showAlert public void run() { try { if(doViewCourse) { viewCourse(); doViewCourse=false; } } catch(Exception e) { CampusNewsISActivity.showLog("Exception in run e:"+e); } }//end of run }
  • 42. [42] FileArrayAdapter.java package com.cnis; import java.util.List; import android.app.Activity; import android.content.Context; import android.content.Intent; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.view.View.OnClickListener; import android.widget.ArrayAdapter; import android.widget.ImageView; import android.widget.TextView; public class FileArrayAdapter extends ArrayAdapter<Option>{ private Context c; private int id; private List<Option>items; public FileArrayAdapter(Context context, int textViewResourceId, List<Option> objects) { super(context, textViewResourceId, objects); c = context; id = textViewResourceId; items = objects; } public Option getItem(int i) {
  • 43. [43] return items.get(i); } @Override public View getView(int position, View convertView, ViewGroup parent) { int[] colors = new int[] {0xFF86AB60, 0xFF48820E/*Color.parseColor("#ffffff"), Color.parseColor("#fef2e8")*/ }; View v = convertView; if (v == null) { LayoutInflater vi = (LayoutInflater)c.getSystemService(Context.LAYOUT_INFLATER_SERVICE); v = vi.inflate(id, null); } final Option o = items.get(position); if (o != null) { TextView t1 = (TextView) v.findViewById(R.id.TextView01); TextView t2 = (TextView) v.findViewById(R.id.TextView02); if(t1!=null) t1.setText(o.getName()); if(t2!=null) t2.setText(o.getData()); int colorPos = position % colors.length; v.setBackgroundColor(colors[colorPos]); } return v; } }
  • 44. [44] 4.4 TESTING Testing Objectives :  Testing is a process of executing a program with the intent of finding an error.  A good test case is the one that has high probability of finding an undiscovered error.  A successful test is the one that uncovers most of the undiscovered error. TestingPrinciples :  Alltestcaseshouldbetraceabletothecustomerrequirements.  Tests should be planned long before the testing begins.  Exhaustive testing is not possible.  Tobemosteffectivetestingshouldbeconductedbyan independent thirdparty. Testability:  Operability: - The better it works the more efficiently it can be tested.  Observability:- What you see is you test.  Controllability: - The better you control the better it can be optimized.  Decomposability: -By decomposing we can quickly isolateproblems and perform testing.  Stability: -The fewer changes the fewer disruptions to testing.  Simplicity- The less there is to test the more quickly we can test it.  Understandability- The more information we have, the smarter the test.
  • 45. [45] 4.1.1 DIFFERENT TEST CASES Sr.No Test cases Input Output Expected Output 1. Administrator a) View course Application Click on icon Various course information Display the number of course application. b) Transfer files Mode of sending through HTTP (i.e via mail or message) Alert message Message and transfers file where it need to send. C) send notification IP address and notification message Alert message Display notification on notification bar 2. Student a)Downloads Click on icon and Couldn’t detect internet connection Student should able to download files which has been sent by the admin. b)post a request IP address of admin Alert message Message should be successfully send to the admin. C)Apply for course Student name, interested in course, year, DOB. Alert message Proper entry in the database in view history section. 3. Guest a)View course, Awards, Videos Events, images. Click on icon Information about related field All related images, videos are displayed.
  • 46. [46] 4. Load testing a)Sending notification to more than one student More than one file to students. Time delay, could not connect. To all student notification should be send. 5. Login User name ,password Login success Login success 6. New sign up User name, password Successfull registration. Can access CNIS application.
  • 47. [47] result
  • 48. [48] 5.1 SNAPSHOT OF PROJECT Figure 13: Administrator login When admin entrer valid user name and password, then only he can access CNIS Application as a Administration. Figure 14: Administrator Tab As adminstrator login succesfully, Adminstrator tab is visible along with Student & Guest tab
  • 49. [49] Figure 15: student login If students want to acces CNIS application they need to signup for first time. If they try to login without new signup it will give message as Signup Failed. Figure 16: student Tab After Signup student can see the two tab (student,guest) which contain Downloads,Apply for course,Enable alert mode sections etc.
  • 50. [50] Download:- Figure 17: Download List Database “Downloadlist Database” shows all the available file download for student. Figure 18: Files Directory By long press on file student can save download files to directory “/sdcard/”.
  • 51. [51] Apply For course:- Figure 19: View Course Student fill the form via Apply for Course section in student tab. Figure 20: Course Database “course database” store the information about form submitted by student.
  • 52. [52] Figure 21: View History Admin can view the course applied by student in View History. Transfer File:- Figure 22: File Transfer Above Window show all the file available in /sdcard/. Admin can send file by long pressing on selected file via bluetooth,email,phone etc.
  • 53. [53] Send Notification:- Figure 23: Admin Notification Admin send notification to CR of class in form of message like lecture is cancelled, lecture schedule which give toast message as conformation of notification. Figure 24: Student Notification Student receive notification toast message on his device on notification bar.
  • 54. [54] Guest Login:- Figure 25 : Guest Tab Guest can view different information about capmus such as courses,images awards etc in “Guest Tab” Figure 26: Course Tab
  • 55. [55] Figure 27: Events Tab Figure 28: Alumni Tab
  • 56. [56] Figure 29: Images Tab
  • 57. [57] Advantages of project
  • 58. [58] The major project advantages are aimed at addressing the major concerns like: Simplicity, Cost effectiveness and Security  Untutored Access– Simple and convenient to use: the user interface in CNIS is simple and very user friendly. The user can easily navigate through the application without any hindrance thus providing user satisfaction.  Handiness – The user, can access the application anywhere throughout the campus thus proving mobility and useful at all times and at all places. In essence, CNIS brings the information to the users by bringing the user to the information.  Freedom of movement – The CNIS application will be developed for Android based phones and most of the smart phones being Android 2.2 or Android 2.3, all applications work on these platforms thus providing mobility and compatibility with all Android based smart phones..  Time redemptive – CNIS application provide ubiquity to the users which saves the precious time for the users and administration and makes the office timings constraints redundant for the students using the application, this is due to the automation of everything and the fact that there is no human intervention.  Minimized Human Intervention - Automatic processing of user request. Limitations & Constrants:- 1. Android applications at times are device specific. Most important is memory management. The CNIS application requires crisp and richness in its user interfaces which can take up a considerable amount of memory. Thus the biggest challenge is to develop the application giving a rich feel and at the same time having memory optimization. One of the ways we can attain this is by converting some PNG images into JPEG format which reduces the image size by nearly 70 to 80 percent. 2. Not all networks have full coverage and some locations may be protected for electromagnetic radiation, therefore not all users may be capable of getting a signal. 3. Not all users may have a smart phone. Therefore it may be a while before the target audience for the application widens. 4. Delay of transmission of information by the GSM operators and intra and inter connection delays.
  • 59. [59] Conclusion & Future scope
  • 60. [60] 7.1 CONCLUSION Thus we have developed a novel approach to sharing information between students, lecturers and the administration in order to enhance quality of information in campus environment. We describe a network for distributing campus information among lecturers and students. The concept of developing campus information is to ensure that student can access information at any time, at any locations and ad-hoc basic. Information System helps the students and lecturers on campus to find and access information based on ad-hoc basic, which is of interest and relevant to students or lecturers through a smart phone. We will develop an Android application thereby providing a collaborative communication system within the campus aiding everyone participating in it. This will create a ubiquitous environment throughout the campus making it a very positive and exciting experience for all the participants. This is my first attempt in developing a mobile application which gave me a basic understanding of development and challenges of mobile application development. The main aim of the project is to provide an easy to use application for searching the restaurants. The application has been implemented and tested on real devices.
  • 61. [61] 7.2 FURTHER SCOPE  The application can be improved in many ways and can be extended to support more devices like the tablets and iOS devices.  This Project can be implemented from intranet to internet environment.  Many other functionalities can be added such as payment option for various form in college.
  • 62. [62] References
  • 63. [63] [1]. CAMPUSNEWS Michael Schulze Department of Computer Science, Artificial Intelligence Research Group University of Koblenz.(IEEE Paper) [2]. http://www.innovantesindia.com/wordpress/2011/04/01/HTTP/ [3]. http://developer.android.com/guide/topics/fundamentals.html [4]. http://www.handster.com/campus_application_of_fh_kiel.html [5]. http://www.rapidsofttechnologies.com/android-application-development.html [6]. Campus Wireless Infrastructure Proposal. IET – Communications Resources. [7]. http://www.waterfall-model.com/ [8]. http://developer.android.com/guide/basics/what-is-android.html [9]. http://www.hitechtutorials.com/android-for-mobile-computing-in-the-near-future-is-the-best- choice.html [10]. Roger Pressman, “Software Engineering