Commit Graph
148 Commits
Author SHA1 Message Date
thisisjimmyfbandBaldur Karlsson dc9fd45fc2 Make Oculus' on device Vulkan Validation Layer avaiable for load
Without this Renderdoc won't be able to load the on device VVL
2021-10-04 23:27:23 +01:00
baldurk 46ffa9de79 Ignore com.android activity that sometimes shows up in other packages 2021-09-15 11:31:54 +01:00
baldurk 17cc3002cc Fix config push to android for new android versions
* The config folder changed in some android version, so we need to use the right
  one.
2021-06-08 14:23:56 +01:00
Jinesi YelizatiandBaldur Karlsson c729397761 Fix typos in comments 2021-04-20 09:45:31 +01:00
Jinesi YelizatiandBaldur Karlsson cf487e242b Fix typo in JDWP TypeTag enums
Even though TypeTag is not actually used.
2021-04-16 09:20:54 +01:00
Jinesi YelizatiandBaldur Karlsson 98685bbcb5 Fix misleading log entry 2021-04-15 11:40:17 +01:00
baldurk cf2b0abaf8 Filter out spammy libc messages on android 2021-01-27 00:29:46 +00:00
baldurk 026da176bb Update copyright years to 2021 2021-01-13 13:56:10 +00:00
Omar El SheikhandBaldur Karlsson d9915388c7 Add check for Android Version
We need to check the android version running on the device to know
whether or not we need to make the adb install command use the
--force-queryable flag

Devices running Android R/11/SDK 30 are ones which support this flag
2020-12-22 19:57:59 +00:00
Omar El SheikhandBaldur Karlsson 050e9e1bba Update ADB Command to Install RenderDoc on Android
Added the --force-queryable flag to the adb install command for
renderdoc Android on devices running Android R/11/SDK 30

A feature being introduced in Android R requires all explicit
interactions between
apps to be declared ahead of time (either via manifest or during adb
install)

The --force-queryable flag during adb install does this, and is what
allows for the
shared objects from renderdoc (in this case the layers) to be
discoverable by
other apps targeting SDK 30+
2020-12-22 19:57:59 +00:00
baldurk e5f4ca7bb8 Remove use of const char * in public API and OS specific where possible
* This prevents unnecessary conversions back and forth between rdcstr and const
  char * when going through interfaces. In the OS specific layer this is rarely
  an issue because most of the implementations don't convert to rdcstr, but it
  is convenient to be able to pass in an rdcstr directly. The few cases where
  there's an unecessary construction of an rdcstr is acceptable.
* A couple of places in the public API need to return a string from a global
  function, so can't return an rdcstr due to C ABI, so they still return a const
  char *.
* Similarly const char * is kept for logging, to avoid a dependency on rdcstr
  and because that's one place where unnecessary conversions/constructions may
  be impactful.
2020-12-07 17:44:50 +00:00
baldurk 8f6359059b Make more config flags non-debug.
* Only performance-sensitive flags should be debug only. Otherwise there's no
  strong reason to limit these to non-official builds.
2020-10-01 17:48:35 +01:00
baldurk 809b8f9f29 Add fallback on android if gpu debug layers are broken or inaccessible 2020-09-10 16:41:35 +01:00
baldurk 78f1f8f3d1 Remove volatile from Atomic parameter declarations
* This was leaky from windows' InterlockedIncrement etc declarations, and is not
  necessary.
2020-09-09 16:40:04 +01:00
baldurk 75f2dc119c Fix missing free() calls for miniz allocations 2020-08-28 19:06:06 +01:00
Omar El SheikhandBaldur Karlsson c15078b900 Added Scoped Storage Support for Android
Updated permissions for the renderdoccmd app based on which version of
android the app is running on
**WRITE_EXTERNAL_STORAGE for <R
**MANAGE_EXTERNAL_STORAGE for >=R

Updated the Java portion of renderdoccmd to check/request the correct
permission based on android version

Changed the file path for renderdoc files on Android based on the
version of Android the connected device is running
**/sdcard/Android/data/$PACKAGE_NAME for <R
**/sdcard/Android/media/$PACKAGE_NAME for >=R
2020-07-09 14:29:41 +01:00
baldurk 4c8c16d95f Fall back to device preferred ABI if package has none. Closes #1944 2020-06-18 17:22:02 +01:00
baldurk f85f74b0f2 Only process non-data actions on android. Closes #1943 2020-06-16 15:27:40 +01:00
tabi.katalinandBaldur Karlsson f1bd727dff Add support for ARM counters
Adding support for ARM counters via a third-party lib.
The main target platform is Android.
2020-05-20 20:19:17 +01:00
baldurk 8230ad5242 Fix push of settings file on android
* It seems the `files` folder isn't there by default, so we don't want to write
  a file there instead.
2020-05-19 18:44:41 +01:00
baldurk 08cf66abce Fix racing busy signals when connecting to remote servers 2020-05-15 19:03:26 +01:00
baldurk 6b657965b1 Fix settings not being properly re-evaluated on access 2020-05-14 19:28:09 +01:00
baldurk 9ed418f90c Install settings file when running remote server 2020-05-13 20:13:18 +01:00
baldurk e034defb0e Add debug option to log verbosely on android process launch 2020-04-22 14:24:21 +01:00
cperthuisocandBaldur Karlsson 0df63aa8d0 Added system packages as hidden folders in the Executable Path dialog
android-only change
2020-04-16 18:18:52 +01:00
baldurk 8d6615697b Push settings file to android devices
* This allows settings to be used to control debug logging on android as well.
2020-04-03 15:19:28 +01:00
baldurk fbe2d1fbee Change ReadAll/WriteAll to take rdcstr instead of char* filename 2020-03-31 18:45:36 +01:00
baldurk d408f77241 Add configuration system for core renderdoc module
* This allows persistent config storage and registering tweak variables that
  works independent of the UI's configuration.
* Config vars can be debug only, which means they will be compiled out in stable
  version releases. This allows for debug-logging tweaks that are available in
  all builds (including nightly builds) for diagnostic purposes, but have zero
  overhead in stable releases.
* Variables have a loose hierarchy defined with _ or . to separate nodes.
2020-03-18 17:34:59 +00:00
baldurk 936e6372cb Remove use of 3rdparty/ prefix from includes
* We instead always have 3rdparty/ in the relevant include search paths and rely
  on that. Each library still has its own unique base dir within 3rdparty to
  clarify where the include is coming from.
2020-03-11 18:00:53 +00:00
baldurk 579b1893c7 Make sure out-of-order resume replies are processed in JDWP 2020-02-18 23:49:26 +00:00
baldurk dd87b9c48a Handle out-of-order JDWP reply packets when resuming 2020-02-17 15:11:51 +00:00
Rémi PalandriandBaldur Karlsson 007118ab98 force-stop non-JDWP applications at launch time 2020-02-06 00:41:37 +00:00
Rémi PalandriandBaldur Karlsson 8356b67c0a use process name instead of package name for android 2020-02-06 00:41:37 +00:00
baldurk 385121d2ca Fix android deadlock on shutdown 2020-01-30 14:34:54 +00:00
baldurk 6b1d186e6f Collapse variable initialisation & assignment into just init
* This doesn't make any difference but removes some warnings from PVS Studio and
  is slightly cleaner.
2020-01-21 18:28:56 +00:00
baldurk 7dd116abd4 Remove redundant/tautological comparisons identified by PVS Studio 2020-01-21 18:28:56 +00:00
baldurk 68b9d223b0 Add explicit comparisons where we were implicitly checking for non-zero
* This fixes some warnings from PVS Studio, though none of these checks were
  actually wrong it's better to be explicit.
2020-01-21 18:28:56 +00:00
baldurk b3d9a4a41b Don't consider stderr output from keytool to indicate a failure
* Some warnings come out over stderr, instead check the keystore to make sure it
  contains the key we generated.
2020-01-08 19:10:52 +00:00
baldurk 319455194b If android debug key generation fails, bail out of patching 2020-01-07 17:28:17 +00:00
baldurk b082bbe78f Use offsets rather than pointers when patching android manifest
* Fixes a crash when using bytebuf now would cause resizes
2020-01-07 17:28:17 +00:00
baldurk 37f762a08f Use renderdoc-specific name for keystore alias on android 2020-01-07 17:28:17 +00:00
baldurk 9950d8dbf3 Fix compilation of disabled custom APK location codepath 2020-01-07 17:28:17 +00:00
baldurk 2916c0f9f7 Update copyright years to 2020 2020-01-06 16:20:45 +00:00
baldurk 27098f8f70 Give our threads debugger-friendly names 2019-12-19 21:50:13 +00:00
baldurk 0c3b9d8a8c Fix default expected location of local android builds 2019-12-17 10:46:29 +00:00
baldurk bd9f4fc389 Remove use of vector/string from core project
* This also affects the drivers via interfaces e.g. IReplayDriver and some
  utility functions.
2019-12-16 18:10:31 +00:00
baldurk c4ca8cb1d1 Reduce reliance on big public headers where possible
* Mostly moving includes from common headers to cpp where possible, and removing
  includes of the whole thing where only enums or rdcstr etc are needed.
2019-12-16 17:06:16 +00:00
baldurk f68645bddc Reduce dependencies pulled in by common.h 2019-12-16 17:06:16 +00:00
baldurk 5f72b9d53c Remove std::string/std::vector use from os-specific layer 2019-12-16 17:06:15 +00:00
baldurk 5f33403849 Switch string_utils to use rdc types 2019-12-16 17:06:15 +00:00