diff --git a/B4A/C_UpdateAvailable.bas b/B4A/C_UpdateAvailable.bas deleted file mode 100644 index 122de2b..0000000 --- a/B4A/C_UpdateAvailable.bas +++ /dev/null @@ -1,74 +0,0 @@ -B4A=true -Group=Default Group -ModulesStructureVersion=1 -Type=Class -Version=12.2 -@EndOfDesignText@ -Sub Class_Globals - Private Root As B4XView 'ignore - Private xui As XUI 'ignore -End Sub - -'You can add more parameters here. -Public Sub Initialize As Object - Return Me -End Sub - -'This event will be called once, before the page becomes visible. -Private Sub B4XPage_Created (Root1 As B4XView) - Root = Root1 - 'load the layout to Root - Root.Color = Colors.Transparent -End Sub - -Sub B4XPage_Appear - Try - Do While Not(CanRequestPackageInstalls) - MsgboxAsync($"Por favor permita que ${Application.PackageName} instale actualizaciones"$, "Instalar actualización") - Wait For Msgbox_Result(Result As Int) - Dim in As Intent - in.Initialize("android.settings.", "package:" & Application.PackageName) - StartActivity(in) - Loop - Catch - Log("updateAvailable() Error - " & LastException.Message) - End Try - If appUpdater.newApp.update Then - ofreceActualizacion - Else - sinActualizacion - End If -End Sub - -'//////////////////////////////////////////////////////////////////////////////////////////// -'//// Esta es una actividad usada por el servicio appUpdater para mostrar notificaciones -'//// cuando hay alguna actualizacion de apk. -'//////////////////////////////////////////////////////////////////////////////////////////// - - -public Sub CanRequestPackageInstalls As Boolean - ' // https://www.b4x.com/android/forum/threads/version-safe-apk-installation.87667/#content - Dim ctxt As JavaObject - ctxt.InitializeContext - Dim PackageManager As JavaObject = ctxt.RunMethod("getPackageManager", Null) - Return PackageManager.RunMethod("canRequestPackageInstalls", Null) -End Sub - -Sub ofreceActualizacion - If Msgbox2(appUpdater.newApp.newMsg,"Actualización disponible","Si","","No",Null) = DialogResponse.Positive Then 'ignore -' StartService(DownloadService) - CallSubDelayed(appUpdater, "download_newApk") -' ToastMessageShow("Descargando actualización", True) - End If - B4XPages.MainPage.ocultaProgreso - StartActivity(Main) -' Activity.Finish - B4XPages.ShowPage("Mainpage") -End Sub - -Sub sinActualizacion - Msgbox(appUpdater.newApp.okMsg, "Aplicación al corriente") 'ignore -' StartActivity(Main) - B4XPages.MainPage.ocultaProgreso - B4XPages.ShowPage("Mainpage") -End Sub \ No newline at end of file diff --git a/B4A/CameraExClass2.bas b/B4A/CameraExClass2.bas deleted file mode 100644 index bc84bf4..0000000 --- a/B4A/CameraExClass2.bas +++ /dev/null @@ -1,399 +0,0 @@ -B4A=true -Group=Default Group -ModulesStructureVersion=1 -Type=Class -Version=6 -@EndOfDesignText@ -'Class module -'version 1.30 -'See this page for the list of constants: -'http://developer.android.com/intl/fr/reference/android/hardware/Camera.Parameters.html -'Note that you should use the constant values instead of the names. -Sub Class_Globals - Private nativeCam As Object - Private cam As Camera - Private r As Reflector - Private target As Object - Private event As String - Public Front As Boolean - Private parameters As Object -End Sub - -Public Sub Initialize (Panel1 As Panel, FrontCamera As Boolean, TargetModule As Object, EventName As String) - target = TargetModule - event = EventName - Front = FrontCamera - Dim id As Int - id = FindCamera(Front).id - If id = -1 Then - Front = Not(Front) 'try different camera - id = FindCamera(Front).id - If id = -1 Then - ToastMessageShow("No camera found.", True) - Return - End If - End If - cam.Initialize2(Panel1, "camera", id) -End Sub - -Private Sub FindCamera (frontCamera As Boolean) As CameraInfoAndId - Dim ci As CameraInfoAndId - Dim cameraInfo As Object - Dim cameraValue As Int - Log("findCamera") - If frontCamera Then cameraValue = 1 Else cameraValue = 0 - cameraInfo = r.CreateObject("android.hardware.Camera$CameraInfo") - Dim numberOfCameras As Int = r.RunStaticMethod("android.hardware.Camera", "getNumberOfCameras", Null, Null) - Log(r.target) - Log(numberOfCameras) - For i = 0 To numberOfCameras - 1 - r.RunStaticMethod("android.hardware.Camera", "getCameraInfo", Array As Object(i, cameraInfo), _ - Array As String("java.lang.int", "android.hardware.Camera$CameraInfo")) - r.target = cameraInfo - Log("facing: " & r.GetField("facing") & ", " & cameraValue) - If r.GetField("facing") = cameraValue Then - ci.cameraInfo = r.target - ci.Id = i - Return ci - End If - Next - ci.id = -1 - Return ci -End Sub - -Private Sub SetDisplayOrientation - r.target = r.GetActivity - r.target = r.RunMethod("getWindowManager") - r.target = r.RunMethod("getDefaultDisplay") - r.target = r.RunMethod("getRotation") - Dim previewResult, result, degrees As Int = r.target * 90 - Dim ci As CameraInfoAndId = FindCamera(Front) - r.target = ci.CameraInfo - Dim orientation As Int = r.GetField("orientation") - If Front Then - previewResult = (orientation + degrees) Mod 360 - result = previewResult - previewResult = (360 - previewResult) Mod 360 - Else - previewResult = (orientation - degrees + 360) Mod 360 - result = previewResult - Log(previewResult) - End If - r.target = nativeCam - r.RunMethod2("setDisplayOrientation", previewResult, "java.lang.int") - r.target = parameters - r.RunMethod2("setRotation", result, "java.lang.int") - CommitParameters -End Sub - -Private Sub Camera_Ready (Success As Boolean) - If Success Then - r.target = cam - nativeCam = r.GetField("camera") - r.target = nativeCam - parameters = r.RunMethod("getParameters") - SetDisplayOrientation - Else - Log("success = false, " & LastException) - End If - CallSub2(target, event & "_ready", Success) -End Sub -'Uncomment this sub if you need to handle the Preview event -'Sub Camera_Preview (Data() As Byte) -' If SubExists(target, event & "_preview") Then -' CallSub2(target, event & "_preview", Data) -' End If -'End Sub - -Public Sub TakePicture - cam.TakePicture -End Sub - -Private Sub Camera_PictureTaken (Data() As Byte) - CallSub2(target, event & "_PictureTaken", Data) -End Sub - -Public Sub StartPreview - cam.StartPreview -End Sub - -Public Sub StopPreview - cam.StopPreview -End Sub - -Public Sub Release - cam.Release -End Sub - -'Saves the data received from PictureTaken event -Public Sub SavePictureToFile(Data() As Byte, Dir As String, FileName As String) - Dim out As OutputStream = File.OpenOutput(Dir, FileName, False) - out.WriteBytes(Data, 0, Data.Length) - out.Close -End Sub - -Public Sub SetParameter(Key As String, Value As String) - r.target = parameters - r.RunMethod3("set", Key, "java.lang.String", Value, "java.lang.String") -End Sub - -Public Sub GetParameter(Key As String) As String - r.target = parameters - Return r.RunMethod2("get", Key, "java.lang.String") -End Sub - -Public Sub CommitParameters - 'Try - r.target = nativeCam - r.RunMethod4("setParameters", Array As Object(parameters), Array As String("android.hardware.Camera$Parameters")) - 'Catch -' ToastMessageShow("Error setting parameters.", True) -' Log(LastException) -' End Try -End Sub - -Public Sub GetColorEffect As String - Return GetParameter("effect") -End Sub - -Public Sub SetColorEffect(Effect As String) - SetParameter("effect", Effect) -End Sub - -Public Sub GetSupportedPreviewSizes As CameraSize() - r.target = parameters - Dim list1 As List = r.RunMethod("getSupportedPreviewSizes") - Dim cs(list1.Size) As CameraSize - For i = 0 To list1.Size - 1 - r.target = list1.get(i) - cs(i).Width = r.GetField("width") - cs(i).Height = r.GetField("height") - Next - Return cs -End Sub - -Public Sub SetPreviewSize(Width As Int, Height As Int) - r.target = parameters - r.RunMethod3("setPreviewSize", Width, "java.lang.int", Height, "java.lang.int") -End Sub -Public Sub GetSupportedPicturesSizes As CameraSize() - r.target = parameters - Dim list1 As List = r.RunMethod("getSupportedPictureSizes") - Dim cs(list1.Size) As CameraSize - For i = 0 To list1.Size - 1 - r.target = list1.get(i) - cs(i).Width = r.GetField("width") - cs(i).Height = r.GetField("height") - Next - Return cs -End Sub - -Public Sub SetPictureSize(Width As Int, Height As Int) - r.target = parameters - r.RunMethod3("setPictureSize", Width, "java.lang.int", Height, "java.lang.int") -End Sub - -Public Sub SetJpegQuality(Quality As Int) - r.target = parameters - r.RunMethod2("setJpegQuality", Quality, "java.lang.int") -End Sub - -Public Sub SetFlashMode(Mode As String) - r.target = parameters - r.RunMethod2("setFlashMode", Mode, "java.lang.String") -End Sub - -Public Sub GetFlashMode As String - r.target = parameters - Return r.RunMethod("getFlashMode") -End Sub - -Public Sub GetSupportedFlashModes As List - r.target = parameters - Return r.RunMethod("getSupportedFlashModes") -End Sub - -Public Sub GetSupportedColorEffects As List - r.target = parameters - Return r.RunMethod("getSupportedColorEffects") -End Sub - -'Returns a list with the supported preview fps. Each item in the list is an array of two ints (minimum value and maximum value). -Public Sub GetSupportedPreviewFpsRange As List - r.target = parameters - Return r.RunMethod("getSupportedPreviewFpsRange") -End Sub -'Returns the current preview fps range. -'Range is a two elements array. The minimum value and maximum value will be stored in this array. -Public Sub GetPreviewFpsRange(Range() As Int) - r.target = parameters - r.RunMethod4("getPreviewFpsRange", Array As Object(Range), Array As String("[I")) -End Sub - -Public Sub SetPreviewFpsRange(MinValue As Int, MaxValue As Int) - r.target = parameters - r.RunMethod4("setPreviewFpsRange", Array As Object(MinValue, MaxValue), _ - Array As String("java.lang.int", "java.lang.int")) -End Sub - -Public Sub GetPreviewSize As CameraSize - r.target = parameters - r.target = r.RunMethod("getPreviewSize") - Dim cs As CameraSize - cs.Width = r.GetField("width") - cs.Height = r.GetField("height") - Return cs -End Sub - -Public Sub GetPictureSize As CameraSize - r.target = parameters - r.target = r.RunMethod("getPictureSize") - Dim cs As CameraSize - cs.Width = r.GetField("width") - cs.Height = r.GetField("height") - Return cs -End Sub - -'Converts a preview image formatted in YUV format to JPEG. -'Note that you should not save every preview image as it will slow down the whole process. -Public Sub PreviewImageToJpeg(data() As Byte, quality As Int) As Byte() - Dim size, previewFormat As Object - r.target = parameters - size = r.RunMethod("getPreviewSize") - previewFormat = r.RunMethod("getPreviewFormat") - r.target = size - Dim width = r.GetField("width"), height = r.GetField("height") As Int - Dim yuvImage As Object = r.CreateObject2("android.graphics.YuvImage", _ - Array As Object(data, previewFormat, width, height, Null), _ - Array As String("[B", "java.lang.int", "java.lang.int", "java.lang.int", "[I")) - r.target = yuvImage - Dim rect1 As Rect - rect1.Initialize(0, 0, r.RunMethod("getWidth"), r.RunMethod("getHeight")) - Dim out As OutputStream - out.InitializeToBytesArray(100) - r.RunMethod4("compressToJpeg", Array As Object(rect1, quality, out), _ - Array As String("android.graphics.Rect", "java.lang.int", "java.io.OutputStream")) - Return out.ToBytesArray -End Sub - -Public Sub GetSupportedFocusModes As List - r.target = parameters - Return r.RunMethod("getSupportedFocusModes") -End Sub - -Public Sub SetContinuousAutoFocus - Dim modes As List = GetSupportedFocusModes - If modes.IndexOf("continuous-picture") > -1 Then - SetFocusMode("continuous-picture") - Else If modes.IndexOf("continuous-video") > -1 Then - SetFocusMode("continuous-video") - Else - Log("Continuous focus mode is not available") - End If -End Sub - -Public Sub SetFocusMode(Mode As String) - r.target = parameters - r.RunMethod2("setFocusMode", Mode, "java.lang.String") -End Sub - -Public Sub GetFocusDistances As Float() - Dim F(3) As Float - r.target = parameters - r.RunMethod4("getFocusDistances", Array As Object(F), Array As String("[F")) - Return F -End Sub - -Public Sub GetSupportedPictureFormats As List - r.target = parameters - Return r.RunMethod("getSupportedPictureFormats") -End Sub -'This method should only be called if you need to immediately release the camera. -'For example if you need to start another application that depends on the camera. -Public Sub CloseNow - cam.Release - r.target = cam - r.RunMethod2("releaseCameras", True, "java.lang.boolean") -End Sub -'Calls AutoFocus and then takes the picture if focus was successfull. -Public Sub FocusAndTakePicture - cam.AutoFocus -End Sub - - -Private Sub Camera_FocusDone (Success As Boolean) - If Success Then - TakePicture - Else - Log("AutoFocus error.") - End If -End Sub - -Public Sub IsZoomSupported As Boolean - r.target = parameters - Return r.RunMethod("isZoomSupported") -End Sub - -Public Sub GetMaxZoom As Int - r.target = parameters - Return r.RunMethod("getMaxZoom") -End Sub - -Public Sub getZoom() As Int - r.target = parameters - Return r.RunMethod("getZoom") -End Sub - -Public Sub setZoom(ZoomValue As Int) - r.target = parameters - r.RunMethod2("setZoom", ZoomValue, "java.lang.int") -End Sub - -Public Sub getExposureCompensation As Int - r.target = parameters - Return r.RunMethod("getExposureCompensation") -End Sub - -Public Sub setExposureCompensation(v As Int) - r.target = parameters - r.RunMethod2("setExposureCompensation", v, "java.lang.int") -End Sub - -Public Sub getMinExposureCompensation As Int - r.target = parameters - Return r.RunMethod("getMinExposureCompensation") -End Sub - -Public Sub getMaxExposureCompensation As Int - r.target = parameters - Return r.RunMethod("getMaxExposureCompensation") -End Sub - -Public Sub SetFaceDetectionListener - Dim jo As JavaObject = nativeCam - Dim e As Object = jo.CreateEvent("android.hardware.Camera.FaceDetectionListener", "FaceDetection", Null) - jo.RunMethod("setFaceDetectionListener", Array(e)) -End Sub - -Private Sub FaceDetection_Event (MethodName As String, Args() As Object) As Object - Dim faces() As Object = Args(0) - For Each f As Object In faces - Dim jo As JavaObject = f - Dim faceRect As Rect = jo.GetField("rect") - Log(faceRect) - Next - Return Null -End Sub - - - -Public Sub StartFaceDetection - Dim jo As JavaObject = nativeCam - jo.RunMethod("startFaceDetection", Null) -End Sub - -Public Sub StopFaceDetection - Dim jo As JavaObject = nativeCam - jo.RunMethod("stopFaceDetection", Null) -End Sub - diff --git a/B4A/DBRequestManager.bas b/B4A/DBRequestManager.bas deleted file mode 100644 index 31298ba..0000000 --- a/B4A/DBRequestManager.bas +++ /dev/null @@ -1,272 +0,0 @@ -B4A=true -Group=Default Group -ModulesStructureVersion=1 -Type=Class -Version=6.8 -@EndOfDesignText@ -''Class module - -'' Requiere accesRandom File y requiere compressStrings, byte converter y okhhtputuils2 -Sub Class_Globals - Private mTarget As Object - Type DBResult (Tag As Object, Columns As Map, Rows As List) - Type DBCommand (Name As String, Parameters() As Object) - Private link As String - Private bc As ByteConverter - Private T_NULL = 0, T_STRING = 1, T_SHORT = 2, T_INT = 3, T_LONG = 4, T_FLOAT = 5 _ - ,T_DOUBLE = 6, T_BOOLEAN = 7, T_BLOB = 8 As Byte - Private VERSION As Float = 0.9 - Private tempArray(1) As Object - Dim jobTagAnterior As String = "" 'Mod por CHV - 211109 -End Sub - -'Target - The module that handles JobDone (usually Me). -'ConnectorLink - URL of the Java server. -Public Sub Initialize (Target As Object, ConnectorLink As String) - mTarget = Target - link = ConnectorLink -End Sub - -'Sends a query request. -'Command - Query name and parameters. -'Limit - Maximum rows to return or 0 for no limit. -'Tag - An object that will be returned in the result. -Public Sub ExecuteQuery(Command As DBCommand, Limit As Int, Tag As Object) - Dim j As HttpJob - Dim ms As OutputStream - Dim out2 As OutputStream = StartJob(j,ms, Tag) - - WriteObject(Command.Name, out2) - WriteInt(Limit, out2) - WriteList(Command.Parameters, out2) - out2.Close - j.PostBytes(link & "?method=query", ms.ToBytesArray) -End Sub - -'Executes a batch of (non-select) commands. -'ListOfCommands - List of the commands that will be executes. -'Tag - An object that will be returned in the result. -Public Sub ExecuteBatch(ListOfCommands As List, Tag As Object) - Dim j As HttpJob - Dim ms As OutputStream - Dim out2 As OutputStream = StartJob(j,ms, Tag) - WriteInt(ListOfCommands.Size, out2) - For Each Command As DBCommand In ListOfCommands - WriteObject(Command.Name, out2) - WriteList(Command.Parameters, out2) - Next - out2.Close - j.PostBytes(link & "?method=batch", ms.ToBytesArray) -End Sub - -'Similar to ExecuteBatch. Sends a single command. -Public Sub ExecuteCommand(Command As DBCommand, Tag As Object) - ExecuteBatch(Array As DBCommand(Command), Tag) -End Sub - -Private Sub StartJob(j As HttpJob, MemoryStream As OutputStream, Tag As Object) As OutputStream - j.Initialize("DBRequest", mTarget) - j.Tag = Tag - MemoryStream.InitializeToBytesArray(0) - Dim compress As CompressedStreams - Dim out As OutputStream = compress.WrapOutputStream(MemoryStream, "gzip") - WriteObject(VERSION, out) - Return out -End Sub - -Private Sub WriteList(Parameters As List, out As OutputStream) - Dim data() As Byte - If Parameters = Null Or Parameters.IsInitialized = False Then - Dim Parameters As List - Parameters.Initialize - End If - data = bc.IntsToBytes(Array As Int(Parameters.Size)) - out.WriteBytes(data, 0, data.Length) - For Each o As Object In Parameters - WriteObject(o, out) - Next -End Sub - -Private Sub WriteObject(o As Object, out As OutputStream) - Dim data() As Byte - tempArray(0) = o - If tempArray(0) = Null Then - out.WriteBytes(Array As Byte(T_NULL), 0, 1) - Else If tempArray(0) Is Short Then - out.WriteBytes(Array As Byte(T_SHORT), 0, 1) - data = bc.ShortsToBytes(Array As Short(o)) - Else If tempArray(0) Is Int Then - out.WriteBytes(Array As Byte(T_INT), 0, 1) - data = bc.IntsToBytes(Array As Int(o)) - Else If tempArray(0) Is Float Then - out.WriteBytes(Array As Byte(T_FLOAT), 0, 1) - data = bc.FloatsToBytes(Array As Float(o)) - Else If tempArray(0) Is Double Then - out.WriteBytes(Array As Byte(T_DOUBLE), 0, 1) - data = bc.DoublesToBytes(Array As Double(o)) - Else If tempArray(0) Is Long Then - out.WriteBytes(Array As Byte(T_LONG), 0, 1) - data = bc.LongsToBytes(Array As Long(o)) - Else If tempArray(0) Is Boolean Then - out.WriteBytes(Array As Byte(T_BOOLEAN), 0, 1) - Dim b As Boolean = 0 - Dim data(1) As Byte - If b Then data(0) = 1 Else data(0) = 0 - Else If GetType(tempArray(0)) = "[B" Then - data = o - out.WriteBytes(Array As Byte(T_BLOB), 0, 1) - WriteInt(data.Length, out) - Else 'If o Is String Then (treat all other values as string) - out.WriteBytes(Array As Byte(T_STRING), 0, 1) - data = bc.StringToBytes(o, "UTF8") - WriteInt(data.Length, out) - End If - If data.Length > 0 Then out.WriteBytes(data, 0, data.Length) -End Sub - -Private Sub ReadObject(In As InputStream) As Object - Dim data(1) As Byte - In.ReadBytes(data, 0, 1) - Select data(0) - Case T_NULL - Return Null - Case T_SHORT - Dim data(2) As Byte - Return bc.ShortsFromBytes(ReadBytesFully(In, data, data.Length))(0) - Case T_INT - Dim data(4) As Byte - Return bc.IntsFromBytes(ReadBytesFully(In, data, data.Length))(0) - Case T_LONG - Dim data(8) As Byte - Return bc.LongsFromBytes(ReadBytesFully(In, data, data.Length))(0) - Case T_FLOAT - Dim data(4) As Byte - Return bc.FloatsFromBytes(ReadBytesFully(In, data, data.Length))(0) - Case T_DOUBLE - Dim data(8) As Byte - Return bc.DoublesFromBytes(ReadBytesFully(In, data, data.Length))(0) - Case T_BOOLEAN - Dim b As Byte = ReadByte(In) - Return b = 1 - Case T_BLOB - Dim len As Int = ReadInt(In) - Dim data(len) As Byte - Return ReadBytesFully(In, data, data.Length) - Case Else - Dim len As Int = ReadInt(In) - Dim data(len) As Byte - ReadBytesFully(In, data, data.Length) - Return BytesToString(data, 0, data.Length, "UTF8") - End Select -End Sub - -Private Sub ReadBytesFully(In As InputStream, Data() As Byte, Len As Int) As Byte() - Dim count = 0, read As Int - Do While count < Len And read > -1 - read = In.ReadBytes(Data, count, Len - count) - count = count + read - Loop - Return Data -End Sub - -Private Sub WriteInt(i As Int, out As OutputStream) - Dim data() As Byte - data = bc.IntsToBytes(Array As Int(i)) - out.WriteBytes(data, 0, data.Length) -End Sub - -Private Sub ReadInt(In As InputStream) As Int - Dim data(4) As Byte - Return bc.IntsFromBytes(ReadBytesFully(In, data, data.Length))(0) -End Sub - -Private Sub ReadByte(In As InputStream) As Byte - Dim data(1) As Byte - In.ReadBytes(data, 0, 1) - Return data(0) -End Sub - -'Handles the Job result and returns a DBResult. -Public Sub HandleJob(Job As HttpJob) As DBResult - Dim start As Long = DateTime.Now 'ignore - Dim In As InputStream = Job.GetInputStream - Dim cs As CompressedStreams - In = cs.WrapInputStream(In, "gzip") - Dim serverVersion As Float = ReadObject(In) 'ignore - Dim method As String = ReadObject(In) - Dim table As DBResult - table.Initialize - table.Columns.Initialize - table.rows.Initialize - table.Tag = Job.Tag - If jobTagAnterior <> Job.Tag Then LogColor("HandleJob: '"&Job.Tag&"'", Colors.Blue) 'Mod por CHV - 211109 - jobTagAnterior = Job.Tag 'Mod por CHV - 211109 - If method = "query" Then - Dim numberOfColumns As Int = ReadInt(In) - For i = 0 To numberOfColumns - 1 - table.Columns.Put(ReadObject(In), i) - Next - Do While ReadByte(In) = 1 - Dim rowObjects(numberOfColumns) As Object - table.rows.Add(rowObjects) - For col = 0 To numberOfColumns - 1 - Dim o As Object = ReadObject(In) - rowObjects(col) = o - Next - Loop - Else If method = "batch" Then - table.Columns.Put("AffectedRows", 0) - Dim rows As Int = ReadInt(In) - For i = 0 To rows - 1 - table.rows.Add(Array As Object(ReadInt(In))) - Next - End If - In.Close -' Log("HandleJob: " & (DateTime.Now - start))'Comentado por CHV - 211112 - Return table -End Sub -'Reads a file and returns the file as a bytes array. -Public Sub FileToBytes(Dir As String, FileName As String) As Byte() - Dim out As OutputStream - out.InitializeToBytesArray(0) - Dim In As InputStream = File.OpenInput(Dir, FileName) - File.Copy2(In, out) - out.Close - Return out.ToBytesArray -End Sub -'Converts an image to a bytes array (for BLOB fields). -Public Sub ImageToBytes(Image As Bitmap) As Byte() - Dim out As OutputStream - out.InitializeToBytesArray(0) - Image.WriteToStream(out, 100, "JPEG") - out.Close - Return out.ToBytesArray -End Sub -'Converts a bytes array to an image (for BLOB fields). -Public Sub BytesToImage(bytes() As Byte) As Bitmap - Dim In As InputStream - In.InitializeFromBytesArray(bytes, 0, bytes.Length) - Dim bmp As Bitmap - bmp.Initialize2(In) - Return bmp -End Sub -'Prints the table to the logs. -Public Sub PrintTable(Table As DBResult) - Log("Tag: " & Table.Tag & ", Columns: " & Table.Columns.Size & ", Rows: " & Table.Rows.Size) - Dim sb As StringBuilder - sb.Initialize - For Each col In Table.Columns.Keys - sb.Append(col).Append(TAB) - Next - Log(sb.ToString) - For Each row() As Object In Table.Rows - Dim sb As StringBuilder - sb.Initialize - For Each record As Object In row - sb.Append(record).Append(TAB) - Next - ToastMessageShow(sb.ToString, True) - Next -End Sub - - \ No newline at end of file diff --git a/B4A/Files/alert2.png b/B4A/Files/alert2.png deleted file mode 100644 index 44d3b7e..0000000 Binary files a/B4A/Files/alert2.png and /dev/null differ diff --git a/B4A/Files/candado.png b/B4A/Files/candado.png deleted file mode 100644 index 8122600..0000000 Binary files a/B4A/Files/candado.png and /dev/null differ diff --git a/B4A/Files/cuenta.bal b/B4A/Files/cuenta.bal deleted file mode 100644 index a5c96d9..0000000 Binary files a/B4A/Files/cuenta.bal and /dev/null differ diff --git a/B4A/Files/datos-varios.png b/B4A/Files/datos-varios.png deleted file mode 100644 index 058934b..0000000 Binary files a/B4A/Files/datos-varios.png and /dev/null differ diff --git a/B4A/Files/datos.bal b/B4A/Files/datos.bal deleted file mode 100644 index 08df6e3..0000000 Binary files a/B4A/Files/datos.bal and /dev/null differ diff --git a/B4A/Files/engranes.png b/B4A/Files/engranes.png deleted file mode 100644 index 868a879..0000000 Binary files a/B4A/Files/engranes.png and /dev/null differ diff --git a/B4A/Files/financiero.bal b/B4A/Files/financiero.bal deleted file mode 100644 index 7c7a45d..0000000 Binary files a/B4A/Files/financiero.bal and /dev/null differ diff --git a/B4A/Files/fondo-vino.jpg b/B4A/Files/fondo-vino.jpg deleted file mode 100644 index 8549138..0000000 Binary files a/B4A/Files/fondo-vino.jpg and /dev/null differ diff --git a/B4A/Files/fondo.png b/B4A/Files/fondo.png deleted file mode 100644 index ee96402..0000000 Binary files a/B4A/Files/fondo.png and /dev/null differ diff --git a/B4A/Files/fondoblanco.png b/B4A/Files/fondoblanco.png deleted file mode 100644 index 2e7ce3c..0000000 Binary files a/B4A/Files/fondoblanco.png and /dev/null differ diff --git a/B4A/Files/gestionadas.bal b/B4A/Files/gestionadas.bal deleted file mode 100644 index e699fa7..0000000 Binary files a/B4A/Files/gestionadas.bal and /dev/null differ diff --git a/B4A/Files/icon_22-[convertido].png b/B4A/Files/icon_22-[convertido].png deleted file mode 100644 index bd4885f..0000000 Binary files a/B4A/Files/icon_22-[convertido].png and /dev/null differ diff --git a/B4A/Files/imglogo_cl_ar.png b/B4A/Files/imglogo_cl_ar.png deleted file mode 100644 index f018768..0000000 Binary files a/B4A/Files/imglogo_cl_ar.png and /dev/null differ diff --git a/B4A/Files/kmt.db b/B4A/Files/kmt.db deleted file mode 100644 index 2cbbb8e..0000000 Binary files a/B4A/Files/kmt.db and /dev/null differ diff --git a/B4A/Files/lupa.png b/B4A/Files/lupa.png deleted file mode 100644 index 4f586bf..0000000 Binary files a/B4A/Files/lupa.png and /dev/null differ diff --git a/B4A/Files/principal.bal b/B4A/Files/principal.bal deleted file mode 100644 index ad91e69..0000000 Binary files a/B4A/Files/principal.bal and /dev/null differ diff --git a/B4A/Files/t_a.jpg b/B4A/Files/t_a.jpg deleted file mode 100644 index 8a89391..0000000 Binary files a/B4A/Files/t_a.jpg and /dev/null differ diff --git a/B4A/Files/usuario.png b/B4A/Files/usuario.png deleted file mode 100644 index 2935f41..0000000 Binary files a/B4A/Files/usuario.png and /dev/null differ diff --git a/B4A/Tracker.bas b/B4A/Tracker.bas deleted file mode 100644 index 224dd67..0000000 --- a/B4A/Tracker.bas +++ /dev/null @@ -1,218 +0,0 @@ -B4A=true -Group=Default Group -ModulesStructureVersion=1 -Type=Service -Version=11 -@EndOfDesignText@ -#Region Service Attributes - #StartAtBoot: True -#End Region -'****************************************************************************** -'No olvidar agregar esta linea al editor de manifiesto: -' SetServiceAttribute(Tracker, android:foregroundServiceType, "location") -' -'En Starter agregar estas lineas en Process_Globals -' Public rp As RuntimePermissions -' Public FLP As FusedLocationProvider -' Private flpStarted As Boolean -' -'En Main agregar estas lineas a Activity_Resume -' Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_ACCESS_FINE_LOCATION) -' Wait For Activity_PermissionResult (Permission As String, Result As Boolean) -' If Result Then -' StartService(Tracker) -' Log("Start Tracker") -' Else -' ToastMessageShow("No permission", True) -' End If -' -'Se necesitan las librerias FusedLocationProvider, GPS, Phone y RunTimePermissions -' -'Y en Main agregar estas dos lineas: -'#AdditionalJar: com.android.support:support-v4 -'#AdditionalJar: com.google.android.gms:play-services-location - -Sub Process_Globals -' Private nid As Int = 1 - Private Tracking As Boolean - Private lock As PhoneWakeState - 'Para FusedLocationProvider (2 lineas) - Public FLP As FusedLocationProvider - Dim actualLR As LocationRequest - Private flpStarted As Boolean -' Dim locRequest As String - Dim UUGCoords As Location 'Ultima Ubicacion Guardada -' Dim trackerActividad, pushServiceActividad As String - Dim logger As Boolean = True -End Sub - -Sub Service_Create - Service.AutomaticForegroundMode = Service.AUTOMATIC_FOREGROUND_NEVER 'we are handling it ourselves - UUGCoords.Initialize - logger = False - 'Para FusedLocationProvider (2 lineas) - FLP.Initialize("flp") - FLP.Connect - lock.PartialLock - StartFLP -End Sub - -Sub flp_ConnectionSuccess -' If logger Then Log("Connected to location provider") - 'FLP.GetLastKnownLocation -End Sub - -Sub flp_ConnectionFailed(ConnectionResult1 As Int) - If logger Then Log("Failed to connect to location provider") -End Sub - -Sub flp_ConnectionSuspended(ConnectionResult1 As Int) - If logger Then Log("FLP conection suspended") - StartFLP -End Sub - -Sub Service_Start (StartingIntent As Intent) - LogColor("Iniciando Tracker ...", Colors.Green) - Service.StopAutomaticForeground -' Service.StartForeground(51042, Subs.notiLowReturn("Kelloggs", "Activo", 51042)) - StartServiceAt(Me, DateTime.Now + 10 * DateTime.TicksPerMinute, True) - Track -End Sub - -Public Sub Track - Log("Inicia Track - Tracking : "&Tracking) - If Tracking Then -' Log(actualLR.GetSmallestDisplacement) - Return 'Si ya estamos "rastreando" no hacemos nada (return) - End If - If Starter.rp.Check(Starter.rp.PERMISSION_ACCESS_FINE_LOCATION) = False Then - If logger Then Log("Sin permisos de ublicación.") - Return - End If - StartFLP 'Iniciamos FusedLocationProvider - Tracking = True -End Sub - -Public Sub StartFLP - Log("StartFLP - flpStarted="&flpStarted) - Do While FLP.IsConnected = False - Sleep(500) - If logger Then Log("sleeping") - Loop -' If flpStarted = False Then -' If logger Then Log("RequestLocationUpdates") -' FLP.RequestLocationUpdates(CreateLocationRequest) 'Buscamos ubicacion - If logger Then LogColor("Buscamos ubicacion (movimientoMinimo = "&actualLR.GetSmallestDisplacement&")", Colors.Magenta) -' If logger Then Log(actualLR.GetSmallestDisplacement) - flpStarted = True -' End If -End Sub - -Public Sub StartFLP2 - If logger Then Log("StartFLP2 - flpStarted="&flpStarted) - Do While FLP.IsConnected = False - Sleep(500) - If logger Then Log("sleeping") - Loop - dameUltimaUbicacionConocida 'Regresamos ultima ubicacion conocida - FLP.RequestLocationUpdates(CreateLocationRequest2) 'Buscamos ubicacion 2 peticiones - If logger Then LogColor("Buscamos ubicacion (movimientoMinimo = "&actualLR.GetSmallestDisplacement&")", Colors.Magenta) -' If logger Then Log(actualLR.GetSmallestDisplacement) -End Sub - -Private Sub CreateLocationRequest As LocationRequest - If logger Then Log("CreateLocationRequest") - Dim lr As LocationRequest - lr.Initialize - lr.SetInterval(10000) 'Intervalo deseado para actualizaciones de ubicacion - lr.SetFastestInterval(lr.GetInterval / 2) 'Intervalo minimo para actualizaciones de ubicacion - lr.SetSmallestDisplacement(75) 'Solo registra cambio de ubicacion si es mayor a XX mts - lr.SetPriority(lr.Priority.PRIORITY_HIGH_ACCURACY) - actualLR=lr - Return lr -End Sub - -Private Sub CreateLocationRequest2 As LocationRequest - If logger Then Log("Iniciamos CreateLocationRequest2") - Dim lr As LocationRequest - lr.Initialize - lr.SetInterval(2000) 'Intervalo deseado para actualizaciones de ubicacion - lr.SetFastestInterval(lr.GetInterval / 2) 'Intervalo minimo para actualizaciones de ubicacion - lr.setNumUpdates(2) 'Solicitamos solo 2 actualizaciones con estos parametros - lr.SetSmallestDisplacement(1) 'Solo registra cambio de ubicacion si es mayor a XX mts - lr.SetPriority(lr.Priority.PRIORITY_HIGH_ACCURACY) - actualLR=lr - Return lr -End Sub - -Sub dameUltimaUbicacionConocida - If FLP.GetLastKnownLocation.IsInitialized Then 'Mandamos ultima ubicacion guardada -' If logger Then LogColor($"Mandamos UUC "${Subs.fechaKMT(FLP.GetLastKnownLocation.Time)}|Acc:$0.2{FLP.GetLastKnownLocation.Accuracy}|$0.8{FLP.GetLastKnownLocation.Latitude}|$0.8{FLP.GetLastKnownLocation.Longitude}|Spd:$0.2{FLP.GetLastKnownLocation.Speed}|"$, Colors.RGB(255,112,35)) -' Dim coords As String = FLP.GetLastKnownLocation.Latitude&","&FLP.GetLastKnownLocation.Longitude&","&formatoFecha(FLP.GetLastKnownLocation.Time) -' CallSubDelayed2(FirebaseMessaging,"mandamosLoc",coords) -' Subs.mandamosLoc(coords) - End If -End Sub - -Public Sub StopFLP - 'Log("StopFLP") - If flpStarted Then - FLP.RemoveLocationUpdates 'Eliminamos todas las solicitudes de ubicacion - flpStarted = False - End If -End Sub - -Sub flp_LocationChanged (Location1 As Location) - Starter.latitud = Location1.Latitude - Starter.longitud = Location1.Longitude - LogColor($"Location changed lat=${Location1.Latitude}, lon=${Location1.Longitude}, Acc=${Location1.Accuracy}, SD=$1.0{actualLR.GetSmallestDisplacement}"$, Colors.green) - UUGCoords = Location1 -' If logger Then Log("SmallestDisplacement="&actualLR.GetSmallestDisplacement) -' CallSub2(Starter, "GPS_LocationChanged", Location1) -' CallSub2(gestion, "GPS_LocationChanged", Location1) -' Starter.ubicacionActual.Latitude = Starter.lat_gps -' Starter.ubicacionActual.Longitude = Starter.lon_gps -' Starter.ubicacionActual.Accuracy = Location1.Accuracy - - '/////// para la ultima ubicacion FL - Dim sDate,sTime As String - DateTime.DateFormat = "MM/dd/yyyy" - sDate=DateTime.Date(DateTime.Now) - sTime=DateTime.Time(DateTime.Now) -' If Starter.lat_gps <> 0 And Starter.lat_gps <> Null Then -' Try -' Starter.skmt.ExecNonQuery("DELETE FROM HIST_GPS") -' Starter.skmt.ExecNonQuery2("INSERT INTO HIST_GPS (HGDATE, HGLAT, HGLON) VALUES(?,?,?) ", Array As Object (sDate & sTime, Starter.lat_gps, Starter.lon_gps)) -' Catch -' If logger Then Log("Error al borrar o insertar nuevas coordendas en HIST_GPS") -' End Try -' End If - - -End Sub - -Sub CreateNotification (Body As String) As Notification 'ignore - Dim notification As Notification - notification.Initialize2(notification.IMPORTANCE_LOW) - notification.Icon = "icon" - notification.SetInfo("This", Body, Main) - Return notification -End Sub - -Sub Service_Destroy - If Tracking Then - StopFLP - End If - Tracking = False - lock.ReleasePartialLock -End Sub - -Sub formatoFecha(fecha As String) As String 'ignore 'Convierte una fecha al formato yyMMddHHmmss -' Log(fecha) - Dim OrigFormat As String = DateTime.DateFormat 'save orig date format - DateTime.DateFormat="yyMMddHHmmss" - Dim lastUpdate As String=DateTime.Date(fecha) - DateTime.DateFormat=OrigFormat 'return to orig date format -' Log(lastUpdate) - Return lastUpdate -End Sub \ No newline at end of file diff --git a/B4A/appUpdater.bas b/B4A/appUpdater.bas deleted file mode 100644 index 1a63778..0000000 --- a/B4A/appUpdater.bas +++ /dev/null @@ -1,282 +0,0 @@ -B4A=true -Group=Default Group -ModulesStructureVersion=1 -Type=Service -Version=10.2 -@EndOfDesignText@ -#Region Service Attributes - #StartAtBoot: False -#End Region - -'//////////////////////////////////////////////////////////////////////////////////////////// -'//// Servicio para revisar si hay actualizacion de aplicación, usa la -'//// actividad "updateAvailable" para mostrar mensajes. -'//// -'//// https://www.b4x.com/android/forum/threads/update-your-app-without-using-the-gplaystore.109720/#content -'//// -'//// En la actividad del la cual se va a llamar la revision de actualizacion -'//// hay que agregar los siguientes Subs: -'//// -' Sub boton_que_llama_revision_Click -' StartService(appUpdater) -' End Sub -' -' appUpdater - Mostramos el anuncio de que se esta descargando el nuevo apk -' Sub muestraProgreso -' ProgressDialogShow("Descargando actualización") -' End Sub -' -' appUpdater - Ocultamos el anuncio de que se esta descargando el nuevo apk -' Sub ocultaProgreso -' ProgressDialogHide -' End Sub -'//// -'//// Requiere las siguientes librerias: -'//// -'//// * appUpdating -'//// * JavaObject -'//// * OkHttpUtils2 -'//// * Phone -'//// * RuntimePermissions -'//// -'//// Requiere las siguientes lineas en el manifiesto: -'//// -' AddManifestText( -' ) -' AddApplicationText( -' -' -' -' ) -' CreateResource(xml, provider_paths, -' -' -' -' -' -' ) -' AddPermission(android.permission.REQUEST_INSTALL_PACKAGES) -' AddPermission(android.permission.INTERNET) -' AddPermission(android.permission.INSTALL_PACKAGES) -' AddPermission(android.permission.READ_EXTERNAL_STORAGE) -' AddPermission(android.permission.WRITE_EXTERNAL_STORAGE) -' AddPermission(android.permission.READ_PHONE_STATE) -' AddPermission(android.permission.WAKE_LOCK) -'//// -'//////////////////////////////////////////////////////////////////////////////////////////// - -Sub Process_Globals - 'These global variables will be declared once when the application starts. - 'These variables can be accessed from all modules. - - 'Aqui va la liga al archivo .ver en el servidor que contiene la información de la aplicacion - Public lnk As String = "https://keymon.lat/movil/Arlete/ARE.ver" - - '/// En el servidor se necesita un archivo de texto (.ver) que tenga los siguientes - '/// datos separados por un tabulador - '/// contents of ver file, each field is seperated by a tab - ' Field 0 = 2.226.19.09.19.01a <-- Esta es la version de la aplicación disponible - ' Field 1 = A new version of the MyAPP is available, Download and update now ? <-- Mensaje para cuando hay actualización - ' Field 2 = MyApp is up to date <--- Mensaje para cuando no hay actualización - ' Field 3 = http://www.mydomain.com/Public/myapp.apk <--- Liga al apk de la actualización - - Public nNewApp As Notification - Public nNewAppnID As Int = 16 - 'Para Download - Dim nativeMe As JavaObject - Dim n2 As Notification - Dim n2ID As Int = 16 - 'Para fileProvider - Public SharedFolder As String - Public UseFileProvider As Boolean - Private rp As RuntimePermissions - - Type mNewVersion(update As Boolean, nonewAPP As Boolean, notifyUser As Boolean, _ - version As String, newMsg As String, okMsg As String, appLink As String) - Public newApp As mNewVersion -End Sub - -Sub Service_Create - Log("appUpdater(), Service_Create") - newApp.Initialize - Service.AutomaticForegroundMode = Service.AUTOMATIC_FOREGROUND_NEVER - n2.Initialize - nativeMe.InitializeContext -End Sub - -Sub Service_Start (StartingIntent As Intent) - Log("appUpdater(), Service_Start") -' CallSubDelayed2(Main, "muestraProgreso", "Buscando actualización") - B4XPages.MainPage.muestraProgreso("Buscando actualización") - Log("Buscando actualización") - fileProvider_init - Wait For (Download(Me, lnk)) JobDone (j As HttpJob) - If j.Success Then - Try - Dim app() As String = Regex.Split(Chr(9),j.GetString) - ' // Set the data - newApp.appLink = app(3) 'Liga a nueva app - newApp.newMsg = app(1) 'Texto de que hay actualizacion - newApp.okMsg = app(2) 'Texto de app al corriente - newApp.version = app(0) 'Version actual - - Log($"Application.VersionName=${Application.VersionName}, newApp=${newApp}"$) - - ' // App version check - If newApp.version = Application.VersionName Then - newApp.update = False - Log("No new app") - B4XPages.ShowPage("updateAvailable") - 'Se puede mandar tambien una notificacion avisando que NO hay actualizaciones - CreateNotification2("Aplicacion al corriente","No hay actualizaciones disponibles","ic_file_download_white_24dp",Main,True,True,nNewApp,nNewAppnID) - End If - If newApp.version <> Application.VersionName Then - newApp.update = True - Log("New app true") - B4XPages.ShowPage("updateAvailable") - 'Se puede mandar tambien una notificacion avisando que hay actualizacion disponible -' CreateNotification2("Nueva aplicación disponible","Haga clic para descargar.","ic_file_download_white_24dp",C_UpdateAvailable,True,True,nNewApp,nNewAppnID) - End If - Catch - Log("appUpdater(), Job Failed, error " & LastException.Message) - End Try - Else - Log("appUpdater(), Job Failed " & lnk) - End If - j.Release -' StopService(Me) -End Sub - -Sub download_Start (StartingIntent As Intent) - download_newApk -End Sub - -Sub download_newApk -' CreateNotification("Descargando actualización", "Descargando apk", "ic_file_download_white_24dp", Main, False, True) -' CallSubDelayed2(Main, "muestraProgreso", "Descargando actualización") - Log("Descargando actualización") - B4XPages.ShowPage("Mainpage") - Starter.muestraProgreso = 1 - Dim job_newAPP As HttpJob - job_newAPP.Initialize("job_newAPP",Me) - job_newAPP.Download(newApp.appLink) - Wait for (job_newAPP) JobDone (job_newAPP As HttpJob) - If job_newAPP.Success = True Then - ' // Delete existing file - If File.Exists(SharedFolder,"newapp.apk") Then - File.Delete(SharedFolder,"newapp.apk") - End If - ' // Save new file - Dim outNewAPK As OutputStream = File.OpenOutput(SharedFolder,"newapp.apk", False) - File.Copy2(job_newAPP.GetInputStream, outNewAPK) - outNewAPK.Close - If Starter.Logger Then Log("APK dir: "&SharedFolder) - End If - job_newAPP.Release - ' // Install the app - Dim in As Intent - in.Initialize(in.ACTION_VIEW,"" ) - SetFileUriAsIntentData(in, "newapp.apk") - ' // Type must be set after calling SetFileUriAsIntentData - in.SetType("application/vnd.android.package-archive") - StartActivity(in) - n2.Cancel(nNewAppnID) - B4XPages.MainPage.ocultaProgreso -' Service.StopForeground(nNewAppnID) - StopService(Me) -' CallSubDelayed(Main,"ocultaProgreso") -End Sub - -Sub download_Destroy - n2.Cancel(n2ID) - Service.StopForeground(n2ID) -End Sub - -Sub Download (Callback As Object, link As String) As HttpJob - Dim j As HttpJob - j.Initialize("", Callback) - j.Download(link) - Return j -End Sub - -Private Sub CreateNotification2(Title As String, Content As String, _ 'ignore - Icon As String, TargetActivity As Object, Sound As Boolean, _ - Vibrate As Boolean, pN As Notification,pNID As Int) As Notification - pN.Initialize2(pN.IMPORTANCE_HIGH) -' pN.Number = pNID -' pN.Light = False - pN.Vibrate = Vibrate - pN.Sound = Sound -' pN.OnGoingEvent = False - pN.Icon = Icon - pN.AutoCancel = True - pN.SetInfo(Title, Content, TargetActivity) - pN.Notify(pNID) - Return pN -End Sub - -Private Sub CreateNotification(Title As String, Content As String, Icon As String, TargetActivity As Object, Sound As Boolean, Vibrate As Boolean) As Notification 'ignore - n2.Initialize - n2.Light = False - n2.Vibrate = Vibrate - n2.Sound = Sound - n2.OnGoingEvent = True - n2.Icon = Icon - n2.SetInfo(Title, Content, TargetActivity) - n2.Notify(nNewAppnID) -End Sub - -Sub Service_Destroy - Log("appUpdater(), Service_Destroy") -End Sub - -Sub fileProvider_init - Dim p As Phone - If p.SdkVersion >= 24 Or File.ExternalWritable = False Then - UseFileProvider = True - SharedFolder = File.Combine(File.DirInternal, "shared") - If Not(File.IsDirectory(File.DirInternal,"shared")) Then - File.MakeDir("", SharedFolder) - End If - Else - UseFileProvider = False - SharedFolder = rp.GetSafeDirDefaultExternal("shared") - End If - Log($"Using FileProvider? ${UseFileProvider}"$) -End Sub - -'Returns the file uri. -Sub GetFileUri (FileName As String) As Object - Try - If Not(UseFileProvider) Then - Dim uri As JavaObject - Return uri.InitializeStatic("android.net.Uri").RunMethod("parse", Array("file://" & File.Combine(SharedFolder, FileName))) - End If - Dim f As JavaObject - f.InitializeNewInstance("java.io.File", Array(SharedFolder, FileName)) - Dim fp As JavaObject - Dim context As JavaObject - context.InitializeContext - fp.InitializeStatic("android.support.v4.content.FileProvider") - Return fp.RunMethod("getUriForFile", Array(context, Application.PackageName & ".provider", f)) - Catch - Log("FileProvider::GetFileUri - error - " & LastException.Message) - Return "" - End Try -End Sub - -'Replaces the intent Data field with the file uri. -'Resets the type field. Make sure to call Intent.SetType after calling this method -Sub SetFileUriAsIntentData (Intent As Intent, FileName As String) - Dim jo As JavaObject = Intent - jo.RunMethod("setData", Array(GetFileUri(FileName))) - Intent.Flags = Bit.Or(Intent.Flags, 1) 'FLAG_GRANT_READ_URI_PERMISSION -End Sub diff --git a/B4J/AREstrategias.b4j b/B4J/AREstrategias.b4j deleted file mode 100644 index cdedb76..0000000 --- a/B4J/AREstrategias.b4j +++ /dev/null @@ -1,53 +0,0 @@ -AppType=JavaFX -Build1=Default,b4j.example -File1=MainPage.bjl -FileGroup1=New Group -Group=Default Group -Library1=jcore -Library2=jfx -Library3=b4xpages -Module1=|relative|..\B4XMainPage -NumberOfFiles=1 -NumberOfLibraries=3 -NumberOfModules=1 -Version=8.31 -@EndOfDesignText@ -#Region Project Attributes - #MainFormWidth: 600 - #MainFormHeight: 600 -#End Region - -Sub Process_Globals - Private fx As JFX - Private MainForm As Form -End Sub - -Sub AppStart (Form1 As Form, Args() As String) - MainForm = Form1 - MainForm.Show - Dim PagesManager As B4XPagesManager - PagesManager.Initialize(MainForm) -End Sub - -'Template version: B4J-1.0 -#Region Delegates -Sub MainForm_FocusChanged (HasFocus As Boolean) - B4XPages.Delegate.MainForm_FocusChanged(HasFocus) -End Sub - -Sub MainForm_Resize (Width As Double, Height As Double) - B4XPages.Delegate.MainForm_Resize(Width, Height) -End Sub - -Sub MainForm_Closed - B4XPages.Delegate.MainForm_Closed -End Sub - -Sub MainForm_CloseRequest (EventData As Event) - B4XPages.Delegate.MainForm_CloseRequest(EventData) -End Sub - -Public Sub MainForm_IconifiedChanged (Iconified As Boolean) - B4XPages.Delegate.MainForm_IconifiedChanged(Iconified) -End Sub -#End Region \ No newline at end of file diff --git a/B4J/AREstrategias.b4j.meta b/B4J/AREstrategias.b4j.meta deleted file mode 100644 index 33c33ea..0000000 --- a/B4J/AREstrategias.b4j.meta +++ /dev/null @@ -1,9 +0,0 @@ -ModuleBookmarks0= -ModuleBookmarks1= -ModuleBreakpoints0= -ModuleBreakpoints1= -ModuleClosedNodes0=1,4 -ModuleClosedNodes1=1 -NavigationStack=Main,MainForm_IconifiedChanged,37,0,Main,AppStart,14,6,B4XMainPage,Button1_Click,19,0,B4XMainPage,Initialize,9,0,B4XMainPage,B4XPage_Created,18,0,B4XMainPage,Class_Globals,7,0 -SelectedBuild=0 -VisibleModules=1 diff --git a/B4J/Files/MainPage.bjl b/B4J/Files/MainPage.bjl deleted file mode 100644 index 405b3b7..0000000 Binary files a/B4J/Files/MainPage.bjl and /dev/null differ diff --git a/B4i/AREstrategias.b4i b/B4i/AREstrategias.b4i deleted file mode 100644 index 7b2433a..0000000 --- a/B4i/AREstrategias.b4i +++ /dev/null @@ -1,46 +0,0 @@ -Build1=Default,b4i.example -File1=MainPage.bil -FileGroup1=Default Group -Group=Default Group -Library1=icore -Library2=b4xpages -Module1=|relative|..\B4XMainPage -NumberOfFiles=1 -NumberOfLibraries=2 -NumberOfModules=1 -Version=6.5 -@EndOfDesignText@ -'Code module -#Region Project Attributes - #ApplicationLabel: B4i Example - #Version: 1.0.0 - 'Orientation possible values: Portrait, LandscapeLeft, LandscapeRight and PortraitUpsideDown - #iPhoneOrientations: Portrait, LandscapeLeft, LandscapeRight - #iPadOrientations: Portrait, LandscapeLeft, LandscapeRight, PortraitUpsideDown - #Target: iPhone, iPad - #ATSEnabled: True - #MinVersion: 8 -#End Region - -Sub Process_Globals - Public App As Application - Public NavControl As NavigationController - -End Sub - -Private Sub Application_Start (Nav As NavigationController) - NavControl = Nav - Dim PagesManager As B4XPagesManager - PagesManager.Initialize(NavControl) -End Sub - -'Template version: B4i-1.0 -#Region Delegates -Private Sub Application_Background - B4XPages.Delegate.Activity_Pause -End Sub - -Private Sub Application_Foreground - B4XPages.Delegate.Activity_Resume -End Sub -#End Region diff --git a/B4i/AREstrategias.b4i.meta b/B4i/AREstrategias.b4i.meta deleted file mode 100644 index cca4a05..0000000 --- a/B4i/AREstrategias.b4i.meta +++ /dev/null @@ -1,9 +0,0 @@ -ModuleBookmarks0= -ModuleBookmarks1= -ModuleBreakpoints0= -ModuleBreakpoints1= -ModuleClosedNodes0=1,4 -ModuleClosedNodes1=1 -NavigationStack=Main,Application_Start,25,4,Main,Application_Foreground,34,0,Main,Process_Globals,13,0,Visual Designer,MainPage.bil,-100,1,B4XMainPage,Initialize,9,0,B4XMainPage,Button1_Click,19,0,B4XMainPage,B4XPage_Created,10,1,B4XMainPage,Class_Globals,11,0 -SelectedBuild=0 -VisibleModules=1 diff --git a/B4i/Files/mainpage.bil b/B4i/Files/mainpage.bil deleted file mode 100644 index 9ac93b4..0000000 Binary files a/B4i/Files/mainpage.bil and /dev/null differ diff --git a/Icon_22-[Convertido].png b/Icon_22-[Convertido].png deleted file mode 100644 index d40595b..0000000 Binary files a/Icon_22-[Convertido].png and /dev/null differ diff --git a/ar.txt b/ar.txt deleted file mode 100644 index 73a9585..0000000 --- a/ar.txt +++ /dev/null @@ -1,27 +0,0 @@ -########## -########## ARESTRATEGICAS -########## - -sql.select_usuario_AREstrategicas = select 'OK' || cat_lo_estatus as usuario, cat_lo_agencia from ARESTRATEGICAS.cat_logins where cat_lo_usuario = (?) and cat_lo_contrasena = (?) - -sql.select_datosgenerales_AR = SELECT PR_KT_CREDITO, PR_CD_NOMBRE, PR_CD_RFC, PR_CD_CURP, PR_CD_CALLE, PR_CD_NUM_EXT, PR_CD_NUM_INT, PR_CD_ALCALDIA, PR_CD_MUNICIPIO, PR_CD_ENTIDAD, PR_CD_CP, PR_CD_SEXO, PR_CD_FECHA_NAC, PR_CD_EDAD, PR_CD_EMAIL FROM ARESTRATEGICAS.vi_informacion WHERE PR_KT_ESTATUS <> 'Retirada' and PR_KT_UASIGNADOV is not null and PR_KT_CREDITO IN (SELECT PR_KT_CREDITO FROM ARESTRATEGICAS.pr_kmt_gral WHERE PR_KT_ESTATUS<>'Retirada' and PR_KT_UASIGNADOV = ?) - -sql.select_datosfinancieros_AR = SELECT PR_KT_CREDITO, PR_KT_PRODUCTO, PR_KT_AGENCIA, PR_CF_SALDO_TOTAL, PR_CF_LIQUIDACION, PR_CF_TOTAL_A_PAGAR_DESC, PR_CF_LIQUIDACION, PR_CA_DIAS_VENCIDOS, PR_CA_DIAS_ATRASO_ACT, PR_CA_FECHA_ATRASO, PR_CA_REFERENCIA1, PR_CA_REFERENCIA2 FROM ARESTRATEGICAS.vi_informacion WHERE PR_KT_ESTATUS <> 'Retirada' and PR_KT_UASIGNADOV is not null and PR_KT_CREDITO IN (SELECT PR_KT_CREDITO FROM ARESTRATEGICAS.pr_kmt_gral WHERE PR_KT_ESTATUS<> 'Retirada' and PR_KT_UASIGNADOV = ?) - -sql.select_fuentes_AR = SELECT * FROM ARESTRATEGICAS.CAT_FUENTE - -sql.select_parentesco_AR = SELECT * FROM ARESTRATEGICAS.CAT_PARENTESCO - -sql.select_accion_AR = select distinct CAT_CO_ACCION, CAT_CO_ADESCRIPCION from ARESTRATEGICAS.cat_codigos where CAT_CO_TIPO in (2,3) order by 2 - -sql.select_resultado_MA_AR = select distinct CAT_CO_ACCION, CAT_CO_RESULTADO, CAT_CO_RDESCRIPCION from cat_codigos where CAT_CO_ACCION ='MA' order by 1 - -sql.select_resultado_VC_AR = select distinct CAT_CO_ACCION, CAT_CO_RESULTADO, CAT_CO_RDESCRIPCION from cat_codigos where CAT_CO_ACCION = 'VC' order by 1 - -sql.select_resultado_CA_AR = select distinct CAT_CO_ACCION, CAT_CO_RESULTADO, CAT_CO_RDESCRIPCION from cat_codigos where CAT_CO_ACCION ='CA' order by 1 - -sql.select_resultado_BR_AR = select distinct CAT_CO_ACCION, CAT_CO_RESULTADO, CAT_CO_RDESCRIPCION from cat_codigos where CAT_CO_ACCION ='BR' order by 1 - -sql.insert_fotos_cliente_nuevo_MARIANA = insert into MARIANA.HIST_FOTO_CLIENTES_NUEVOS (HIST_FCM_CODIGO, HIST_FCM_ALMACEN, HIST_FCM_RUTA, HIST_FCM_FOTO) VALUES(?,?,?,?) - -sql.insert_gestion_AR = insert into ARESTRATEGICAS.TMP_HIST_VISITAS(TMP_HIST_VI_CREDITO, TMP_HIST_VI_PRODUCTO, TMP_HIST_VI_VISITADOR, TMP_HIST_VI_RESULTADO, TMP_HIST_VI_CODIGO, TMP_HIST_VI_PARENTESCO, TMP_HIST_VI_COMENTARIO, TMP_HIST_VI_DTEVISITA, TMP_HIST_VI_LONGITUD, TMP_HIST_VI_LATITUD, TMP_HIST_VI_DTECAPTURA, TMP_HIST_VI_AGENCIA, TMP_HIST_VI_DPROM, TMP_HIST_VI_MPROM, HIST_VI_TIPODOMICILIO, HIST_VI_NIVELSOCIO, HIST_VI_CARACTERISTICA, HIST_VI_NIVELES, TMP_HIST_VI_IMAGEN, TMP_HIST_VI_IMAGEN2, TMP_HIST_VI_IMAGEN3, TMP_HIST_VI_IMAGEN4, HIST_VI_NATIENDE, TMP_HIST_VI_ACCION_CODIGO, TMP_HIST_VI_ACCION, TMP_HIST_VI_DIAS_ACCION, TMP_HIST_VI_PUNTOS_REF) VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?) \ No newline at end of file diff --git a/bagon.txt b/bagon.txt deleted file mode 100644 index dcea578..0000000 --- a/bagon.txt +++ /dev/null @@ -1,8 +0,0 @@ -NO CREDITO -PRODIUCTO -NOMBRE -CALLE -COLONIA -MUNICIPIO -ESTADO -CP diff --git a/datos-varios.png b/datos-varios.png deleted file mode 100644 index 058934b..0000000 Binary files a/datos-varios.png and /dev/null differ diff --git a/engranes.png b/engranes.png deleted file mode 100644 index 868a879..0000000 Binary files a/engranes.png and /dev/null differ diff --git a/gitpull.bat b/gitpull.bat deleted file mode 100644 index d0aed61..0000000 --- a/gitpull.bat +++ /dev/null @@ -1 +0,0 @@ -git pull diff --git a/lupa.png b/lupa.png deleted file mode 100644 index 4f586bf..0000000 Binary files a/lupa.png and /dev/null differ