Posición: Member
Grupos: Registered
Registrado: 23/10/2012(UTC) Mensajes: 19 Ubicación: Granada
Fue agradecido: 1 vez/veces in 1 publicación(es).
|
Hola a todos.
Mi nombre es Jose Maria, soy actualmente alumno de EXITAE del curso de Android y he creado este tema para que podamos ir debatiendo un poco sobre el ejercicio final, que me imagino que muchos al igual que a mi, nos viene bien algo de apoyo.
Un saludo,
Jose.
|
|
|
|
Posición: Administration
Grupos: Administrators
Registrado: 07/10/2010(UTC) Mensajes: 436 Ubicación: España Agradecimientos: 38 veces Fue agradecido: 49 vez/veces in 48 publicación(es).
|
Buenas Jose, En mi caso, cuando me toco ami (no hace tanto jejeje) lo que me costo mas trabajo fue: - Determinar el click en el mapa y determinar entre uno nuevo u otro existente. - El tema de la gestion de las Fotos, cuando haces una foto hay que reducir su tamaño, porque cuando la imagen la intentas meter en un ImageViewsi esta es muy grande la app "peta". Si necesitais ayuda cuando lleges a estos puntos avisa y te pongo el codigo aqui!! Venga animo, yo mi app final la recicle y la subi al market: https://play.google.com/...?id=es.epinanab.reforestpor otro lado si quereis ver todas mis apps.... https://play.google.com/...ps/developer?id=epinanabSaludos!! nos leemos!! |
|
|
|
|
Posición: Newbie
Grupos: Registered
Registrado: 28/10/2012(UTC) Mensajes: 2
Agradecimientos: 2 veces
|
Hola! Yo empecé el máster hace 15 meses y aún no he hecho el proyecto final. Terminar la teoría fue muy fácil, pero cuando llegué al proyecto me quise morir. El temario es horroroso, yo sé programar pero os juro que no me entero de nada leyendo lo que nos dieron, pedí ayuda a un profesor (no recuerdo el nombre) y lo único que sabía decirme era que leyera el temario que todo estaba explicado en él, me sentí muy mal, porque después de la pasta que cuesta el máter que te traten así no mola nada. Dejé el proyecto casi a la mitad porque me tuve que ir a vivir fuera y ahora que he vuelto quiero terminarlo, pero me encuentro con que sigo topándome con el mismo muro, logro ir terminando hitos mirando cosas por internet y apañando los ejemplos que veo por ahí. En una ocasión me llamaron para preguntarme cómo lo llevaba, le comenté a la mujer todos los problemas que estaba encontrando, me dijo que me llamaría para darme soluciones y aún espero.
En definitiva, estoy bastante deprimida, si llamo para pedir un aplazamiento lo único que les importa es trincar la pasta del aplazamiento sin preguntar por qué lo necesito...
En fin, estoy parada en el enlace a la bbdd, tengo un ejemplo que funciona, pero cuando lo adapto a mi app salta por los aires. Tengo el mapa, si toco en un punto que he creado en código me muestra la info, si todo en cualquier sitio me da las coordenadas. Ya no tengo nada más, ni enlace con la bbdd ni el tema de sacar las fotos para añadirlas a la info.
Ahí estoy parada sin saber qué hacer preguntándome si lo mejor es abandonar y dejar de palmar la pasta por los aplazamientos.
¡Hale! ya os he contado mis penas.
Saludos a todos.
|
|
|
|
Posición: Administration
Grupos: Administrators
Registrado: 07/10/2010(UTC) Mensajes: 436 Ubicación: España Agradecimientos: 38 veces Fue agradecido: 49 vez/veces in 48 publicación(es).
|
Hola Tesnukake,
Te entiendo perfectamente, yo tuve esa sensacion.... el proyecto final tambien me costo bastante sacarlo adelante, pero tuve la suerte de pillar a ISMAEL, que es el unico que se implicaba un monton y se molestaba en escucharte... yo el tema de la ddbb no la hice con el contentProbaider, al final la hice directamente con el SQLite y me pusieron un 8,5. para mi fue mucho mas facil, si te digo la verdad... lo del contentprovider... no lo entendi del todo, tampoco le dedique mucho tiempo, me pillo al final, y los 2 ultimos temas los hice bastante rapidos.
Te puedo ayudar de 2 maneras! (elije la que quieras)
Te puedo ir pasando fragmentos de codigo conforme te vallas atrancando, o te puedo pasar mi proyecto completo y le hechas un vistazo a ver que tal... ¿que opinas?
Tambien puedes sunir tu proyecto aqui y el que quiera le puede hechar un vistazo y opinar que pa eso estamos ¿no?
Venga animo!!
P.D. en teoria todos tenemos 6 meses mas de acceso al campus... asique intenta no pagar mas! en mi caso que compre tambien la parte de Java me costo 1500€... asique JODER! no esta la cosa como pa seguir pagando!! |
|
1 usuario agradecido admin por esta útil publicación.
|
|
|
Posición: Newbie
Grupos: Registered
Registrado: 29/10/2012(UTC) Mensajes: 1 Ubicación: San Fernando
|
Bueno , en primer lugar hola a todos , y muchas gracias a Enrique por crear esta web . Yo estoy también en EXITAE, me matricule en enero de este año, hice la parte de Java, y a continuación comencé con Android . La parte de Android me pareció muy complicado, he comenzado de nuevo hace dos semanas para terminar antes de fin de año . He visto el foro de Enrique y me ha parecido fabuloso.
Una pregunta , para los que estáis mas enterados, puedo seguir haciendo el ejercicio hasta final de este año. ¿Es así?.
Muchas gracias a todos y enhorabuena Enrique.
|
|
|
|
Posición: Administration
Grupos: Administrators
Registrado: 07/10/2010(UTC) Mensajes: 436 Ubicación: España Agradecimientos: 38 veces Fue agradecido: 49 vez/veces in 48 publicación(es).
|
Hola Juan Jose,
Gracias por el apoyo, me alegra que el esfuerzo de crear esto sirva para mantenernos conectados y ayudarnos.
Que yo sepa tenemos matricula 14 meses, durante ese tiempo ese tiempo tienes derecho al Campus, Skype y soporte por correo electronico, yo entendi que en ese tiempo tienes que acabar el curso incluyendo el ejercicio final.
Por otra parte, la orientadora Ana, me comento que pasado ese tiempo de matricula, te mantienen el acceso al campus de 4 a 6 meses mas...
Yo el proyecto final lo hice en 2 meses así que calcula, te aconsejo que lo comiences cuando termines el temario, ya que tendras mas soltura para terminarlo.
También te recomiendo que abras todos los proyectos de cada ejercicio y los intentes modificar orientandolos para algun uso particular tuyo, aunque sean una estupidez te ayudara a coger mas practica.
Un saludo! |
|
|
|
|
Posición: Administration
Grupos: Administrators
Registrado: 07/10/2010(UTC) Mensajes: 436 Ubicación: España Agradecimientos: 38 veces Fue agradecido: 49 vez/veces in 48 publicación(es).
|
Buenas! Visto lo visto e decidido colgar mi proyecto final. Descargar ProyectoCreo que os servira de ayuda para realizar el vuestro, en el emulador hay cosas que fallan lo mejor es depurar la aplicacion con vuestro terminal real, en la web explico como hacerlo en el apartado de instalacion de eclipse -> Emulador Como instalar un emulador fisicoBueno ya vere vuestros comentarios!! saludos |
|
1 usuario agradecido admin por esta útil publicación.
|
|
|
Posición: Newbie
Grupos: Registered
Registrado: 29/10/2012(UTC) Mensajes: 8
|
Seguramente será una duda tonta pero es que llevo varias semanas atascado en lo mismo y después de ver tu proyecto sigo con la misma duda. Donde está el código con el que se carga la base de datos o la creas sino existe cada vez que abres la aplicación? Tengo más dudas pero prefiero ir paso a paso... Editado por un usuario martes, 30 de octubre de 2012 7:07:26(UTC)
| Razón: No especificada
|
|
|
|
Posición: Administration
Grupos: Administrators
Registrado: 07/10/2010(UTC) Mensajes: 436 Ubicación: España Agradecimientos: 38 veces Fue agradecido: 49 vez/veces in 48 publicación(es).
|
Buenas ftg81, La base de datos la crea el método onCreate() que será ejecutado automáticamente por la clase DasedeDatos que extiende de la clase DBHelper cuando sea necesaria la creación de la base de datos, es decir, cuando aún no exista. En ciertas partes del programa veras 2 lineas: Código:db1 = new BaseDeDatos(ListaLugaresActivity.this, "db_pyf", null, BaseDeDatos.v_db);
db = db1.getWritableDatabase();
Esas lineas sirven para conectar con la Base de Datos, pero la primera vez que las ejecutamos y SOLO la primera vez se ejecuta la parte de codigo que esta en el OnCreate de la Clase que te comente arriba y crea la bbdd en si, es decir la tabla, el resto de veces solo crea el acceso a ella. Código:
public class BaseDeDatos extends SQLiteOpenHelper {
public static String DB_PATH = "/data/data/es.epinanab.pyf/databases/";
public static String DB_NAME = "db_pyf";
private final Context myContext;
public static int v_db = 2;
String sqlCreate = "CREATE TABLE lugares (_id INTEGER PRIMARY KEY AUTOINCREMENT, nombre TEXT, lat DOUBLE, lon DOUBLE, descripcion TEXT, foto TEXT, fecha TEXT)";
String sqlUpdate = "ALTER TABLE lugares ADD COLUMN fecha TEXT;";
public BaseDeDatos(Context contexto, String nombre, CursorFactory factory,
int version) {
super(contexto, nombre, factory, version);
this.myContext = contexto;
}
@Override
public void onCreate(SQLiteDatabase db) {
if (db.isReadOnly()) {
db = getWritableDatabase();
}
db.execSQL(sqlCreate);
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
// Cuando haya cambios en la estructura deberemos
// incluir el código
// SQL necesario para actualizar la base de datos
if (newVersion > oldVersion) {
db.execSQL(sqlUpdate);
}
}
Espero que te quede claro, cualquier cosa dinos por aqui! ;P Mi proyecto os lo comparto para que echéis un ojo y cojáis perspectiva, no para copiarlo (aunque a mi me da igual, ya es cosa de cada uno) cada programa tiene muchas formas de abordarlo, estoy seguro que el mio no es la mejor forma, pero si os puedo decir que funciona! :D Saludos!! |
|
|
|
|
Posición: Newbie
Grupos: Registered
Registrado: 28/10/2012(UTC) Mensajes: 2
Agradecimientos: 2 veces
|
admin escribió:Hola Juan Jose,
Gracias por el apoyo, me alegra que el esfuerzo de crear esto sirva para mantenernos conectados y ayudarnos.
Que yo sepa tenemos matricula 14 meses, durante ese tiempo ese tiempo tienes derecho al Campus, Skype y soporte por correo electronico, yo entendi que en ese tiempo tienes que acabar el curso incluyendo el ejercicio final.
Por otra parte, la orientadora Ana, me comento que pasado ese tiempo de matricula, te mantienen el acceso al campus de 4 a 6 meses mas...
Yo el proyecto final lo hice en 2 meses así que calcula, te aconsejo que lo comiences cuando termines el temario, ya que tendras mas soltura para terminarlo.
También te recomiendo que abras todos los proyectos de cada ejercicio y los intentes modificar orientandolos para algun uso particular tuyo, aunque sean una estupidez te ayudara a coger mas practica.
Un saludo! Hola!! Yo no sé cuánto tiempo darán ahora para terminar, lo normal son 12 meses y una prórroga que puedes pedir que es un poco rara, por lo visto si es de 1 mes tienes que pedirla antes de que falte el mes para la finalización del plazo. A mi me faltaban 3 semanas y sólo me dieron esas 3 semanas de prórroga (durante la prórroga no tienes acceso al campus). Después se reanuda todo y cuando acaba el plazo ¡¡a pagar por cada mes que quieras de más!!
|
|
|
|
Posición: Newbie
Grupos: Registered
Registrado: 29/10/2012(UTC) Mensajes: 8
|
A ver si lo entiendo bien, si yo tengo el oncreate hecho de la base de datos en mi ejercicio, sin tener ninguna información solo creados los campos vacios al iniciar la aplicación si voy al DDMS y busco en data-data-miejercicio... deberia salirme una carpeta database? Si es así no me sale y no entiendo el porqué.
|
|
|
|
Posición: Administration
Grupos: Administrators
Registrado: 07/10/2010(UTC) Mensajes: 436 Ubicación: España Agradecimientos: 38 veces Fue agradecido: 49 vez/veces in 48 publicación(es).
|
ftg81 escribió:A ver si lo entiendo bien, si yo tengo el oncreate hecho de la base de datos en mi ejercicio, sin tener ninguna información solo creados los campos vacios al iniciar la aplicación si voy al DDMS y busco en data-data-miejercicio... deberia salirme una carpeta database? Si es así no me sale y no entiendo el porqué. Buenas! Tienes que tener la clase SQLOpenHelper y 2 lineas en la clase desde donde la vas a llamar Código:
db1 = new BaseDeDatos(ListaLugaresActivity.this, "db_pyf", null, BaseDeDatos.v_db);
db = db1.getWritableDatabase();
Al crear el Objeto y instanciar el objeto, te ejecurara el codigo que hallas puesto en el OnCreate del SQLOpenHelper y te creara la base de datos si no estaba creada, y podras ver el fichero y carpeta en la perpestiva DDMS. Si no te aclaras dilo y te pongo mas info Animo!! |
|
|
|
|
Posición: Member
Grupos: Registered
Registrado: 23/10/2012(UTC) Mensajes: 19 Ubicación: Granada
Fue agradecido: 1 vez/veces in 1 publicación(es).
|
Buenas Enrique,
he estado liado construyendo las pantallas (layouts) y he visto que en la carpeta drawable es donde insertas las imagenes, iconos y demas que utilizas en las vistas. He visto que en tu proyecto en concreto metes dos imagenes .jpg llamadas 'no_photo2' y 'no_photo3' pero nose si son algún tipo de enlace, puesto que no se me abren. ¿Para que las utilizas?
¿También podrias explicarme un poco en que consiste el archivo 'bgfoto.xml'?
Muchas gracias.
Saludos, Jose.
PD: solo utilizo tu proyecto como guia, no copio codigo jeje :P
|
|
|
|
Posición: Member
Grupos: Registered
Registrado: 23/10/2012(UTC) Mensajes: 19 Ubicación: Granada
Fue agradecido: 1 vez/veces in 1 publicación(es).
|
Otra cosilla...
la clase R es la que contiene los recursos que hemos metido, por ejemplo, en los strings.xml pero... como se actualiza esa clase para que me coja los recursos nuevos que he insertado? Porque tengo entendido de que no podemos modificar dicha clase R.
Gracias de nuevo.
|
|
|
|
Posición: Administration
Grupos: Administrators
Registrado: 07/10/2010(UTC) Mensajes: 436 Ubicación: España Agradecimientos: 38 veces Fue agradecido: 49 vez/veces in 48 publicación(es).
|
Buenas Roman,
te contesto uno por uno:
1.Las imagenes no_photo2 y 3 solo utilizo una de ellas, se trata de una imagen que pone "imagen no disponible" y la uso para cuando no hay ninguna foto en la base de datos.
Se usa en varios sitios, una de ellas es en la clase: mostrarlugaractivity en la linea 67
// Asignamos una foto por defecto si no la hay en la BD if (foto_db.equals("")) { foto.setImageResource(R.drawable.no_photo3); } else { poner_foto(foto_db); }
2.lo del archivo bgfoto.xml es para personalizar el control imageview, eso añade un marco al control, redondea las esquinas, fijate en el Layout donde lo utilizo, añado una propiedad de Background:
<ImageView android:id="@+id/foto" android:layout_width="fill_parent" android:layout_height="100dp" android:layout_gravity="right|bottom" android:layout_weight="2" android:background="@drawable/bgfoto" android:contentDescription="Foto" android:onClick="abre_foto" android:scaleType="centerInside" android:src="@drawable/no_photo3" />
3.Lo de la clase R no te tienes que preocupar, esta clase se actualiza sola! si ves que no se actualiza, ve al menu del eclipse Proyect->clean... y cuando te pregunte selecciona el proyecto que estas haciendo en ese momento, eso te creara de nuevo la clase R.
Espero haberte ayudado! |
|
|
|
|
Posición: Newbie
Grupos: Registered
Registrado: 29/10/2012(UTC) Mensajes: 8
|
Podrías explicar un poco el itemlistadapter por favor.
|
|
|
|
Posición: Administration
Grupos: Administrators
Registrado: 07/10/2010(UTC) Mensajes: 436 Ubicación: España Agradecimientos: 38 veces Fue agradecido: 49 vez/veces in 48 publicación(es).
|
ftg81 escribió:Podrías explicar un poco el itemlistadapter por favor. Buenas! ahora mismo estoy con los temas de base de datos e Interface, en las proximas semanas estara lista una leccion dedicada a esto... pero mientras tanto te explico: Por cierto, me vendria muy bien que opinaseis sobre la web, no se si explico bien, o quereis que explique mas... espero vuestras opiniones! Comienzo! esto de los ItemListAdapter a mi me costo un poco pillarlo, no es tan dificil cuando se le pilla la filosofoa... jejejej Como ves hay 2 layouts para esto: - Lista.xml. Es el que contiene el elemento ListView, podemos decir que es el Layout principal. - Itemrow.xml. Es el que define lada linea del ListView, esto es asi porque es personalizado, hay unos ListView como "de serie o predefinidos" pero si queremos personalizarlo, necesitamos hacerlo asi. Hasta aqui a nivel XML, la parte Java es "parecido" tenemos dos: - ListaLugaresActivity.JAVA. Es la actividad en si, en ella definimos el adapter y le indicamos el tema de la "personalizacion" con estas lineas: // Indicamos al adaptador los datos que vamos a mostrar en el ListView adapter = new ItemListAdapter(this, cursor); setListAdapter(adapter); - ItemListAdapter.JAVA. Esta es la clase donde recogemos el Adapter creado en la anterior y definimos cada campo de la base de datos en que elemento del Layout Itemrow.xml queremos poner. Te recomiendo, que con lo que te e dixo le heches un vistazo a las clases con los comentarios que hay, si tienes alguna pregunta mas, aqui estamos!! Un saludo! |
|
|
|
|
Posición: Newbie
Grupos: Registered
Registrado: 29/10/2012(UTC) Mensajes: 8
|
Tengo una duda, la primera vez que lanzamos la aplicación entiendo que la base de datos está vacía, entonces al darle ya sea a lista o mapa da error por no tener datos, como está esto solucionado?
|
|
|
|
Posición: Administration
Grupos: Administrators
Registrado: 07/10/2010(UTC) Mensajes: 436 Ubicación: España Agradecimientos: 38 veces Fue agradecido: 49 vez/veces in 48 publicación(es).
|
Buenassss No da error. Para el caso de la lista, hay un parametro que se usa para cuando la base de datos esta vacia: (empty) Código:
<ListView
android:id="@android:id/list"
android:layout_weight="1"
android:layout_width="fill_parent"
android:layout_height="fill_parent" />
<TextView
android:id="@android:id/empty"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:text="No hay reforestaciones! por favor, planta un Arbolico en tu Base de Datos" />
Para el caso del mapa es mas sencillo, el mapa es independiente, es decir se va a mostrar si o si, lo unico es mostrar los puntos que tiene la BD, si esta esta vacia pues, no mostrara ningun punto. Lo unico importante es iniicalizar la BD nada mas iniciar la Activity principal, es decir crear la conexion, de esta forma se creara la BD. Hay que entender los 2 conceptos: - La BD NO existe - La BD existe pero esta vacia! Por eso lo primero que tienes que hacer es "crear" la base de datos, y esto se hace a la vez que haces la consulta de la lista o el mapa, por lo que no hay problemas!! xP Un saludo!! |
|
|
|
|
Posición: Newbie
Grupos: Registered
Registrado: 24/11/2012(UTC) Mensajes: 1 Ubicación: Sevilla
|
Hola a todos, Llevo casi un año con el curso de Android con Exitae y por suerte o por desgracia me salió trabajo de otra cosa y no aprendo lo suficientemente rápido para terminar el curso y presentar el proyecto final. Por ésta razón, no se si alguien querrá, enviarme el proyecto para entregarlo. Puedo ofrecer 50 euros por él, por si alguien está interesado. Enviarme un mail antes de nada a kladazan@hotmail.comUn saludo!!
|
|
|
|
Salto de foro
No puedes iniciar nuevos temas en este foro.
No puedes responder a temas en este foro.
No puedes eliminar sus temas en este foro.
No puedes editar sus temas en este foro.
No puedes crear encuestas en este foro.
No puedes votar las encuestas en este foro.