Italian Pubblicazione app Play Store

CiccioU23

Member
Sapete se esiste un modo per pubblicare un'app gratuita e a pagamento?
Tipo 2 applicazioni differenti, ma come se fosse un'unica applicazione?
 
D

Deleted member 103

Guest
Sapete se esiste un modo per pubblicare un'app gratuita e a pagamento?
Tipo 2 applicazioni differenti, ma come se fosse un'unica applicazione?
Certo che si può fare, basta avere 2 Package-name differenti, il nome non ha importanza.
Esempio Package-name:
1) mia.app.lite
2) mia.app.pro

Esempio-Codice:
B4X:
  #If Lite
     #ApplicationLabel: App-Lite
   #End If

   #If Pro
     #ApplicationLabel: App-Pro
   #End If
lite-pro.JPG
 

CiccioU23

Member
Ok, grazie mille!
E per quanto riguarda le lingue, se volessi pubblicarla in Italiano e in Inglese, come dovrei fare? Scusate per tutte queste domande, forse stupide, ma sono nuovo..
 

CiccioU23

Member
Ecco, per modificare i contenuti della mia app, dovrei modificare qualche file o sarei costretto a inserire dei controlli all'interno del listato?
 

LucaMs

Expert
Licensed User
Longtime User
Purtroppo devi gestire tutta la faccenda "a mano".

Dovresti usare un metodo per conservare (intendo dire su "disco") tutti i testi della tua app nelle varie lingue che vuoi usare, file di testo oppure, meglio, un database.
Poi, creare un modulo per la traduzione che, oltre a leggere questi testi, metta a disposizione una funzione di traduzione, tipo:

B4X:
Public Sub Traduci(TestoLinguaDiProgettazione As String) As String
    ' qui devi mettere del codice per ricavare il testo nella lingua corrente del dispositivo,
    ' ovvero, se usi un db, eseguire una select con la where che raffronti
    ' TestoLinguaDiProgettazione e un codice per la lingua, che puoi ricavare dalla libreria AHLocale.Language.
    Return TestoLinguaDispositivo

Infine, in tuuuuuutto il codice della tua app:
B4X:
lblDescrizione.Text = modTrad.Traduci("Descrizione")

La funzione dovrà restituire il testo stesso passato come parametro (TestoLinguaDiProgettazione)
nel caso in cui nel tuo database non ci sia la traduzione per la lingua del dispositivo.
Quindi, se puoi, usa l'inglese come lingua di progettazione:
B4X:
lblDescrizione.Text = modTrad.Traduci("Description")

ma non è certo indispensabile.



Dopo tutta sta tiritera, puoi anche usare la libreria AHLocale stessa per gestire la cosa,
però io avevo trovato alcune cose che non mi piacevano (ovviamente non ricordo quali)
per cui uso il metodo spiegato sopra.
 
Last edited:

udg

Expert
Licensed User
Longtime User
Un'alternativa è costituita dalle AndroidResources.
Prova a dare un'occhiata qui.

udg
 

DavideV

Active Member
Licensed User
Longtime User
Un'alternativa è costituita dalle AndroidResources.
Prova a dare un'occhiata qui.

udg

Confermo, l'ho fatto in più app. Comunque è brigoso e ogni volta che devi modificare l'app aggiungendo anche un solo testo ti devi aggiornare a mano tutti gli xml...
Non mi pare ci sia altra strada.
Bye
 

MarcoRome

Expert
Licensed User
Longtime User
B4X:
Sub Process_Globals
'    These global variables will be declared once when the application starts.
'    These variables can be accessed from all modules.
    Dim locale As AHLocale
    Dim lingua As String
End Sub
 
Sub lg_riservato() As String
locale.Initialize
lingua = locale.DisplayLanguage
lingua = lingua.ToLowerCase
Log(lingua)
 
    If lingua = "italiano" Then
        Return "RISERVATO"
    Else If lingua = "english" Then
        Return   "RESERVED"
    Else If lingua = "русский" Then
        Return  "Неизвестный"
    Else If lingua = "español" Then
          Return "RESERVADO"
    Else If lingua = "français" Then
        Return "Réservé"
    Else If lingua = "português" Then
        Return "RESERVADO"
    Else If lingua = "deutsch" Then
        Return "RESERVIERT"
    Else
        Return  "RESERVED"
    End If
 
End Sub
....
 
Top