1 2 #pragma once 3 4 #include <string> 5 #include <string_view> 6 7 namespace pixel_modem { 8 9 // Used to set boolean parameters to true / false 10 inline constexpr std::string_view kTruthString = "true"; 11 inline constexpr std::string_view kFalseString = "false"; 12 13 /** 14 * @brief Interface for interacting with Android System Properties. 15 */ 16 class AndroidPropertyManager { 17 public: 18 virtual ~AndroidPropertyManager() = default; 19 virtual bool GetBoolProperty(const std::string& key, bool default_value) = 0; 20 virtual std::string GetProperty(const std::string& key, 21 const std::string& default_value) = 0; 22 virtual int GetIntProperty(const std::string& key, int default_value) = 0; 23 virtual bool SetProperty(const std::string& key, 24 const std::string& value) = 0; 25 }; 26 27 } // namespace pixel_modem 28