Created
April 30, 2017 07:52
-
-
Save haksgit/7601e2bd3d2c2bae3d73c2ff79c67d86 to your computer and use it in GitHub Desktop.
Part of source code
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
private class AsyncLoginAuth extends AsyncTask<String, Void, LoginResponse> { | |
/** progress dialog to show user that the backup is processing. */ | |
/** | |
* application context. | |
*/ | |
@Override | |
protected void onPreExecute() { | |
} | |
@Override | |
protected LoginResponse doInBackground(final String... args) { | |
try { | |
LoginResponse loginObject = WebServiceClient.loginTask(Constants.USER_ID, Constants.USER_NAME); | |
return loginObject; | |
} catch (Exception e) { | |
return null; | |
} | |
} | |
@Override | |
protected void onPostExecute(final LoginResponse getObject) { | |
if (getObject != null) { | |
if (getObject.isError()) { | |
final AlertDialog.Builder alertDialog = new AlertDialog.Builder(AuthActivity.this); | |
//AlertDialog alertDialog = new AlertDialog.Builder(MainActivity.this).create(); | |
// Setting Dialog Title | |
alertDialog.setTitle("Something went wrong"); | |
// Setting Positive "Yes" Button | |
alertDialog.setPositiveButton("OK", | |
new DialogInterface.OnClickListener() { | |
public void onClick(DialogInterface dialog, int which) { | |
new AsyncLoginAuth().execute(); | |
loadingContentAuth.setVisibility(View.VISIBLE); | |
} | |
}); | |
AlertDialog alert = alertDialog.create(); | |
alert.show(); | |
Button nbutton = alert.getButton(DialogInterface.BUTTON_NEGATIVE); | |
nbutton.setTextColor(Color.parseColor("#4997dd")); | |
Button pbutton = alert.getButton(DialogInterface.BUTTON_POSITIVE); | |
pbutton.setTextColor(Color.parseColor("#4997dd")); | |
} else { | |
Intent intent = new Intent(AuthActivity.this, MainActivity.class); | |
startActivity(intent); | |
overridePendingTransition(R.anim.slide_in, R.anim.slide_out); | |
finish(); | |
} | |
} | |
loadingContentAuth.setVisibility(View.GONE); | |
} | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
package am.xtech.nasaspaceapps; | |
import android.animation.ObjectAnimator; | |
import android.app.AlertDialog; | |
import android.content.Context; | |
import android.content.DialogInterface; | |
import android.content.Intent; | |
import android.content.SharedPreferences; | |
import android.content.pm.PackageManager; | |
import android.content.res.Resources; | |
import android.database.Cursor; | |
import android.graphics.Bitmap; | |
import android.graphics.Color; | |
import android.graphics.Point; | |
import android.location.Location; | |
import android.net.Uri; | |
import android.os.AsyncTask; | |
import android.os.Handler; | |
import android.provider.MediaStore; | |
import android.provider.Settings; | |
import android.support.v4.app.ActivityCompat; | |
import android.support.v4.app.FragmentActivity; | |
import android.support.v4.content.ContextCompat; | |
import android.support.v4.content.FileProvider; | |
import android.support.v4.os.ResultReceiver; | |
import android.support.v7.app.AppCompatActivity; | |
import android.os.Bundle; | |
import android.util.Log; | |
import android.view.Display; | |
import android.view.MotionEvent; | |
import android.view.View; | |
import android.view.ViewGroup; | |
import android.view.ViewTreeObserver; | |
import android.view.animation.Animation; | |
import android.view.animation.AnimationSet; | |
import android.view.animation.RotateAnimation; | |
import android.view.animation.TranslateAnimation; | |
import android.view.inputmethod.InputMethodManager; | |
import android.widget.Button; | |
import android.widget.EditText; | |
import android.widget.ImageButton; | |
import android.widget.ImageView; | |
import android.widget.LinearLayout; | |
import android.widget.RelativeLayout; | |
import android.widget.TextView; | |
import android.widget.Toast; | |
import android.widget.VideoView; | |
import am.xtech.nasaspaceapps.Models.FireAddResponse; | |
import am.xtech.nasaspaceapps.Models.FireModel; | |
import am.xtech.nasaspaceapps.Models.GetFiresResponse; | |
import am.xtech.nasaspaceapps.Models.NasaFireModel; | |
import am.xtech.nasaspaceapps.Services.FetchAddressIntentService; | |
import am.xtech.nasaspaceapps.Utils.AppUtils; | |
import am.xtech.nasaspaceapps.Utils.Constants; | |
import am.xtech.nasaspaceapps.Utils.ImagePickerComment; | |
import am.xtech.nasaspaceapps.Utils.Methods; | |
import am.xtech.nasaspaceapps.Utils.VideoPicker; | |
import am.xtech.nasaspaceapps.Utils.WebServiceClient; | |
import com.facebook.CallbackManager; | |
import com.facebook.FacebookCallback; | |
import com.facebook.FacebookException; | |
import com.facebook.share.Sharer; | |
import com.facebook.share.internal.ShareFeedContent; | |
import com.facebook.share.model.ShareContent; | |
import com.facebook.share.model.ShareLinkContent; | |
import com.facebook.share.model.SharePhoto; | |
import com.facebook.share.model.SharePhotoContent; | |
import com.facebook.share.model.ShareVideo; | |
import com.facebook.share.model.ShareVideoContent; | |
import com.facebook.share.widget.ShareDialog; | |
import com.google.android.gms.common.ConnectionResult; | |
import com.google.android.gms.common.GoogleApiAvailability; | |
import com.google.android.gms.common.GooglePlayServicesNotAvailableException; | |
import com.google.android.gms.common.GooglePlayServicesRepairableException; | |
import com.google.android.gms.common.GooglePlayServicesUtil; | |
import com.google.android.gms.common.api.GoogleApiClient; | |
import com.google.android.gms.common.api.Status; | |
import com.google.android.gms.location.LocationRequest; | |
import com.google.android.gms.location.LocationServices; | |
import com.google.android.gms.location.places.Place; | |
import com.google.android.gms.location.places.ui.PlaceAutocomplete; | |
import com.google.android.gms.maps.CameraUpdateFactory; | |
import com.google.android.gms.maps.GoogleMap; | |
import com.google.android.gms.maps.OnMapReadyCallback; | |
import com.google.android.gms.maps.SupportMapFragment; | |
import com.google.android.gms.maps.model.BitmapDescriptorFactory; | |
import com.google.android.gms.maps.model.CameraPosition; | |
import com.google.android.gms.maps.model.LatLng; | |
import com.google.android.gms.maps.model.LatLngBounds; | |
import com.google.android.gms.maps.model.MapStyleOptions; | |
import com.google.android.gms.maps.model.Marker; | |
import com.google.android.gms.maps.model.MarkerOptions; | |
import com.google.android.gms.maps.model.PolygonOptions; | |
import com.google.android.gms.maps.model.StreetViewPanoramaCamera; | |
import java.io.BufferedOutputStream; | |
import java.io.BufferedReader; | |
import java.io.ByteArrayInputStream; | |
import java.io.ByteArrayOutputStream; | |
import java.io.File; | |
import java.io.FileInputStream; | |
import java.io.FileNotFoundException; | |
import java.io.FileOutputStream; | |
import java.io.IOException; | |
import java.io.InputStream; | |
import java.io.InputStreamReader; | |
import java.net.URL; | |
import java.util.ArrayList; | |
import java.util.Calendar; | |
import java.util.Date; | |
import java.util.GregorianCalendar; | |
import java.util.HashMap; | |
import java.util.List; | |
import static android.content.ContentValues.TAG; | |
public class MainActivity extends AppCompatActivity implements OnMapReadyCallback, GoogleApiClient.ConnectionCallbacks, GoogleApiClient.OnConnectionFailedListener, com.google.android.gms.location.LocationListener { | |
private SharedPreferences preferences; | |
private GoogleMap mMap; | |
private RelativeLayout takePhotoButton; | |
private RelativeLayout loading_content; | |
private RelativeLayout videoContentMain; | |
private int width, height; | |
private GoogleApiClient mGoogleApiClient; | |
private final static int PLAY_SERVICES_RESOLUTION_REQUEST = 9000; | |
private static final int REQUEST_CODE_AUTOCOMPLETE = 1; | |
private AddressResultReceiver mResultReceiver; | |
private TextView addressTextView; | |
private LinearLayout shareFireContent; | |
private LinearLayout logoutButton; | |
private ImageButton nasaButton; | |
private boolean nasaIsActive = false; | |
private ImageButton rocketButton; | |
private ImageButton weatherButton; | |
private ImageButton fbShareButton; | |
private ImageButton playVideoButton; | |
private ImageButton camerActionButton; | |
private ImageButton videoActionButton; | |
private ImageView captureddImageView; | |
private RelativeLayout closePopUpButton; | |
private RelativeLayout actionContent; | |
private RelativeLayout touch_content; | |
private ImageButton socaialSharingButton; | |
private EditText descriptionEditText; | |
private VideoView videoView; | |
private SharedPreferences sharedpreferences; | |
private Uri sharingFile; | |
boolean activeChangeMap = true; | |
private double mLat, mLong; | |
private String descriptionForUpload; | |
private Bitmap shareBitmap; | |
private boolean isVideo = false; | |
private String uploadAddress; | |
@Override | |
protected void onCreate(Bundle savedInstanceState) { | |
super.onCreate(savedInstanceState); | |
setContentView(R.layout.activity_main); | |
sharedpreferences = getSharedPreferences(Constants.My_PREFERENCES, Context.MODE_PRIVATE); | |
SupportMapFragment fragment; | |
fragment = (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map); | |
fragment.getMapAsync(this); | |
Display display = getWindowManager().getDefaultDisplay(); | |
Point size = new Point(); | |
display.getSize(size); | |
width = size.x; | |
height = size.y; | |
Methods.checkAndRequestPermissions(MainActivity.this); | |
preferences = getSharedPreferences(Constants.APP_NAME, MODE_PRIVATE); | |
prepareViews(); | |
measureViews(); | |
setClicks(); | |
setupLocationResultReceiver(); | |
setupShareDialog(); | |
} | |
private void setupRocketAnimation() | |
{ | |
AnimationSet snowMov1 = new AnimationSet(true); | |
RotateAnimation rotate1 = new RotateAnimation(0,-45, Animation.RELATIVE_TO_SELF,0.5f , Animation.RELATIVE_TO_SELF,0.5f ); | |
rotate1.setDuration(300); | |
snowMov1.addAnimation(rotate1); | |
TranslateAnimation trans1 = new TranslateAnimation( | |
Animation.RELATIVE_TO_PARENT, 0.0f, | |
Animation.RELATIVE_TO_PARENT, 0.0f, | |
Animation.RELATIVE_TO_PARENT, 0.0f, | |
Animation.RELATIVE_TO_PARENT, -1.5f);; | |
trans1.setFillEnabled(true); | |
trans1.setFillAfter(true); | |
trans1.setDuration(700); | |
snowMov1.addAnimation(trans1); | |
rocketButton.setAnimation(snowMov1); | |
new Handler().postDelayed(new Runnable() { | |
@Override | |
public void run() { | |
rocketButton.setVisibility(View.GONE); | |
loading_content.setVisibility(View.VISIBLE); | |
descriptionForUpload = descriptionEditText.getText().toString(); | |
uploadAddress = addressTextView.getText().toString(); | |
new AsyncAddFire().execute(); | |
} | |
}, 800); | |
} | |
@Override | |
public void onBackPressed() { | |
if(popIsOpen) | |
pinPopupCloseAnimation(); | |
else | |
super.onBackPressed(); | |
} | |
private void measureViews() { | |
ViewTreeObserver vto = shareFireContent.getViewTreeObserver(); | |
vto.addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() { | |
public void onGlobalLayout() { | |
RelativeLayout.LayoutParams rllpPinPopup = (RelativeLayout.LayoutParams) shareFireContent.getLayoutParams(); | |
rllpPinPopup.bottomMargin = -shareFireContent.getMeasuredHeight(); // use topmargin for the y-property, left margin for the x-property of your view | |
shareFireContent.setLayoutParams(rllpPinPopup); | |
} | |
}); | |
ViewTreeObserver vto1 = actionContent.getViewTreeObserver(); | |
vto1.addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() { | |
public void onGlobalLayout() { | |
RelativeLayout.LayoutParams rllpPinPopup = (RelativeLayout.LayoutParams) actionContent.getLayoutParams(); | |
rllpPinPopup.bottomMargin = -actionContent.getMeasuredHeight(); // use topmargin for the y-property, left margin for the x-property of your view | |
actionContent.setLayoutParams(rllpPinPopup); | |
} | |
}); | |
} | |
boolean popIsOpen = false; | |
public void pinPopupOpenAnimation() { | |
ObjectAnimator objectAnimator = ObjectAnimator.ofFloat(shareFireContent, "translationY", 0, -shareFireContent.getMeasuredHeight()); | |
objectAnimator.setDuration(500); | |
objectAnimator.start(); | |
popIsOpen = true; | |
rocketButton.setVisibility(View.VISIBLE); | |
} | |
public void pinPopupCloseAnimation() { | |
ObjectAnimator objectAnimator = ObjectAnimator.ofFloat(shareFireContent, "translationY", -shareFireContent.getMeasuredHeight(), 0); | |
objectAnimator.setDuration(500); | |
objectAnimator.start(); | |
popIsOpen = false; | |
} rocketButton.setVisibility(View.GONE); | |
descriptionEditText.setText(""); | |
} | |
boolean popActionsIsOpen = false; | |
public void actionsPopupOpenAnimation() { | |
ObjectAnimator objectAnimator = ObjectAnimator.ofFloat(actionContent, "translationY", 0, -actionContent.getMeasuredHeight()); | |
objectAnimator.setDuration(200); | |
objectAnimator.start(); | |
popActionsIsOpen = true; | |
touch_content.setVisibility(View.VISIBLE); | |
} | |
public void actionsPopupCloseAnimation() { | |
ObjectAnimator objectAnimator = ObjectAnimator.ofFloat(actionContent, "translationY", -actionContent.getMeasuredHeight(), 0); | |
objectAnimator.setDuration(200); | |
objectAnimator.start(); | |
popActionsIsOpen = false; | |
touch_content.setVisibility(View.GONE); | |
} | |
private void prepareViews() { | |
takePhotoButton = (RelativeLayout) findViewById(R.id.takePhotoButton); | |
loading_content = (RelativeLayout) findViewById(R.id.loading_content); | |
videoContentMain = (RelativeLayout) findViewById(R.id.videoContentMain); | |
touch_content = (RelativeLayout) findViewById(R.id.touch_content); | |
actionContent = (RelativeLayout) findViewById(R.id.actionContent); | |
addressTextView = (TextView) findViewById(R.id.addressTextView); | |
nasaButton = (ImageButton) findViewById(R.id.nasaButton); | |
rocketButton = (ImageButton) findViewById(R.id.rocketButton); | |
weatherButton = (ImageButton) findViewById(R.id.weatherButton); | |
fbShareButton = (ImageButton) findViewById(R.id.fbShareButton); | |
camerActionButton = (ImageButton) findViewById(R.id.camerActionButton); | |
videoActionButton = (ImageButton) findViewById(R.id.videoActionButton); | |
socaialSharingButton = (ImageButton) findViewById(R.id.socaialSharingButton); | |
shareFireContent = (LinearLayout) findViewById(R.id.shareFireContent); | |
logoutButton = (LinearLayout) findViewById(R.id.logoutButton); | |
captureddImageView = (ImageView) findViewById(R.id.captureddImageView); | |
closePopUpButton = (RelativeLayout) findViewById(R.id.closePopUpButton); | |
descriptionEditText = (EditText) findViewById(R.id.descriptionEditText); | |
videoView = (VideoView) findViewById(R.id.videoView); | |
playVideoButton = (ImageButton) findViewById(R.id.playVideoButton); | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment