home bbs files messages ]

Forums before death by AOL, social media and spammers... "We can't have nice things"

   alt.privacy      Discussing privacy, laws, tinfoil hats      112,125 messages   

[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]

   Message 112,114 of 112,125   
   Maria Sophia to All   
   PSA: Privacy when setting the wallpaper    
   18 Feb 26 14:08:16   
   
   From: mariasophia@comprehension.com   
      
   PSA:   
   Creating *any* RGB solid color for mobile wallpaper or Windows background   
      
   On the Android newsgroup is a lengthy thread about setting the   
   homescreen/lockscreen to a pure solid-colored wallpaper, where, for   
   Android, the capability depends greatly on the device particulars   
   (launcher, Android version, OEM, model, etc.), which is complex.   
    Newsgroups: comp.mobile.android   
    Subject: How to create a plain wallpaper/background?   
    Date: Mon, 16 Feb 2026 13:09:54 +0000   
    Message-ID: <2ihb6m-91k63.ln1@q957.zbmc.eu>   
      
   The holy grail goal would be to select *any* RGB/HEX color by value,   
   such as R=AB, G=CD, B=EF (decimal 171, 205, 239) for the solid color.   
      
   As far as I know, none of the three platforms I own (and hence can test),   
   allow the user to *directly* natively set a solid background color by   
   number although all three platforms have a "color picker" & slider.   
      
   Windows is perhaps the best because it's color-picker GUI has all colors,   
   but the problem applies to all 3 major consumer platforms I own (AFAIK).   
    a. Windows: Settings > Personalization > Colors > Custom color   
    b. Android: (multiple methods depending on the device setup)   
    c. iOS: (has no native method to set a solid color, but see below)   
      
   To simplify things, we pointed out a free wallpaper-picker app, that works   
   on all Android devices, but it only had a limited set of solid colors.   
    *Wallpapers*, by Google   
       
      
   For a fee, meaning you lose some privacy, there are solid-color wallpaper   
   generators on the mobile devices, which can generate *any* RGB value:   
    *RGB Color Wallpaper Pro*, by TecDrop   
       
      
   This simple app-to-wallpaper integration is possible because Android   
   exposes a public wallpaper-setting API that apps are allowed to use.   
      
   On my iPadOS 26.3 device, I could choose Settings > Wallpaper > Add a new   
   wallpaper > colors but those are not true colors but color gradients.   
   Even when I set the RGB values into the iOS GUI, it's still a gradient.   
        
      
   But all is not lost given we can generate a pure solid-color image.   
       
   Which, when we parse the API, turns out to be:   
    /x>   
   So, for example, for the color ABCDEF, at 400x100, the link would be:   
       
      
   But having to use the web just to generate a solid-color image file is,   
   well, it's against my standards, so let's do it with just an editor.   
    C:\> gvim wallpaper.ppm   
         P3 1 1 255 171 205 239   
      
   Where...   
   P3  -> Magic number. Means "ASCII PPM" (Portable Pixmap, text format).   
   1   -> Image width in pixels. This file contains exactly 1 column.   
   1   -> Image height in pixels. This file contains exactly 1 row.   
   255 -> Maximum channel value. Defines the scale for R, G, B.   
          255 means each color channel ranges from 0 to 255.   
   171 -> Red channel value for the single pixel (0-255).   
          This corresponds to hex AB.   
   205 -> Green channel value for the single pixel (0-255).   
          This corresponds to hex CD.   
   239 -> Blue channel value for the single pixel (0-255).   
          This corresponds to hex EF.   
      
    C:\> magick wallpaper.ppm -scale 400x100! wallpaper.png   
      
   Where...   
    -scale -> Resize operation.   
              Tells ImageMagick to scale the image to a new size.   
    400x100! -> Target dimensions for the resize.   
                400 = width in pixels   
                100 = height in pixels   
                ! = force exact size, ignore aspect ratio.   
                (The bang means to stretch or squash if needed.)   
      
   That creates a solid-color RGB #ABCDEF PNG, identical to the   
   downloaded image created from the single-color-image web site above.   
      
   Note that almost any Windows image editor will do what ImageMagick does,   
   so consider the "magick" command simply one example of many that work.   
      
   The PPM can vary depending on the device screen particular   
   a. Windows: P3 1920 1080 255 171 205 239 (1920x180 monitor)   
   b. Android: P3 1600 720 255 171 205 239 (Galaxy A32-5G)   
   c. iOS: P3 2360 1640 255 171 205 239 (my 10th-gen iPad)   
      
   Using the exact screen resolution is ideal if:   
   a. We want zero scaling   
   b. We want pixel-perfect gradients (not needed for solid colors)   
   c. We want crisp edges (again, not needed for solid colors)   
   But for a pure solid color, scaling is mathematically lossless.   
   So our 400x100 wallpaper image is just as good as a 2360x1640 one.   
      
   This produces a mathematically perfect solid-color image of any   
   desired resolution such as these for my three platforms I own:   
      
   a. Windows (1920x1080)   
      C:\> magick wallpaper.ppm -scale 1920x1080! win-1920x1080.png   
      
   b. Android (Galaxy A32-5G, 1600x720)   
      C:\> magick wallpaper.ppm -scale 1600x720! android-1600x720.png   
      
   c. iOS (10th-gen iPad, 2360x1640)   
      C:\> magick wallpaper.ppm -scale 2360x1640! ipad-2360x1640.png   
      
   Once we have the image, all three platforms can choose that image.   
   a. Windows: Settings > Personalization > Background > Picture   
   b. Android: Gallery/Photos > (choose the image) > Set as wallpaper   
   c. iOS: Settings > Wallpaper > Add New Wallpaper > Photos   
      
   Speaking of privacy, you likely do not want your wallpaper to be unique:   
     *How your phone can be tracked by your wallpaper*   
       
      
   In the current Android versions, apps get much less wallpaper information:   
    WallpaperManager.getWallpaperColors()   
    a. 3 "main colors"   
    b. 1 "secondary color"   
    c. 1 "tertiary color"   
    d. And some luminance metadata   
      
   FingerprintJS showed that this color set can be hashed into what they   
   called ~144 bits of entropy but if you use a pure solid-color wallpaper,   
   the color set contains almost no entropy & as such, is apparently not all   
   that useful for malevolent fingerprinting purposes (AFAIK).   
      
   Because if you take:   
    a. 3 RGB colors   
    b. luminance metadata   
    c. some internal weighting   
   and hash them, you can produce a value that looks like a fingerprint.   
      
   But it is only a fingerprint within the same app on the same device.   
   Better yet, pure solid colors collapse the entropy to almost nothing   
      
   A 1x1 PPM expanded to our screen size produces a mathematically uniform   
   image with no EXIF, no camera noise & no unique patterns to fingerprint.   
      
   I guess if we use a color nobody uses, that might still fingerprint us,   
   but a pure black wallpaper produces the same WallpaperColors object for   
   everyone.   
      
      
   [continued in next message]   
      
   --- SoupGate-Win32 v1.05   
    * Origin: you cannot sedate... all the things you hate (1:229/2)   

[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]


(c) 1994,  bbs@darkrealms.ca