Italian Condividere la tableview ok ma con numero diretto su whatsapp?

fifiddu70

Well-Known Member
Licensed User
Longtime User
Come da titolo la condivisione della tbleview su whatsapp è stata facile grazie all'aiuto di LucaMs diversamente io non sarei stato in grado di farlo se non studiando affondo la programmazione, cosa al momento difficile per me, ma adesso mi viene un'altro nodo al pettine, la condivisione tabletview direttamente ad un numero whatsapp quindi senza andare a scegliere dalla rubrica, questo per facilitare anche una sorta di numero preferito, riposto il codice perfettamente funzionante ma senza la possibilità di scegliere il numero diretto:
B4X:
Sub imgaggiungi_Click
    speech.StopRecording
    Dim items As List = tableview1.GetItems(0)
    Dim tc As TableCell 'create a new item
    tc.InitializeSingleLine(txtordine.Text)
    items.InsertAt(0, tc)
    tableview1.ReloadSection(0)
    txtordine.Text=""
End Sub

Sub TableView1_SelectedChanged (SectionIndex As Int, Cell As TableCell)
    tableview1.ReloadSection(0)
    tableview1.RemoveCells(SectionIndex, tableview1.GetItems(SectionIndex).IndexOf(Cell), 1)
End Sub

Sub imginvio_Click
    Dim testo As String
    testo = txtdati.Text
    Dim sb As StringBuilder
    sb.Initialize
    For Each tc As TableCell In tableview1.GetItems(0)
        sb.Append(tc.Text.ToString).Append(CRLF)
    Next
    Dim avc As ActivityViewController
    avc.Initialize("avc", Array("ORDINAQUI' I, Lista della spesa di: "& CRLF & testo & CRLF & "-----------------" & CRLF & sb.ToString , ""))
    avc.Show(Page1, Page1.RootPanel)
    tableview1.Clear
End Sub

come si vede dal codice un pulsante formato da un'immagine aggiunge la lista dentro la tableview attraverso la texfield txtordini dove si inseriscono i prodotti, la sub successiva permette di rimuivere un elemnto dalla tableview ed infine la sub imginvio permette la condivisione non solo su whatsapp ma anche su altri social, email etc, adesso ho la necessità invece di mirare direttamente ad un numero whatsapp, in b4 android lo risolto così:
B4X:
Sub imgpreferiti1_Click
    click.Load(File.DirAssets,"register.wav")
    click.Play
