Академический Документы
Профессиональный Документы
Культура Документы
It must meet the possibility of any future enhancement, future functionality and
any other extra functional features to cope up with the latest future needs. It has
been seen that there are always few errors found in the systems that must be noted
and modified. It also means timely review of the system. If a major alteration to a
system is needed, a new project may need to be set up to carry out the change.
ARCHITECTURE
DATA FLOW DIAGRAM
TABLE DESCRIPTION
SCREENSHOT
package com.example.gulam.agriinfo;
import android.content.Context;
import android.support.test.InstrumentationRegistry;
import android.support.test.runner.AndroidJUnit4;
import org.junit.Test;
import org.junit.runner.RunWith;
/**
*/
@RunWith(AndroidJUnit4.class)
@Test
public void useAppContext() throws Exception {
assertEquals("com.example.gulam.agriinfo", appContext.getPackageName());
package com.example.gulam.agriinfo;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.MenuItem;
import android.view.View;
import android.widget.LinearLayout;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_agri);
getSupportActionBar().setTitle(getResources().getString(R.string.agriculture));
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
llay_rice=findViewById(R.id.llay_rice);
llay_wheet=findViewById(R.id.llay_wheet);
llay_rice.setOnClickListener(new View.OnClickListener() {
@Override
GlobalVariables.CURRENT_MENU=GlobalVariables.RICE;
GlobalVariables.TITLE="Rice";
goDetailScreen();
}
});
llay_wheet.setOnClickListener(new View.OnClickListener() {
@Override
GlobalVariables.CURRENT_MENU=GlobalVariables.WHEAT;
GlobalVariables.TITLE="Wheat";
goDetailScreen();
});
startActivity(i);
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
int id = item.getItemId();
switch (id) {
case android.R.id.home:
goBack();
break;
return super.onOptionsItemSelected(item);
package com.example.gulam.agriinfo;
package com.example.gulam.agriinfo;
import android.content.Intent;
import android.os.Bundle;
import android.support.design.widget.FloatingActionButton;
import android.support.design.widget.Snackbar;
import android.support.design.widget.TabLayout;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentPagerAdapter;
import android.support.v4.view.ViewPager;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;
import android.view.KeyEvent;
import android.view.LayoutInflater;
import android.view.MenuItem;
import android.view.View;
import android.widget.LinearLayout;
import android.widget.TextView;
import org.json.JSONArray;
import org.json.JSONObject;
import java.util.ArrayList;
import java.util.List;
@Override
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_detail);
setSupportActionBar(toolbar);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
getSupportActionBar().setTitle(GlobalVariables.TITLE);
setupViewPager(viewPager);
if(GlobalVariables.CURRENT_TYPE==GlobalVariables.TYPE_AGRI||GlobalVar
iables.CURRENT_TYPE==GlobalVariables.TYPE_HORTI){
viewPager.setAdapter(adapter);
super(manager);
@Override
return mFragmentList.get(position);
@Override
return mFragmentList.size();
mFragmentList.add(fragment);
mFragmentTitleList.add(title);
}
@Override
return mFragmentTitleList.get(position);
@Override
// Handle action bar item clicks here. The action bar will
int id = item.getItemId();
switch (id) {
case android.R.id.home:
goBack();
break;
return super.onOptionsItemSelected(item);
finish();
@Override
if (keyCode == KeyEvent.KEYCODE_BACK) {
goBack();
return true;
}
return super.onKeyDown(keyCode, event);
package com.example.gulam.agriinfo;
import android.content.Context;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.LinearLayout;
import com.example.gulam.agriinfo.datamaker.BhendiData;
import com.example.gulam.agriinfo.datamaker.BrinjalData;
import com.example.gulam.agriinfo.datamaker.IlluppaiData;
import com.example.gulam.agriinfo.datamaker.OrganicFarmingData;
import com.example.gulam.agriinfo.datamaker.RedSanderData;
import com.example.gulam.agriinfo.datamaker.RiceData;
import com.example.gulam.agriinfo.datamaker.SalData;
import com.example.gulam.agriinfo.datamaker.TomatoData;
import com.example.gulam.agriinfo.datamaker.WheatData;
import org.json.JSONObject;
LinearLayout llay_fertilizer;
LayoutInflater minflater;
public FertilizerFragment() {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
@Override
Bundle savedInstanceState) {
minflater=inflater;
llay_fertilizer=(LinearLayout)view.findViewById(R.id.llay_fertilizer);
loadData();
return view;
}
private void loadData(){
if(GlobalVariables.CURRENT_MENU==GlobalVariables.RICE){
JSONObject jsData=rd.getData();
loadInitialData(jsData);
}else if(GlobalVariables.CURRENT_MENU==GlobalVariables.WHEAT){
JSONObject jsData=rd.getData();
loadInitialData(jsData);
}else if(GlobalVariables.CURRENT_MENU==GlobalVariables.TOMATO){
JSONObject jsData=rd.getData();
loadInitialData(jsData);
}else if(GlobalVariables.CURRENT_MENU==GlobalVariables.BHENDI){
JSONObject jsData=rd.getData();
loadInitialData(jsData);
}else if(GlobalVariables.CURRENT_MENU==GlobalVariables.BRINJAL){
loadInitialData(jsData);
}else if(GlobalVariables.CURRENT_MENU==GlobalVariables.ILLUPPAI){
JSONObject jsData=rd.getData();
loadInitialData(jsData);
}else if(GlobalVariables.CURRENT_MENU==GlobalVariables.SAL){
JSONObject jsData=rd.getData();
loadInitialData(jsData);
}else
if(GlobalVariables.CURRENT_MENU==GlobalVariables.REDSANDER){
JSONObject jsData=rd.getData();
loadInitialData(jsData);
}else
if(GlobalVariables.CURRENT_MENU==GlobalVariables.FARMING_PRACTIC
E){
JSONObject jsData=rd.getData();
loadInitialData(jsData);
try {
if(jsData.has("fert")){
gv.loadProcedureData(jsObj,llay_fertilizer,minflater);
e.printStackTrace();;
}
@Override
super.onAttach(context);
@Override
super.onDetach();
package com.example.gulam.agriinfo;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.MenuItem;
import android.view.View;
import android.widget.LinearLayout;
@Override
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_forestry);
getSupportActionBar().setTitle(getResources().getString(R.string.forestry));
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
llay_illuppai=findViewById(R.id.llay_illuppai);
llay_sal=findViewById(R.id.llay_sal);
llay_redsander=findViewById(R.id.llay_redsander);
llay_illuppai.setOnClickListener(new View.OnClickListener() {
@Override
GlobalVariables.CURRENT_MENU=GlobalVariables.ILLUPPAI;
GlobalVariables.TITLE="Illuppai Tree";
goDetailScreen();
});
llay_sal.setOnClickListener(new View.OnClickListener() {
@Override
GlobalVariables.CURRENT_MENU=GlobalVariables.SAL;
GlobalVariables.TITLE="Sal Tree";
goDetailScreen();
});
llay_redsander.setOnClickListener(new View.OnClickListener() {
@Override
GlobalVariables.CURRENT_MENU=GlobalVariables.REDSANDER;
GlobalVariables.TITLE="Red Sander";
goDetailScreen();
});
startActivity(i);
@Override
int id = item.getItemId();
switch (id) {
case android.R.id.home:
goBack();
break;
return super.onOptionsItemSelected(item);
finish();
}
package com.example.gulam.agriinfo;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.LinearLayout;
import android.widget.TextView;
import org.json.JSONArray;
import org.json.JSONObject;
try {
LinearLayout llay_dynamic=view.findViewById(R.id.llay_dynamic);
tvTitle.setText(strTitle);
llay_procedure.addView(view);
for(int i=0;i<jsArContent.length();i++){
String strContentData=jsArContent.getString(i);
tvProc.setText(strContentData);
llay_dynamic.addView(viewProc);
}
}catch (Exception e){
e.printStackTrace();;
package com.example.gulam.agriinfo;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.MenuItem;
import android.view.View;
import android.widget.LinearLayout;
@Override
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_horti);
getSupportActionBar().setTitle(getResources().getString(R.string.horticulture));
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
llay_tomato=findViewById(R.id.llay_tomato);
llay_bhendi=findViewById(R.id.llay_bhendi);
llay_brinjal=findViewById(R.id.llay_brinjal);
llay_tomato.setOnClickListener(new View.OnClickListener() {
@Override
GlobalVariables.CURRENT_MENU=GlobalVariables.TOMATO;
GlobalVariables.TITLE="Tomato";
goDetailScreen();
});
llay_bhendi.setOnClickListener(new View.OnClickListener() {
@Override
GlobalVariables.CURRENT_MENU=GlobalVariables.BHENDI;
GlobalVariables.TITLE="Bhendi";
goDetailScreen();
});
llay_brinjal.setOnClickListener(new View.OnClickListener() {
@Override
GlobalVariables.CURRENT_MENU=GlobalVariables.BRINJAL;
GlobalVariables.TITLE="Brinjal";
goDetailScreen();
});
startActivity(i);
@Override
// Handle action bar item clicks here. The action bar will
int id = item.getItemId();
switch (id) {
case android.R.id.home:
goBack();
break;
return super.onOptionsItemSelected(item);
finish();
}
}
package com.example.gulam.agriinfo;
import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.support.design.widget.TextInputLayout;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import com.example.gulam.agriinfo.app.MyApplication;
import com.example.gulam.agriinfo.db.AppDataBase;
import com.example.gulam.agriinfo.db.entity.UserEntity;
import java.util.List;
public class LoginScreen extends AppCompatActivity{
TextInputLayout til_username;
EditText ed_user_name;
TextInputLayout til_password;
EditText ed_password;
Button btn_login;
Context context;
SharedPreferences prefs;
AppDataBase appdb;
boolean isRegister=false;
@Override
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_login_screen);
try{
context = this;
til_username=findViewById(R.id.til_username);
ed_user_name=findViewById(R.id.ed_username);
til_password=findViewById(R.id.til_password);
ed_password=findViewById(R.id.ed_password);
btn_login=findViewById(R.id.btn_login);
prefs = getSharedPreferences(PreferenceUtils.PREF_NAME,
MODE_PRIVATE);
appdb = appIn.getDatabase();
if(prefs.getString(PreferenceUtils.USER_NAME,null)!=null){
btn_login.setText("Login");
isRegister=false;
}else{
isRegister=true;
btn_login.setText("SignUp");
btn_login.setOnClickListener(new View.OnClickListener() {
@Override
loginPassword();
e.printStackTrace();
});
boolean isLogin=prefs.getBoolean(PreferenceUtils.LOGIN_STATUS,false);
if(isLogin){
startActivity(i);
finish();
}
}catch (Exception e){
e.printStackTrace();
try{
loginRequest(strUserName, strPassword);
} else {
if (strUserName.length() == 0) {
if (strPassword.length() == 0) {
e.printStackTrace();
}
/**
*/
try{
@Override
if(isRegister){
appdb.itemDao().insertUser(ud);
goHomeScreen(strUsername);
}else{
List<UserEntity> lsuSer=appdb.itemDao().loadAllItems();
boolean isValid=false;
for(int i=0;i<lsuSer.size();i++){
UserEntity ud=lsuSer.get(i);
if(ud.getUsername().equals(strUsername)&&ud.getPassword().equals(strPassword
)){
isValid=true;
break;
if(isValid){
goHomeScreen(strUsername);
}else{
LoginScreen.this.runOnUiThread(new Runnable() {
@Override
til_password.setError("Invalid credentials");
}
});
}).start();
e.printStackTrace();
try{
PreferenceUtils.saveBoolean(PreferenceUtils.LOGIN_STATUS,true,prefs);
PreferenceUtils.saveText(PreferenceUtils.USER_NAME,name,prefs);
Intent i=new Intent(context,MainActivity.class);
startActivity(i);
finish();
} catch (Exception e) {
e.printStackTrace();
package com.example.gulam.agriinfo;
import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.support.design.widget.FloatingActionButton;
import android.support.design.widget.Snackbar;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;
import android.view.View;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.LinearLayout;
@Override
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
setSupportActionBar(toolbar);
llay_agri=(LinearLayout)findViewById(R.id.llay_agri);
llay_horti=(LinearLayout)findViewById(R.id.llay_horti);
llay_organic=(LinearLayout)findViewById(R.id.llay_organic);
llay_foresty=(LinearLayout)findViewById(R.id.llay_foresty);
llay_agri.setOnClickListener(new View.OnClickListener() {
@Override
GlobalVariables.CURRENT_TYPE=GlobalVariables.TYPE_AGRI;
startActivity(i);
});
llay_horti.setOnClickListener(new View.OnClickListener() {
@Override
GlobalVariables.CURRENT_TYPE=GlobalVariables.TYPE_HORTI;
startActivity(i);
}
});
llay_organic.setOnClickListener(new View.OnClickListener() {
@Override
GlobalVariables.CURRENT_TYPE=GlobalVariables.TYPE_ORGANIC;
startActivity(i);
});
llay_foresty.setOnClickListener(new View.OnClickListener() {
@Override
GlobalVariables.CURRENT_TYPE=GlobalVariables.TYPE_FORESTY;
startActivity(i);
}
});
@Override
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.menu_search, menu);
return true;
@Override
// Handle action bar item clicks here. The action bar will
int id = item.getItemId();
// //noinspection SimplifiableIfStatement
if (id == R.id.action_logout) {
SharedPreferences prefs =
getSharedPreferences(PreferenceUtils.PREF_NAME, MODE_PRIVATE);
PreferenceUtils.saveBoolean(PreferenceUtils.LOGIN_STATUS,false,prefs);
startActivity(i);
finish();
return true;
return super.onOptionsItemSelected(item);
package com.example.gulam.agriinfo;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.MenuItem;
import android.view.View;
import android.widget.LinearLayout;
LinearLayout llay_farmingpractice;
@Override
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_organic);
getSupportActionBar().setTitle(getResources().getString(R.string.organicfarming))
;
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
llay_farmingpractice=findViewById(R.id.llay_farmingpractice);
llay_farmingpractice.setOnClickListener(new View.OnClickListener() {
@Override
GlobalVariables.CURRENT_MENU=GlobalVariables.FARMING_PRACTICE;
GlobalVariables.TITLE="Farming Practice";
goDetailScreen();
});
startActivity(i);
}
@Override
// Handle action bar item clicks here. The action bar will
int id = item.getItemId();
switch (id) {
case android.R.id.home:
goBack();
break;
return super.onOptionsItemSelected(item);
}
private void goBack(){
finish();
package com.example.gulam.agriinfo;
import android.content.SharedPreferences;
/**
*/
*/
try {
editor.putString(key, value);
editor.commit();
e.printStackTrace();
/**
*/
try{
SharedPreferences.Editor editor=pref.edit();
editor.putInt(key,value);
editor.commit();
e.printStackTrace();
/**
try{
SharedPreferences.Editor editor=pref.edit();
editor.putBoolean(key,value);
editor.commit();
e.printStackTrace();
package com.example.gulam.agriinfo;
import android.content.Context;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.LinearLayout;
import com.example.gulam.agriinfo.datamaker.BhendiData;
import com.example.gulam.agriinfo.datamaker.BrinjalData;
import com.example.gulam.agriinfo.datamaker.IlluppaiData;
import com.example.gulam.agriinfo.datamaker.OrganicFarmingData;
import com.example.gulam.agriinfo.datamaker.RedSanderData;
import com.example.gulam.agriinfo.datamaker.RiceData;
import com.example.gulam.agriinfo.datamaker.SalData;
import com.example.gulam.agriinfo.datamaker.TomatoData;
import com.example.gulam.agriinfo.datamaker.WheatData;
import org.json.JSONArray;
import org.json.JSONObject;
public class ProcedureFragment extends Fragment {
LinearLayout llay_procedure;
LayoutInflater minflater;
public ProcedureFragment() {
@Override
super.onCreate(savedInstanceState);
@Override
Bundle savedInstanceState) {
minflater=inflater;
llay_procedure=(LinearLayout)view.findViewById(R.id.llay_procedure);
loadData();
return view;
if(GlobalVariables.CURRENT_MENU==GlobalVariables.RICE){
JSONObject jsData=rd.getData();
loadInitialData(jsData);
}else if(GlobalVariables.CURRENT_MENU==GlobalVariables.WHEAT){
JSONObject jsData=rd.getData();
loadInitialData(jsData);
}else if(GlobalVariables.CURRENT_MENU==GlobalVariables.TOMATO){
JSONObject jsData=rd.getData();
loadInitialData(jsData);
}else if(GlobalVariables.CURRENT_MENU==GlobalVariables.BHENDI){
JSONObject jsData=rd.getData();
loadInitialData(jsData);
}else if(GlobalVariables.CURRENT_MENU==GlobalVariables.BRINJAL){
JSONObject jsData=rd.getData();
loadInitialData(jsData);
}else if(GlobalVariables.CURRENT_MENU==GlobalVariables.ILLUPPAI){
JSONObject jsData=rd.getData();
loadInitialData(jsData);
}else if(GlobalVariables.CURRENT_MENU==GlobalVariables.SAL){
JSONObject jsData=rd.getData();
loadInitialData(jsData);
}else
if(GlobalVariables.CURRENT_MENU==GlobalVariables.REDSANDER){
RedSanderData rd=new RedSanderData();
JSONObject jsData=rd.getData();
loadInitialData(jsData);
}else
if(GlobalVariables.CURRENT_MENU==GlobalVariables.FARMING_PRACTIC
E){
JSONObject jsData=rd.getData();
loadInitialData(jsData);
try {
for(int i=0;i<jsAR.length();i++){
JSONObject jsObjData=jsAR.getJSONObject(i);
gv.loadProcedureData(jsObjData,llay_procedure,minflater);
e.printStackTrace();
@Override
super.onAttach(context);
}
@Override
super.onDetach();