Ciao a tutti, ho un codice di esempio che utilizzo per la stampa su stampanti termiche tramite cavo usb, funziona tutto bene fino a quando non riavvio il tablet, appena viene riavviato mi chiede dinuovo i permessi di usb, io vorrei che non mi chiedesse più i permessi usb essendo che deve funzionare in autotomatico e non mi deve sempre chiedere questi permessi per utilizzare l'usb.
questo il codice che uso e che funziona tranne per questo problema che mi chiede sempre i permessi ad ogni riavvio.
questo il codice che uso e che funziona tranne per questo problema che mi chiede sempre i permessi ad ogni riavvio.
B4X:
#Region Project Attributes
#ApplicationLabel: USB Serial Example
#VersionCode: 1
#VersionName:
#SupportedOrientations: unspecified
#CanInstallToExternalStorage: false
#BridgeLogger:True
#End Region
#Region Activity Attributes
#FullScreen: False
#IncludeTitle: True
#End Region
Sub Process_Globals
' Demo has been changed to support Ver_2.4 JeanLC
Dim usb1 As UsbSerial
Dim usb2 As UsbSerial
Dim astreams1 As AsyncStreams
Dim astreams2 As AsyncStreams
Dim connected As Boolean
End Sub
Sub Globals
Dim btnSend, btnOpen, btnClose As Button
Private btnOpen2 As Button
Private btnClose2 As Button
Private btnSend2 As Button
Private txtreport As EditText
End Sub
Sub Activity_Create(FirstTime As Boolean)
Activity.LoadLayout("1")
btnClose.Enabled = False
btnSend.Enabled = False
btnClose2.Enabled = False
btnSend2.Enabled = False
End Sub
Sub btnOpen_Click
If usb1.UsbPresent(1) = usb1.USB_NONE Then ' Ver_2.4
Msgbox("No device USB NONE","")
Return
End If
If (usb1.HasPermission(1)) Then ' Ver_2.4
Log(usb1.DeviceInfo(1))
'This is very important - ( VendorId, ProductId )
usb1.SetCustomDevice(usb1.DRIVER_SILABS, 0x456, 0x808)
Dim dev As Int
dev = usb1.Open(19200, 1) 'STMicroeletronics
If dev <> usb1.USB_NONE Then
Log("Connected successfully! 1")
btnOpen.Enabled = False
btnClose.Enabled = True
btnSend.Enabled = True
Log("CONNECTED SUCCESSFULLY!!!")
connected = True
astreams1.Initialize(usb1.GetInputStream, usb1.GetOutputStream, "astreams1")
'This is important
usb1.SetParameters(19200, usb1.DATABITS_8,usb1.STOPBITS_1, usb1.PARITY_EVEN)
'Here if you want codce that call print
Else
Log("Error opening USB port 1")
End If
Else
usb1.RequestPermission(1) ' Ver_2.4
End If
End Sub
Sub stampafattura
txtreport.Text= "SUCA !!"
If connected Then
If astreams1.IsInitialized = False Then Return
Dim SendMsg As String
Dim buffer() As Byte
buffer = txtreport.Text.GetBytes("UTF8")
SendMsg = Chr(27) & "!" &Chr(8+16+64) & "" & CRLF
astreams1.Write(SendMsg.GetBytes("UTF8"))
astreams1.Write(buffer)
txtreport.SelectAll
Else
Msgbox("Attenzione connetti la stampante","STAMPANTE NON CONNESSA")
End If
End Sub
Sub btnOpen2_Click
If usb2.UsbPresent(2) = usb2.USB_NONE Then ' Ver_2.4
Log("Msgbox - no device")
Msgbox("No USB device or accessory detected!", "Error")
Log("Msgbox - returned")
Return
End If
Log("Checking permission 2")
If (usb2.HasPermission(2)) Then ' Ver_2.4
Msgbox(usb2.DeviceInfo(2), "Device Information 2") ' Ver_2.4
Dim dev As Int
'dev = usb.Open(115200, 2) ' Ver_2.4
dev = usb2.Open(9600, 2) ' Ver_2.4
If dev <> usb2.USB_NONE Then
Log("Connected successfully! 2")
btnOpen2.Enabled = False
btnClose2.Enabled = True
btnSend2.Enabled = True
astreams2.Initialize(usb2.GetInputStream, usb2.GetOutputStream, "astreams2")
Else
Log("Error opening USB port 2")
End If
Else
usb2.RequestPermission(2) ' Ver_2.4
End If
End Sub
Sub astreams1_NewData (Buffer() As Byte)
' You must check for DeviceInfo or analyze Buffer data to know what is connected to the USB
' The order of the USB could change as you plug them and could change when changing the hub port they are connected to
Log("NewData 1")
Log(BytesToString(Buffer, 0, Buffer.Length, "UTF8"))
End Sub
Sub Astreams2_NewData (Buffer() As Byte)
' You must check for DeviceInfo or analyze Buffer data to know what is connected to the USB
' The order of the USB could change as you plug them and could change when changing the hub port they are connected to
Log("NewData 2")
Log(BytesToString(Buffer, 0, Buffer.Length, "UTF8"))
End Sub
Sub btnClose_Click
astreams1.Close
usb1.Close
btnOpen.Enabled = True
btnClose.Enabled = False
btnSend.Enabled = False
End Sub
Sub btnClose2_Click
astreams2.Close
usb2.Close
btnOpen2.Enabled = True
btnClose2.Enabled = False
btnSend2.Enabled = False
End Sub
Sub btnSend_Click
stampafattura
End Sub
Sub btnSend2_Click
astreams2.Write("abcde".GetBytes("UTF8"))
End Sub
Sub btnExit_Click
ExitApplication
End Sub
Sub aStreams1_Error
Log("Error: " & LastException)
astreams1.Close
End Sub
Sub astreams1_Terminated
Log("Terminated")
astreams1.Close
End Sub
Sub AStreams2_Error
Log("Error: " & LastException)
astreams2.Close
End Sub
Sub Astreams2_Terminated
Log("Terminated")
astreams2.Close
End Sub
Sub Activity_Resume
End Sub
Sub Activity_Pause (UserClosed As Boolean)
End Sub