Android Question Taking Screenshot of Entire Activity

Discussion in 'Android Questions' started by trueboss323, Jun 21, 2015.

  1. trueboss323

    trueboss323 Active Member Licensed User

    Hi Everyone, I am using this code to try and take a screenshot of the entire screen:

    Code:
    Log("TakeScreenshot activated")
           
    ' Take a screenshot.
       
          
    Dim Obj1, Obj2 As Reflector
      
    Dim bmp As Bitmap
      
    Dim c As Canvas
      Obj1.Target = Obj1.GetActivityBA
      Obj1.Target = Obj1.GetField(
    "vg")
      bmp.InitializeMutable(
    Activity.Width, Activity.Height)
      c.Initialize2(bmp)
      
    Dim args(1As Object
      
    Dim types(1As String
      Obj2.Target = c
      Obj2.Target = Obj2.GetField(
    "canvas")
      args(
    0) = Obj2.Target
      types(
    0) = "android.graphics.Canvas"
      Obj1.RunMethod4(
    "draw", args, types)
      
    Dim Out As OutputStream
      Out = 
    File.OpenOutput(File.DirInternal, "Screenshot.png"False)
      bmp.WriteToStream(Out, 
    100"PNG")
      Out.Close
        
    ToastMessageShow("Screenshot Captured"False)
    But this code takes a cropped screenshot. It does not include the title and status bar. Also I am used a tabbed application, so it does not take a photo of the tabs either.
     
  2. Erel

    Erel Administrator Staff Member Licensed User

    It is not possible to programmatically take a full screenshot.
     
  3. ilan

    ilan Expert Licensed User

    You can just draw them. The title bar and the tabs will not change anyway so you can first take the screenshot, draw manually the titlebar on a different panel then add the screenshot then draw the tabs on the bottom and take a screenshot of that panel...
     
Loading...