If txtpreferito1.Text ="" Or txtnomepref1.Text="" Then
        click.Load(File.DirAssets,"alarm.mp3")
        click.Play
        MsgboxAsync("Non puoi inviare la lista se non inserisci un nome attivita ed un numero whatsapp nei rispettivi campi, poi premi salva","AVVISO")
    Else
        For i = 0 To lsw1.Size -1
            txtlista.Text = txtlista.Text &  lsw1.GetItem(i) & CRLF
        Next
        Dim Intent1 As Intent
        Intent1.Initialize(Intent1.ACTION_VIEW, $"https://api.whatsapp.com/send?phone=${"+39" & txtpreferito1.Text}&text=${"ORDINAQUI' - LISTA DELLA SPESA DI:" & CRLF & txtdati.Text & CRLF & " ----------------------- " & CRLF & txtlista.Text}"$)
        StartActivity(Intent1)
        txtlista.Text=""
        lsw1.Clear
        txtordine.Text=""
        txtwhatsapp.Text=""
    End If
End Sub
mentre non è la stessa cosa per iphone, ho cercato nel forum sia in italiano che in inglese ma non ho trovato nulla in merito.
 

sirjo66

Well-Known Member
Licensed User
Longtime User
la condivisione della tableview su whatsapp è stata facile grazie all'aiuto di LucaMs

Scusa me mi ero perso, cosa vuol dire "condivisione della tableview su whatsapp" ???

Cioè si riesce a mandare messaggi su whatsapp ??
 

fifiddu70

Well-Known Member
Licensed User
Longtime User
Intendevo dire il contenuto della tableview che è composta da una lista viene poi condiviso su whatsapp, ma io non ho torvato il codice che mi permette di condividerlo direttamente ad un numero senza andare a cercarlo sulla rubrica.
 

Xfood

Expert
Licensed User
Come da titolo la condivisione della tbleview su whatsapp è stata facile grazie all'aiuto di LucaMs diversamente io non sarei stato in grado di farlo se non studiando affondo la programmazione, cosa al momento difficile per me, ma adesso mi viene un'altro nodo al pettine, la condivisione tabletview direttamente ad un numero whatsapp quindi senza andare a scegliere dalla rubrica, questo per facilitare anche una sorta di numero preferito, riposto il codice perfettamente funzionante ma senza la possibilità di scegliere il numero diretto:
B4X:
Sub imgaggiungi_Click
    speech.StopRecording
    Dim items As List = tableview1.GetItems(0)
    Dim tc As TableCell 'create a new item
    tc.InitializeSingleLine(txtordine.Text)
    items.InsertAt(0, tc)
    tableview1.ReloadSection(0)
    txtordine.Text=""
End Sub

Sub TableView1_SelectedChanged (SectionIndex As Int, Cell As TableCell)
    tableview1.ReloadSection(0)
    tableview1.RemoveCells(SectionIndex, tableview1.GetItems(SectionIndex).IndexOf(Cell), 1)
End Sub

Sub imginvio_Click
    Dim testo As String
    testo = txtdati.Text
    Dim sb As StringBuilder
    sb.Initialize
    For Each tc As TableCell In tableview1.GetItems(0)
        sb.Append(tc.Text.ToString).Append(CRLF)
    Next
    Dim avc As ActivityViewController
    avc.Initialize("avc", Array("ORDINAQUI' I, Lista della spesa di: "& CRLF & testo & CRLF & "-----------------" & CRLF & sb.ToString , ""))
    avc.Show(Page1, Page1.RootPanel)
    tableview1.Clear
End Sub

come si vede dal codice un pulsante formato da un'immagine aggiunge la lista dentro la tableview attraverso la texfield txtordini dove si inseriscono i prodotti, la sub successiva permette di rimuivere un elemnto dalla tableview ed infine la sub imginvio permette la condivisione non solo su whatsapp ma anche su altri social, email etc, adesso ho la necessità invece di mirare direttamente ad un numero whatsapp, in b4 android lo risolto così:
B4X:
Sub imgpreferiti1_Click
    click.Load(File.DirAssets,"register.wav")
    click.Play
If txtpreferito1.Text ="" Or txtnomepref1.Text="" Then
        click.Load(File.DirAssets,"alarm.mp3")
        click.Play
        MsgboxAsync("Non puoi inviare la lista se non inserisci un nome attivita ed un numero whatsapp nei rispettivi campi, poi premi salva","AVVISO")
    Else
        For i = 0 To lsw1.Size -1
            txtlista.Text = txtlista.Text &  lsw1.GetItem(i) & CRLF
        Next
        Dim Intent1 As Intent
        Intent1.Initialize(Intent1.ACTION_VIEW, $"https://api.whatsapp.com/send?phone=${"+39" & txtpreferito1.Text}&text=${"ORDINAQUI' - LISTA DELLA SPESA DI:" & CRLF & txtdati.Text & CRLF & " ----------------------- " & CRLF & txtlista.Text}"$)
        StartActivity(Intent1)
        txtlista.Text=""
        lsw1.Clear
        txtordine.Text=""
        txtwhatsapp.Text=""
    End If
End Sub
mentre non è la stessa cosa per iphone, ho cercato nel forum sia in italiano che in inglese ma non ho trovato nulla in merito.
Interessante la tua nuova app, potrebbe servire anche ad un mio amico che ha un supermercato, per i prodotti come fai?
 

fifiddu70

Well-Known Member
Licensed User
Longtime User
Interessante la tua nuova app, potrebbe servire anche ad un mio amico che ha un supermercato, per i prodotti come fai?
La mia app la sta utilizzando il comune dove abito io, il sindaco ha messo a disposizione pe la nostra comunità un servizio gratuito per la consegna a domicilio, usando l'app attualmente solo per Android già disponibile sul playstore, la gente scarica l'app, possono visualizzare i vari volantini dei supermercati più famosi d'Italia e poi possono inserire sia da tastiera che da voce i vari prodotti che verranno inseriti in una listview, questa listview poi viene inviata a whatsapp ai numeri di telefono predisposti dei vari supermercati che hanno aderito alla iniziativa del sindaco, quindi ogni persona deve solo poi pagare alla consegna la spesa senza altri costi, ma possono farli qualsiasi supermercato questo tipo di servizio senza appoggio del sindaco, all'interno dell'app puoi decidere se inviare la lista della spesa ad un numero della rubrica whatsapp oppure hai la possibilità di inserire fino a 3 numeri whatsapp preferiti in modo da avere un invio rapido della lista, attualmente la stanno utilizzando in circa 200 persone dopo 2 giorni di attività dell'app, ho un amico nel veronese che sta promuovendo questa mia app in altri comuni.
Per quanto riguarda i prodotti ormai si sanno quali sono presenti nei supermercati e cosa prendere di solito, ma ribadisco che si può consultare il volantino del supermercato se questi appartiene ai più famosi come: Conad, Eurospin, Lidl, despar, Sigma, Carrefour, Il Centesimo, Paghi Poco, Famila, Penny, Coop, Esselunga, Auchan, A&O, MD, Simply etc.
 
Last edited:

LucaMs

Expert
Licensed User
Longtime User
La mia app la sta utilizzando il comune dove abito io, il sindaco ha messo a disposizione pe la nostra comunità un servizio gratuito per la consegna a domicilio, usando l'app attualmente solo per Android già disponibile sul playstore,
questa listview poi viene inviata a whatsapp ai numeri di telefono predisposti dei vari supermercati

Allora hai già risolto il problema di come inviare una lista ad uno specifico numero, no? 😳
 

LucaMs

Expert
Licensed User
Longtime User
Non è solo per Android? io ho bisogno per Iphone
In quell'esempio di @Star-Dust lui usa un Intent (come sai non ho B4i ma suppongo che non ci siano Intent in iOS o siano totalmente diversi), però c'è anche un secondo metodo, l'utilizzo di una Webview e di codice html. Questo dovrebbe essere possibile anche con B4i.

Nota che viene comunque chiesta conferma dell'invio.
 

LucaMs

Expert
Licensed User
Longtime User
In quell'esempio di @Star-Dust lui usa un Intent (come sai non ho B4i ma suppongo che non ci siano Intent in iOS o siano totalmente diversi), però c'è anche un secondo metodo, l'utilizzo di una Webview e di codice html. Questo dovrebbe essere possibile anche con B4i.

Nota che viene comunque chiesta conferma dell'invio.
Mi riferisco a questa parte del suo codice, che lui ha "commentato" (non eseguito):
B4X:
'    Dim HtmlCode As String = $"<html><center><a href="https://api.whatsapp.com/send?phone=${EditTextNumber.Text}&text=${EditTextMessange.Text}">SEND </a></center></html>"$
'    Log(HtmlCode)
'    If File.Exists(File.DirRootExternal,"wa.html") Then  File.Delete(File.DirRootExternal,"wa.html")
'    File.WriteString(File.DirRootExternal,"wa.html",HtmlCode)
'    WebView1.LoadHtml(File.ReadString(File.DirRootExternal,"wa.html"))
 

ivanomonti

Expert
Licensed User
Longtime User
Mi riferisco a questa parte del suo codice, che lui ha "commentato" (non eseguito):
B4X:
'    Dim HtmlCode As String = $"<html><center><a href="https://api.whatsapp.com/send?phone=${EditTextNumber.Text}&text=${EditTextMessange.Text}">SEND </a></center></html>"$
'    Log(HtmlCode)
'    If File.Exists(File.DirRootExternal,"wa.html") Then  File.Delete(File.DirRootExternal,"wa.html")
'    File.WriteString(File.DirRootExternal,"wa.html",HtmlCode)
'    WebView1.LoadHtml(File.ReadString(File.DirRootExternal,"wa.html"))
interessante anche per b4j
 

Xfood

Expert
Licensed User
La mia app la sta utilizzando il comune dove abito io, il sindaco ha messo a disposizione pe la nostra comunità un servizio gratuito per la consegna a domicilio, usando l'app attualmente solo per Android già disponibile sul playstore, la gente scarica l'app, possono visualizzare i vari volantini dei supermercati più famosi d'Italia e poi possono inserire sia da tastiera che da voce i vari prodotti che verranno inseriti in una listview, questa listview poi viene inviata a whatsapp ai numeri di telefono predisposti dei vari supermercati che hanno aderito alla iniziativa del sindaco, quindi ogni persona deve solo poi pagare alla consegna la spesa senza altri costi, ma possono farli qualsiasi supermercato questo tipo di servizio senza appoggio del sindaco, all'interno dell'app puoi decidere se inviare la lista della spesa ad un numero della rubrica whatsapp oppure hai la possibilità di inserire fino a 3 numeri whatsapp preferiti in modo da avere un invio rapido della lista, attualmente la stanno utilizzando in circa 200 persone dopo 2 giorni di attività dell'app, ho un amico nel veronese che sta promuovendo questa mia app in altri comuni.
Per quanto riguarda i prodotti ormai si sanno quali sono presenti nei supermercati e cosa prendere di solito, ma ribadisco che si può consultare il volantino del supermercato se questi appartiene ai più famosi come: Conad, Eurospin, Lidl, despar, Sigma, Carrefour, Il Centesimo, Paghi Poco, Famila, Penny, Coop, Esselunga, Auchan, A&O, MD, Simply etc.
Per scaricarla dal playstore?
 

fifiddu70

Well-Known Member
Licensed User
Longtime User
Ho guardato il video. Se ordinassi, presso uno dei venditori che hanno aderito, 500g di carne di cervo/pescespada/balena?

Voglio dire che non conosci i prodotti dei negozianti, tantomeno le marche (1Kg di spaghetti N. x - e la marca?).
io di solito compro da conad, conosco tutti i prodotti che hanno essendo che faccio io la spesa, se invece voglio sapere cosa c'è in offerta basta sfogliare il volantino dentro l'app stessa, per il discorso dell'ordinazione a quelli che hanno aderito, quando invii la lista visualizzeranno il tuo numero di telefono, ti chiameranno prima di portarti la spesa, comunque nel mio comune siamo stati i primi al sud al fablab del coworking di Partanna a produrre migliaia di visiere con le stampanti 3d e le abbiamo regalato in tantissimi ospedali del sud e del bergamasco e in altre strutture del nord, abbiamo un sindaco che secondo me invidierebbero in tanti, specialmente per l'estate Partannese con 3 mesi l'anno di puro relax all'insegna dello street food, festa della birra, e tante altre sagre di cui la più famosa è la cipolla di Partanna, per non parlare dei cantanti nelle 4 notti bianche che si svolgono da noi, l'anno scorso con giusy ferreri, le vibrazioni, etc. questo il link del tg3:
 

Star-Dust

Expert
Licensed User
Longtime User
 
Top