Hola gabriel y pablo, gracias por responder y tan rapido.<br><br>El tema es así:<br><br>La idea del código es que la primera vez que se ejecute la actividad, busque la base de datos y si no la encuentra la crea ya que las radios están definidas en el código. Las siguientes veces que se ejecute la actividad la base sólo se carga desde ese directorio.<br>
<br>La primera vez que ejecuto el código, se crea la base y puedo agregar elementos en ella, pero la proxima vez que ejecute el codigo, accedo a la base pero si intento escribir en ella me dice que es solo lectura.<br><br>
Para probar el tema de los permisos intenté:<br><span style="color: rgb(204, 0, 0);">os.chmod(os.path.join(directorio_base, &#39;Radios.db&#39;), 644)</span><br>No funcionó (probé diferentes permisos, incluso todos)<br><br>
No es lo mismo:<br><span style="color: rgb(153, 0, 0);">os.path.join(os.environ[&#39;SUGAR_ACTIVITY_ROOT&#39;],&#39;data/&#39;)</span><br>que:<br><span style="color: rgb(153, 0, 0);">os.path.join(activity.get_activity_root(), &#39;data/&#39;)</span><br>
<br>Son diferentes directorios, sin embargo, en la práctica no hay diferencia, pasa lo mismo.<br><br>Subí el paquete .xo que tengo hasta el momento a: <a href="http://sites.google.com/site/sugaractivities/ceibalradio-1-0">http://sites.google.com/site/sugaractivities/ceibalradio-1-0</a><br>
(para agregar una radio hay que hacer click con boton derecho sobre cualquier radio de las existentes)<br><br><br><br><br><br><br><br><div class="gmail_quote">El 9 de marzo de 2010 11:41, Gabriel Eirea <span dir="ltr">&lt;<a href="mailto:geirea@gmail.com">geirea@gmail.com</a>&gt;</span> escribió:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">Flavio:<br>
<br>
No sé si tendrá algo que ver, pero para acceder al directorio donde<br>
uno puede escribir en vez de usar activity.get_activity_root() yo uso<br>
la variable de entorno SUGAR_ACTIVITY_ROOT, así:<br>
<br>
os.path.join(os.environ[&#39;SUGAR_ACTIVITY_ROOT&#39;],&#39;data&#39;)<br>
<br>
También habría que ver como dice Pablo con qué permisos se crea el<br>
archivo, podés mandar el código de la clase ManejodeBasedeDatos?<br>
<br>
Saludos,<br>
<br>
Gabriel<br>
<br>
<br>
<br>
<br>
El día 8 de marzo de 2010 23:57, Pablo Moleri &lt;<a href="mailto:pmoleri@gmail.com">pmoleri@gmail.com</a>&gt; escribió:<br>
<div><div></div><div class="h5">&gt; Flavio, no me queda claro si no podés &quot;acceder&quot; o &quot;modificar&quot; la base de<br>
&gt; datos. En cualquiera de los casos sería bueno que miraras con que permisos<br>
&gt; queda creado el archivo &quot;Radios.db&quot; (ls -l), es necesario que los permisos<br>
&gt; del grupo permitan lectura y escritura.<br>
&gt;<br>
&gt; Saludos,<br>
&gt; Pablo<br>
&gt;<br>
&gt; 2010/3/8 Flavio Danesse &lt;<a href="mailto:fdanesse@gmail.com">fdanesse@gmail.com</a>&gt;<br>
&gt;&gt;<br>
&gt;&gt; Tengo una base de datos que la actividad crea así:<br>
&gt;&gt;<br>
&gt;&gt; # Directorio para crear la base de datos<br>
&gt;&gt; directorio_base = os.path.join(activity.get_activity_root(), &#39;data/&#39;)<br>
&gt;&gt; mi_base = os.path.join(directorio_base + &quot;Radios.db&quot;)<br>
&gt;&gt;<br>
&gt;&gt; # Si el directorio no existe, crearlo<br>
&gt;&gt; if not os.path.exists(directorio_base):<br>
&gt;&gt;     os.mkdir(directorio_base)<br>
&gt;&gt;<br>
&gt;&gt; # Si la base de datos no existe, crearla<br>
&gt;&gt; if not os.path.exists(mi_base):<br>
&gt;&gt;     BasedeDatos = ManejodeBasedeDatos(mi_base)<br>
&gt;&gt;     BasedeDatos.CrearBasededatos()<br>
&gt;&gt;     BasedeDatos.Llenar_Base()<br>
&gt;&gt;<br>
&gt;&gt; Luego, en la actividad tengo código que permite agregar datos a la base y<br>
&gt;&gt; actualizarla, sin embargo solo funciona la primera vez que ejecuto la<br>
&gt;&gt; actividad.<br>
&gt;&gt;<br>
&gt;&gt; Es decir:<br>
&gt;&gt;<br>
&gt;&gt; Instalo la actividad.<br>
&gt;&gt; La ejecuto por primera vez, con lo cual se crea la base.<br>
&gt;&gt; Agrego 1 registro y todo funciona perfecto, los datos se almacenan y se<br>
&gt;&gt; conservan luego de reiniciar.<br>
&gt;&gt;<br>
&gt;&gt; Sin embargo, en instancias sucesivas de la actividad no puedo modificar la<br>
&gt;&gt; base de datos.<br>
&gt;&gt;<br>
&gt;&gt; _______________________________________________<br>
&gt;&gt; Olpc-uruguay mailing list<br>
&gt;&gt; <a href="mailto:Olpc-uruguay@lists.laptop.org">Olpc-uruguay@lists.laptop.org</a><br>
&gt;&gt; <a href="http://lists.laptop.org/listinfo/olpc-uruguay" target="_blank">http://lists.laptop.org/listinfo/olpc-uruguay</a><br>
&gt;&gt;<br>
&gt;<br>
&gt;<br>
&gt; _______________________________________________<br>
&gt; Olpc-uruguay mailing list<br>
&gt; <a href="mailto:Olpc-uruguay@lists.laptop.org">Olpc-uruguay@lists.laptop.org</a><br>
&gt; <a href="http://lists.laptop.org/listinfo/olpc-uruguay" target="_blank">http://lists.laptop.org/listinfo/olpc-uruguay</a><br>
&gt;<br>
&gt;<br>
_______________________________________________<br>
Olpc-uruguay mailing list<br>
<a href="mailto:Olpc-uruguay@lists.laptop.org">Olpc-uruguay@lists.laptop.org</a><br>
<a href="http://lists.laptop.org/listinfo/olpc-uruguay" target="_blank">http://lists.laptop.org/listinfo/olpc-uruguay</a><br>
</div></div></blockquote></div><br>