/* Tibisay Movil Copyright (C) 2013 Antonio Araujo (aaraujo@cenditel.gob.ve), Jose Ruiz (jruiz@cenditel.gob.ve), Fundacion Centro Nacional de Desarrollo e Investigacion en Tecnologias Libres - CENDITEL. La Fundación CENDITEL concede permiso para usar, copiar, distribuir y/o modificar este programa, reconociendo el derecho que la humanidad posee al libre acceso al conocimiento, bajo los términos de la licencia de software GPL versión 2.0 de la Free Software Foundation. Este programa se distribuye con la esperanza de que sea util, pero SIN NINGUNA GARANTIA; tampoco las implicitas garantias de MERCANTILIDAD o ADECUACION A UN PROPOSITO PARTICULAR. Para mayor información sobre los términos de la licencia ver el archivo llamado "gpl-2.0.txt" en ingles. */ package ve.gob.cenditel.tibisaymovil; import java.io.File; import android.app.Activity; import android.content.Intent; import android.net.Uri; import android.os.Bundle; import android.util.Log; import android.view.View; import android.view.View.OnClickListener; import android.view.Window; import android.webkit.MimeTypeMap; import android.widget.LinearLayout; import android.widget.TextView; import android.widget.Toast; public class SignResultHandwrittenSignatureActivity extends Activity{ private String fileToSign; private String imageCaptured; private String fileSigned; private String pathFileSigned; private LinearLayout button_share; private LinearLayout button_finish; @Override protected void onCreate(Bundle savedInstanceState) { //Capturando archivo que será firmado fileToSign = getIntent().getExtras().getString("FILE_TO_SIGN"); //Capturando imagen de firma imageCaptured = getIntent().getExtras().getString("IMAGE_CAPTURED"); //Capturando archivo firmado fileSigned = getIntent().getExtras().getString("FILE_SIGNED"); pathFileSigned = getIntent().getExtras().getString("PATH_FILE_SIGNED"); //Estilando la barra de titulo final boolean customTitleSupported = requestWindowFeature(Window.FEATURE_CUSTOM_TITLE); super.onCreate(savedInstanceState); setContentView(R.layout.activity_sign_result_handwritten_signature); //Estilando Barra de titulo if(customTitleSupported) getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.title_bar); TextView archivo_para_firm = (TextView) this.findViewById(R.id.archivo_original_a_firmar); TextView imagen_utlizada= (TextView) this.findViewById(R.id.archivo_descifrado); TextView archivo_firmado = (TextView) this.findViewById(R.id.destinatario); archivo_para_firm.setText(fileToSign); imagen_utlizada.setText(imageCaptured); archivo_firmado.setText(pathFileSigned+fileSigned); button_share = (LinearLayout) this.findViewById(R.id.button_remove_certificate_zone); button_finish = (LinearLayout) this.findViewById(R.id.button_add_certificate_zone); button_finish.setOnClickListener(new OnClickListener() { public void onClick(View v) { Intent oIntent = new Intent(SignResultHandwrittenSignatureActivity.this, TibisayMovilActivity.class); oIntent.setAction(Intent.ACTION_VIEW); oIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); startActivity(oIntent); finish(); } }); button_share.setOnClickListener(new OnClickListener() { public void onClick(View v) { shareIt(); } }); LinearLayout layoutDecryptedFileAndArror = (LinearLayout) this.findViewById(R.id.layout_decrypted_file_and_arrow); OnClickListener decryptedFileListener = new OnClickListener() { public void onClick(View v) { // do something when the button is clicked //Toast.makeText(getApplicationContext(), "**CLICK SOBRE EL TEXTVIEW***", Toast.LENGTH_LONG).show(); openIt(pathFileSigned+fileSigned, getMimeType(pathFileSigned+fileSigned)); } }; layoutDecryptedFileAndArror.setOnClickListener(decryptedFileListener); } // funcion para lanzar un intent que abra un archivo private void openIt(String decryptedFile, String mimeType) { Intent shareIntent = new Intent(); shareIntent.setAction(Intent.ACTION_VIEW); File file = new File(decryptedFile); Uri uri = Uri.fromFile(file); Log.i("DEBUG", file.getPath()); shareIntent.setDataAndType(uri, mimeType); startActivity(Intent.createChooser(shareIntent, getResources().getText(R.string.open_it_using))); } private void shareIt() { Intent shareIntent = new Intent(); shareIntent.setAction(Intent.ACTION_SEND); Toast.makeText(SignResultHandwrittenSignatureActivity.this,pathFileSigned + fileSigned,Toast.LENGTH_LONG).show(); File file = new File(pathFileSigned + fileSigned); Uri pdf_uri = Uri.fromFile(file); Log.i("DEBUG", file.getPath()); shareIntent.putExtra(Intent.EXTRA_STREAM, pdf_uri); shareIntent.setType("application/pdf "); startActivity(Intent.createChooser(shareIntent, "Compartir pdf usando")); } // funcion para obtener el tipo mime de un archivo public static String getMimeType(String url) { String extension = url.substring(url.lastIndexOf(".")); String mimeTypeMap = MimeTypeMap.getFileExtensionFromUrl(extension); String mimeType = MimeTypeMap.getSingleton().getMimeTypeFromExtension(mimeTypeMap); return mimeType; } }