Italian Allegare un file al pacchetto APP

iz1kbp

Member
Ciao a tutti,
sto cercando di allegare un semplice file txt alla app per poterlo poi aprire da menu della mia app con il programma predefinito (una specie di help ma molto base!).
In Vb6 durante la compilazione veniva chiesto di cercare ed indicare eventuali file da inserire nel pacchetto di installazione...volevo fare una cosa simile su b4a.
Ho letto nei forum che semplicemente basta mettere il file nella cartella FILES del mio progetto e poi schiaccia il tasto SYNC nel tab FILE di B4A.
Il mio problema iniziale è che ....non trovo questo benedetto tasto!!
Ho cercato in tutti menu ma non trovo questo comando.
Qualcuno gentilmente mi puo indicare dove trovarlo e , nel caso, come si chiama se diverso da SYNC?
scusate il disturbo
b4a ver 10.13
 

Sagenut

Expert
Licensed User
Longtime User
Ancora più semplicemente, nella colonna di destra dell'IDE seleziona Files e in basso troverai Aggiungi File.
Seleziona il tuo file.
Lo vedrai apparire nella lista.
La cartella di riferimento per accedervi dalla app sarà
B4X:
File.DirAssets
Nella colonna Files troverai anche il Sync per fare come ti hanno suggerito.
 

iz1kbp

Member
trovato...cercavo nei tab di sviluppo ed invece era in basso a destra nel tab "file manager" (pensavo fosse la stessa voce!)
 

iz1kbp

Member
Ancora più semplicemente, nella colonna di destra dell'IDE seleziona Files e in basso troverai Aggiungi File.
Seleziona il tuo file.
Lo vedrai apparire nella lista.
La cartella di riferimento per accedervi dalla app sarà
B4X:
File.DirAssets
Nella colonna Files troverai anche il Sync per fare come ti hanno suggerito.
Ciao Sagenut
Ho inserito il file nel tab e cliccato su sincronizza.
ho poi aggiunto questa piccola routine per far visualizzare il file di testo dal lettore di testo predefinito
Ho messo un if per l'errore e puntualmente.... mi da errore.
B4X:
Sub guida_click
    Private i As Intent
    Try
        i.Initialize(i.ACTION_VIEW, "file:/" & File.DirAssets & "/guida_xtc.txt")
        i.SetType("text/plain")
        StartActivity(i)
    Catch
        ToastMessageShow("errore", True)
    End Try
End Sub

questo l'errore che trovo nel debug
android.os.FileUriExposedException: file:/AssetsDir/guida_xtc.txt exposed beyond app through Intent.getData()
Mi pare, leggendo un po in giro che manchi un permesso ma sinceramente non ho capito come e dove impostarlo per accedere a questa directory.
Nel manifest della mia appilcazione ho inserito questa autorizzazione per poter scrivere e leggere un file di testo che creo con la mia app.
AddManifestText(
<uses-permission
android:name="android.permission.WRITE_EXTERNAL_STORAGE" />)

Secondo te devo fare qualcosa di simile? nel caso mi potresti indiare come?
Scusa per il disturbo.
mario
 

iz1kbp

Member
ho perso un po di tempo ma sono riuscito a capire l'errore!


ho tolto"file:/"

Private i As Intent Try i.Initialize(i.ACTION_VIEW, File.DirAssets & "/guida_xtc.txt") i.SetType("text/plain") StartActivity(i) Catch ToastMessageShow("errore", True) End Try:
Private i As Intent
    Try
        i.Initialize(i.ACTION_VIEW, File.DirAssets & "/guida_xtc.txt")
        i.SetType("text/plain")
        StartActivity(i)
    Catch
        ToastMessageShow("errore", True)
    End Try

Un cortesia: attualmente apro i file txt con il browser del cellulare perche non ho lettori installati.Cè per modo di far aprire direttamente il file txt con il browser?
grazie e scusate l'ignoranza.
Mario
 

Sagenut

Expert
Licensed User
Longtime User
Concordo con l'idea di visualizzare il file di testo direttamente in app in una label.
Che a sua volta andrà inserita in una scrollview o una XCLV per poterla scorrere se molto lunga, come prevedibile.
 
Top