source: dispositivos_moviles/TibisayMovil/src/ve/gob/cenditel/tibisaymovil/TibisayMovilActivity.java @ a8bb2bb

Last change on this file since a8bb2bb was a8bb2bb, checked in by Jose Ruiz <joseruiz@…>, 11 years ago

Añadiendo funcionalidad de firma manuscrita en archivo pdf

  • Property mode set to 100644
File size: 5.5 KB
Line 
1package ve.gob.cenditel.tibisaymovil;
2
3import ve.gob.cenditel.tibisaymovil.R.color;
4import android.os.Build;
5import android.os.Bundle;
6import android.app.Activity;
7import android.app.AlertDialog;
8import android.content.Context;
9import android.content.DialogInterface;
10import android.content.Intent;
11import android.util.Log;
12import android.view.Menu;
13import android.view.View;
14import android.view.Window;
15import android.widget.AdapterView;
16import android.widget.AdapterView.OnItemClickListener;
17import android.widget.ArrayAdapter;
18import android.widget.ListView;
19import android.widget.TextView;
20import android.widget.Toast;
21
22//public class TibisayMovilActivity extends KeyChainClientActivity {
23//implements OnItemClickListener, OnClickListener {
24public class TibisayMovilActivity extends Activity {
25
26        @Override
27        protected void onCreate(Bundle savedInstanceState) {
28                super.onCreate(savedInstanceState);
29       
30                final boolean customTitleSupported = requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);         
31                setContentView(R.layout.activity_main);   
32                if(customTitleSupported)
33                        getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.title_bar);
34       
35                // listview de funciones
36                final ListView listViewFunctions = (ListView) findViewById(R.id.listViewFunctions);
37               
38                String[] values = new String[] {getString(R.string.firmar), 
39                                                                                getString(R.string.verificar), 
40                                                                                getString(R.string.cifrar), 
41                                                                                getString(R.string.descifrar), 
42                                                                                getString(R.string.compartir), 
43                                                                                getString(R.string.certificados) };
44                       
45                       
46                FunctionListAdapter ad = new FunctionListAdapter(this, values);
47                listViewFunctions.setAdapter(ad);
48               
49               
50                /*************** Dialogos de submenus *******************/
51                //Crear dialogo de opciones para firmar
52                final AlertDialog sign_dialog = makeSignatureOptionsDialog();
53               
54                       
55               
56                listViewFunctions.setOnItemClickListener(new OnItemClickListener(){
57                       
58                        @Override
59                        public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
60                                        long arg3) {
61                                // TODO Auto-generated method stub
62                                Context context = getApplicationContext();
63                                //CharSequence text = "Click!";
64                                int duration = Toast.LENGTH_SHORT;
65                                //Toast.makeText(context, text, duration).show();
66                               
67                                View curr = arg0.getChildAt((int) arg3);
68                                TextView c = (TextView)curr.findViewById(R.id.textListMainMenu);
69                                String function = c.getText().toString();
70                                //Toast.makeText(context, function, duration).show();
71
72                               
73                                if(function.equals(getString(R.string.firmar))) {
74                                        sign_dialog.show();
75                                }
76                               
77                                if (function.equals("Certificados")){
78                                        Toast.makeText(context, "Gestionar repositorio", duration).show();                                     
79                                       
80                                        // Chequeo de version del API de Android para creacion de repositorio           
81                                if (Build.VERSION.SDK_INT < Build.VERSION_CODES.ICE_CREAM_SANDWICH){
82                                        //RelativeLayout certTab = (RelativeLayout) this.findViewById(R.id.linetab2);
83                                    //certTab.setVisibility(View.VISIBLE);           
84                                    //this.tabsListener.setKeyChainController(this.keyChainController);
85                                        Toast.makeText(context, "API < 4.0", duration).show();
86                                }
87                                       
88                                        //manageKeyChain();
89                                       
90                                        // lanzar activity de gestion de repositorio
91                                        testRepository();                                       
92                                }
93                               
94                        }
95                }); //setOnItemClickListener
96        } // end onCreate
97
98        @Override
99        public boolean onCreateOptionsMenu(Menu menu) {
100                // Inflate the menu; this adds items to the action bar if it is present.
101                getMenuInflater().inflate(R.menu.main, menu);
102                return true;
103        }
104
105        /*
106        @Override
107    public void setAlias(String alias) {
108
109        if (alias == null) {
110            finish();
111            return;
112        }
113       
114        this.privateKeyAlias = alias;
115       
116        //Intent intent = new Intent(this, CertValidatorActivity.class);
117        //intent.putExtra(IntentExtraField.ALIAS, alias);
118        //intent.putParcelableArrayListExtra(IntentExtraField.FILES, TypeUtils.convertToUriArrayList(this.selected));
119        //startActivityForResult(intent, ActivityResult.CHECK_CERTIFICATE_VALIDITY);       
120       
121    }
122        */
123
124//      private void manageKeyChain(){
125//              //
126//              //Intent intent = new Intent(this, PKCS12FilePickerActivity.class);
127//        //startActivityForResult(intent, ActivityResult.IMPORT_CERTIFICATE);
128//        //KeyChainStrategy.getInstance().choosePrivateKeyAlias();
129//      }
130       
131        private void testRepository(){
132                Intent intent = new Intent(this, CertificateRepositoryActivity.class);
133                startActivity(intent);
134        }
135       
136        private void fileToSignHandwrittenSignature(){
137                Intent intent = new Intent(this, FileToSignHandwrittenSignatureActivity.class);
138                startActivity(intent);
139        }
140       
141       
142        //Crea dialogo de opciones para firma electronica
143        public AlertDialog makeSignatureOptionsDialog() {
144                final String[] option = new String[] {getString(R.string.firmar_man_pdf), getString(R.string.firmar_elec_pdf), getString(R.string.firmar_pkcs7) };
145                ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
146                        android.R.layout.select_dialog_item, option);
147                AlertDialog.Builder builder = new AlertDialog.Builder(this);
148               
149                builder.setTitle(getString(R.string.seleccione_opcion));
150                builder.setAdapter(adapter, new DialogInterface.OnClickListener() {
151               
152                  public void onClick(DialogInterface dialog, int which) {
153                         
154                          switch (which) {
155                        case 0: // Firma Manuscrita PDF
156                                Log.i("DEBUG", "antes de activity call");
157                                fileToSignHandwrittenSignature();
158                                break;
159                        case 1: // Firma Electronica PDF
160                               
161                                break;
162                        case 2: // Firma PKCS7
163                               
164                                break;
165
166                        default:
167                                break;
168                        }
169                  }
170                 
171                });     
172               
173                return builder.create();
174        }
175}
Note: See TracBrowser for help on using the repository browser.