google-apis-androidpublisher_v3 0.44.0 → 0.45.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -22,6 +22,51 @@ module Google
22
22
  module Apis
23
23
  module AndroidpublisherV3
24
24
 
25
+ # Represents an Abi.
26
+ class Abi
27
+ include Google::Apis::Core::Hashable
28
+
29
+ # Alias for an abi.
30
+ # Corresponds to the JSON property `alias`
31
+ # @return [String]
32
+ attr_accessor :alias
33
+
34
+ def initialize(**args)
35
+ update!(**args)
36
+ end
37
+
38
+ # Update properties of this object
39
+ def update!(**args)
40
+ @alias = args[:alias] if args.key?(:alias)
41
+ end
42
+ end
43
+
44
+ # Targeting based on Abi.
45
+ class AbiTargeting
46
+ include Google::Apis::Core::Hashable
47
+
48
+ # Targeting of other sibling directories that were in the Bundle. For main
49
+ # splits this is targeting of other main splits.
50
+ # Corresponds to the JSON property `alternatives`
51
+ # @return [Array<Google::Apis::AndroidpublisherV3::Abi>]
52
+ attr_accessor :alternatives
53
+
54
+ # Value of an abi.
55
+ # Corresponds to the JSON property `value`
56
+ # @return [Array<Google::Apis::AndroidpublisherV3::Abi>]
57
+ attr_accessor :value
58
+
59
+ def initialize(**args)
60
+ update!(**args)
61
+ end
62
+
63
+ # Update properties of this object
64
+ def update!(**args)
65
+ @alternatives = args[:alternatives] if args.key?(:alternatives)
66
+ @value = args[:value] if args.key?(:value)
67
+ end
68
+ end
69
+
25
70
  # Represents a targeting rule of the form: User never had `scope` before.
26
71
  class AcquisitionTargetingRule
27
72
  include Google::Apis::Core::Hashable
@@ -120,6 +165,130 @@ module Google
120
165
  end
121
166
  end
122
167
 
168
+ # Description of the created apks.
169
+ class ApkDescription
170
+ include Google::Apis::Core::Hashable
171
+
172
+ # Holds data specific to Split APKs.
173
+ # Corresponds to the JSON property `assetSliceMetadata`
174
+ # @return [Google::Apis::AndroidpublisherV3::SplitApkMetadata]
175
+ attr_accessor :asset_slice_metadata
176
+
177
+ # Holds data specific to Split APKs.
178
+ # Corresponds to the JSON property `instantApkMetadata`
179
+ # @return [Google::Apis::AndroidpublisherV3::SplitApkMetadata]
180
+ attr_accessor :instant_apk_metadata
181
+
182
+ # Path of the Apk, will be in the following format: .apk where DownloadId is the
183
+ # ID used to download the apk using GeneratedApks.Download API.
184
+ # Corresponds to the JSON property `path`
185
+ # @return [String]
186
+ attr_accessor :path
187
+
188
+ # Holds data specific to Split APKs.
189
+ # Corresponds to the JSON property `splitApkMetadata`
190
+ # @return [Google::Apis::AndroidpublisherV3::SplitApkMetadata]
191
+ attr_accessor :split_apk_metadata
192
+
193
+ # Holds data specific to Standalone APKs.
194
+ # Corresponds to the JSON property `standaloneApkMetadata`
195
+ # @return [Google::Apis::AndroidpublisherV3::StandaloneApkMetadata]
196
+ attr_accessor :standalone_apk_metadata
197
+
198
+ # Represents a set of apk-level targetings.
199
+ # Corresponds to the JSON property `targeting`
200
+ # @return [Google::Apis::AndroidpublisherV3::ApkTargeting]
201
+ attr_accessor :targeting
202
+
203
+ def initialize(**args)
204
+ update!(**args)
205
+ end
206
+
207
+ # Update properties of this object
208
+ def update!(**args)
209
+ @asset_slice_metadata = args[:asset_slice_metadata] if args.key?(:asset_slice_metadata)
210
+ @instant_apk_metadata = args[:instant_apk_metadata] if args.key?(:instant_apk_metadata)
211
+ @path = args[:path] if args.key?(:path)
212
+ @split_apk_metadata = args[:split_apk_metadata] if args.key?(:split_apk_metadata)
213
+ @standalone_apk_metadata = args[:standalone_apk_metadata] if args.key?(:standalone_apk_metadata)
214
+ @targeting = args[:targeting] if args.key?(:targeting)
215
+ end
216
+ end
217
+
218
+ # A set of apks representing a module.
219
+ class ApkSet
220
+ include Google::Apis::Core::Hashable
221
+
222
+ # Description of the generated apks.
223
+ # Corresponds to the JSON property `apkDescription`
224
+ # @return [Array<Google::Apis::AndroidpublisherV3::ApkDescription>]
225
+ attr_accessor :apk_description
226
+
227
+ # Metadata of a module.
228
+ # Corresponds to the JSON property `moduleMetadata`
229
+ # @return [Google::Apis::AndroidpublisherV3::ModuleMetadata]
230
+ attr_accessor :module_metadata
231
+
232
+ def initialize(**args)
233
+ update!(**args)
234
+ end
235
+
236
+ # Update properties of this object
237
+ def update!(**args)
238
+ @apk_description = args[:apk_description] if args.key?(:apk_description)
239
+ @module_metadata = args[:module_metadata] if args.key?(:module_metadata)
240
+ end
241
+ end
242
+
243
+ # Represents a set of apk-level targetings.
244
+ class ApkTargeting
245
+ include Google::Apis::Core::Hashable
246
+
247
+ # Targeting based on Abi.
248
+ # Corresponds to the JSON property `abiTargeting`
249
+ # @return [Google::Apis::AndroidpublisherV3::AbiTargeting]
250
+ attr_accessor :abi_targeting
251
+
252
+ # Targeting based on language.
253
+ # Corresponds to the JSON property `languageTargeting`
254
+ # @return [Google::Apis::AndroidpublisherV3::LanguageTargeting]
255
+ attr_accessor :language_targeting
256
+
257
+ # Targeting based on multiple abis.
258
+ # Corresponds to the JSON property `multiAbiTargeting`
259
+ # @return [Google::Apis::AndroidpublisherV3::MultiAbiTargeting]
260
+ attr_accessor :multi_abi_targeting
261
+
262
+ # Targeting based on screen density.
263
+ # Corresponds to the JSON property `screenDensityTargeting`
264
+ # @return [Google::Apis::AndroidpublisherV3::ScreenDensityTargeting]
265
+ attr_accessor :screen_density_targeting
266
+
267
+ # Targeting based on sdk version.
268
+ # Corresponds to the JSON property `sdkVersionTargeting`
269
+ # @return [Google::Apis::AndroidpublisherV3::SdkVersionTargeting]
270
+ attr_accessor :sdk_version_targeting
271
+
272
+ # Targeting by a texture compression format.
273
+ # Corresponds to the JSON property `textureCompressionFormatTargeting`
274
+ # @return [Google::Apis::AndroidpublisherV3::TextureCompressionFormatTargeting]
275
+ attr_accessor :texture_compression_format_targeting
276
+
277
+ def initialize(**args)
278
+ update!(**args)
279
+ end
280
+
281
+ # Update properties of this object
282
+ def update!(**args)
283
+ @abi_targeting = args[:abi_targeting] if args.key?(:abi_targeting)
284
+ @language_targeting = args[:language_targeting] if args.key?(:language_targeting)
285
+ @multi_abi_targeting = args[:multi_abi_targeting] if args.key?(:multi_abi_targeting)
286
+ @screen_density_targeting = args[:screen_density_targeting] if args.key?(:screen_density_targeting)
287
+ @sdk_version_targeting = args[:sdk_version_targeting] if args.key?(:sdk_version_targeting)
288
+ @texture_compression_format_targeting = args[:texture_compression_format_targeting] if args.key?(:texture_compression_format_targeting)
289
+ end
290
+ end
291
+
123
292
  # Request to create a new externally hosted APK.
124
293
  class ApksAddExternallyHostedRequest
125
294
  include Google::Apis::Core::Hashable
@@ -265,6 +434,56 @@ module Google
265
434
  end
266
435
  end
267
436
 
437
+ # Metadata of an asset module.
438
+ class AssetModuleMetadata
439
+ include Google::Apis::Core::Hashable
440
+
441
+ # Indicates the delivery type for persistent install.
442
+ # Corresponds to the JSON property `deliveryType`
443
+ # @return [String]
444
+ attr_accessor :delivery_type
445
+
446
+ # Module name.
447
+ # Corresponds to the JSON property `name`
448
+ # @return [String]
449
+ attr_accessor :name
450
+
451
+ def initialize(**args)
452
+ update!(**args)
453
+ end
454
+
455
+ # Update properties of this object
456
+ def update!(**args)
457
+ @delivery_type = args[:delivery_type] if args.key?(:delivery_type)
458
+ @name = args[:name] if args.key?(:name)
459
+ end
460
+ end
461
+
462
+ # Set of asset slices belonging to a single asset module.
463
+ class AssetSliceSet
464
+ include Google::Apis::Core::Hashable
465
+
466
+ # Asset slices.
467
+ # Corresponds to the JSON property `apkDescription`
468
+ # @return [Array<Google::Apis::AndroidpublisherV3::ApkDescription>]
469
+ attr_accessor :apk_description
470
+
471
+ # Metadata of an asset module.
472
+ # Corresponds to the JSON property `assetModuleMetadata`
473
+ # @return [Google::Apis::AndroidpublisherV3::AssetModuleMetadata]
474
+ attr_accessor :asset_module_metadata
475
+
476
+ def initialize(**args)
477
+ update!(**args)
478
+ end
479
+
480
+ # Update properties of this object
481
+ def update!(**args)
482
+ @apk_description = args[:apk_description] if args.key?(:apk_description)
483
+ @asset_module_metadata = args[:asset_module_metadata] if args.key?(:asset_module_metadata)
484
+ end
485
+ end
486
+
268
487
  # Represents a base plan that automatically renews at the end of its
269
488
  # subscription period.
270
489
  class AutoRenewingBasePlanType
@@ -820,6 +1039,51 @@ module Google
820
1039
  end
821
1040
  end
822
1041
 
1042
+ # Represents a device feature.
1043
+ class DeviceFeature
1044
+ include Google::Apis::Core::Hashable
1045
+
1046
+ # Name of the feature.
1047
+ # Corresponds to the JSON property `featureName`
1048
+ # @return [String]
1049
+ attr_accessor :feature_name
1050
+
1051
+ # The feature version specified by android:glEsVersion or android:version in in
1052
+ # the AndroidManifest.
1053
+ # Corresponds to the JSON property `featureVersion`
1054
+ # @return [Fixnum]
1055
+ attr_accessor :feature_version
1056
+
1057
+ def initialize(**args)
1058
+ update!(**args)
1059
+ end
1060
+
1061
+ # Update properties of this object
1062
+ def update!(**args)
1063
+ @feature_name = args[:feature_name] if args.key?(:feature_name)
1064
+ @feature_version = args[:feature_version] if args.key?(:feature_version)
1065
+ end
1066
+ end
1067
+
1068
+ # Targeting for a device feature.
1069
+ class DeviceFeatureTargeting
1070
+ include Google::Apis::Core::Hashable
1071
+
1072
+ # Represents a device feature.
1073
+ # Corresponds to the JSON property `requiredFeature`
1074
+ # @return [Google::Apis::AndroidpublisherV3::DeviceFeature]
1075
+ attr_accessor :required_feature
1076
+
1077
+ def initialize(**args)
1078
+ update!(**args)
1079
+ end
1080
+
1081
+ # Update properties of this object
1082
+ def update!(**args)
1083
+ @required_feature = args[:required_feature] if args.key?(:required_feature)
1084
+ end
1085
+ end
1086
+
823
1087
  # A group of devices. A group is defined by a set of device selectors. A device
824
1088
  # belongs to the group if it matches any selector (logical OR).
825
1089
  class DeviceGroup
@@ -1565,6 +1829,11 @@ module Google
1565
1829
  # @return [Google::Apis::AndroidpublisherV3::GeneratedUniversalApk]
1566
1830
  attr_accessor :generated_universal_apk
1567
1831
 
1832
+ # Targeting information about the generated apks.
1833
+ # Corresponds to the JSON property `targetingInfo`
1834
+ # @return [Google::Apis::AndroidpublisherV3::TargetingInfo]
1835
+ attr_accessor :targeting_info
1836
+
1568
1837
  def initialize(**args)
1569
1838
  update!(**args)
1570
1839
  end
@@ -1576,6 +1845,7 @@ module Google
1576
1845
  @generated_split_apks = args[:generated_split_apks] if args.key?(:generated_split_apks)
1577
1846
  @generated_standalone_apks = args[:generated_standalone_apks] if args.key?(:generated_standalone_apks)
1578
1847
  @generated_universal_apk = args[:generated_universal_apk] if args.key?(:generated_universal_apk)
1848
+ @targeting_info = args[:targeting_info] if args.key?(:targeting_info)
1579
1849
  end
1580
1850
  end
1581
1851
 
@@ -2083,6 +2353,31 @@ module Google
2083
2353
  end
2084
2354
  end
2085
2355
 
2356
+ # Targeting based on language.
2357
+ class LanguageTargeting
2358
+ include Google::Apis::Core::Hashable
2359
+
2360
+ # Alternative languages.
2361
+ # Corresponds to the JSON property `alternatives`
2362
+ # @return [Array<String>]
2363
+ attr_accessor :alternatives
2364
+
2365
+ # ISO-639: 2 or 3 letter language code.
2366
+ # Corresponds to the JSON property `value`
2367
+ # @return [Array<String>]
2368
+ attr_accessor :value
2369
+
2370
+ def initialize(**args)
2371
+ update!(**args)
2372
+ end
2373
+
2374
+ # Update properties of this object
2375
+ def update!(**args)
2376
+ @alternatives = args[:alternatives] if args.key?(:alternatives)
2377
+ @value = args[:value] if args.key?(:value)
2378
+ end
2379
+ end
2380
+
2086
2381
  # Response listing existing device tier configs.
2087
2382
  class ListDeviceTierConfigsResponse
2088
2383
  include Google::Apis::Core::Hashable
@@ -2354,6 +2649,81 @@ module Google
2354
2649
  end
2355
2650
  end
2356
2651
 
2652
+ # Metadata of a module.
2653
+ class ModuleMetadata
2654
+ include Google::Apis::Core::Hashable
2655
+
2656
+ # Indicates the delivery type (e.g. on-demand) of the module.
2657
+ # Corresponds to the JSON property `deliveryType`
2658
+ # @return [String]
2659
+ attr_accessor :delivery_type
2660
+
2661
+ # Names of the modules that this module directly depends on. Each module
2662
+ # implicitly depends on the base module.
2663
+ # Corresponds to the JSON property `dependencies`
2664
+ # @return [Array<String>]
2665
+ attr_accessor :dependencies
2666
+
2667
+ # Indicates the type of this feature module.
2668
+ # Corresponds to the JSON property `moduleType`
2669
+ # @return [String]
2670
+ attr_accessor :module_type
2671
+
2672
+ # Module name.
2673
+ # Corresponds to the JSON property `name`
2674
+ # @return [String]
2675
+ attr_accessor :name
2676
+
2677
+ # Targeting on the module level.
2678
+ # Corresponds to the JSON property `targeting`
2679
+ # @return [Google::Apis::AndroidpublisherV3::ModuleTargeting]
2680
+ attr_accessor :targeting
2681
+
2682
+ def initialize(**args)
2683
+ update!(**args)
2684
+ end
2685
+
2686
+ # Update properties of this object
2687
+ def update!(**args)
2688
+ @delivery_type = args[:delivery_type] if args.key?(:delivery_type)
2689
+ @dependencies = args[:dependencies] if args.key?(:dependencies)
2690
+ @module_type = args[:module_type] if args.key?(:module_type)
2691
+ @name = args[:name] if args.key?(:name)
2692
+ @targeting = args[:targeting] if args.key?(:targeting)
2693
+ end
2694
+ end
2695
+
2696
+ # Targeting on the module level.
2697
+ class ModuleTargeting
2698
+ include Google::Apis::Core::Hashable
2699
+
2700
+ # Targeting for device features.
2701
+ # Corresponds to the JSON property `deviceFeatureTargeting`
2702
+ # @return [Array<Google::Apis::AndroidpublisherV3::DeviceFeatureTargeting>]
2703
+ attr_accessor :device_feature_targeting
2704
+
2705
+ # Targeting based on sdk version.
2706
+ # Corresponds to the JSON property `sdkVersionTargeting`
2707
+ # @return [Google::Apis::AndroidpublisherV3::SdkVersionTargeting]
2708
+ attr_accessor :sdk_version_targeting
2709
+
2710
+ # Describes an inclusive/exclusive list of country codes that module targets.
2711
+ # Corresponds to the JSON property `userCountriesTargeting`
2712
+ # @return [Google::Apis::AndroidpublisherV3::UserCountriesTargeting]
2713
+ attr_accessor :user_countries_targeting
2714
+
2715
+ def initialize(**args)
2716
+ update!(**args)
2717
+ end
2718
+
2719
+ # Update properties of this object
2720
+ def update!(**args)
2721
+ @device_feature_targeting = args[:device_feature_targeting] if args.key?(:device_feature_targeting)
2722
+ @sdk_version_targeting = args[:sdk_version_targeting] if args.key?(:sdk_version_targeting)
2723
+ @user_countries_targeting = args[:user_countries_targeting] if args.key?(:user_countries_targeting)
2724
+ end
2725
+ end
2726
+
2357
2727
  # Represents an amount of money with its currency type.
2358
2728
  class Money
2359
2729
  include Google::Apis::Core::Hashable
@@ -2390,6 +2760,51 @@ module Google
2390
2760
  end
2391
2761
  end
2392
2762
 
2763
+ # Represents a list of apis.
2764
+ class MultiAbi
2765
+ include Google::Apis::Core::Hashable
2766
+
2767
+ # A list of targeted ABIs, as represented by the Android Platform
2768
+ # Corresponds to the JSON property `abi`
2769
+ # @return [Array<Google::Apis::AndroidpublisherV3::Abi>]
2770
+ attr_accessor :abi
2771
+
2772
+ def initialize(**args)
2773
+ update!(**args)
2774
+ end
2775
+
2776
+ # Update properties of this object
2777
+ def update!(**args)
2778
+ @abi = args[:abi] if args.key?(:abi)
2779
+ end
2780
+ end
2781
+
2782
+ # Targeting based on multiple abis.
2783
+ class MultiAbiTargeting
2784
+ include Google::Apis::Core::Hashable
2785
+
2786
+ # Targeting of other sibling directories that were in the Bundle. For main
2787
+ # splits this is targeting of other main splits.
2788
+ # Corresponds to the JSON property `alternatives`
2789
+ # @return [Array<Google::Apis::AndroidpublisherV3::MultiAbi>]
2790
+ attr_accessor :alternatives
2791
+
2792
+ # Value of a multi abi.
2793
+ # Corresponds to the JSON property `value`
2794
+ # @return [Array<Google::Apis::AndroidpublisherV3::MultiAbi>]
2795
+ attr_accessor :value
2796
+
2797
+ def initialize(**args)
2798
+ update!(**args)
2799
+ end
2800
+
2801
+ # Update properties of this object
2802
+ def update!(**args)
2803
+ @alternatives = args[:alternatives] if args.key?(:alternatives)
2804
+ @value = args[:value] if args.key?(:value)
2805
+ end
2806
+ end
2807
+
2393
2808
  # Offer details information related to a purchase line item.
2394
2809
  class OfferDetails
2395
2810
  include Google::Apis::Core::Hashable
@@ -3291,6 +3706,181 @@ module Google
3291
3706
  end
3292
3707
  end
3293
3708
 
3709
+ # Represents a screen density.
3710
+ class ScreenDensity
3711
+ include Google::Apis::Core::Hashable
3712
+
3713
+ # Alias for a screen density.
3714
+ # Corresponds to the JSON property `densityAlias`
3715
+ # @return [String]
3716
+ attr_accessor :density_alias
3717
+
3718
+ # Value for density dpi.
3719
+ # Corresponds to the JSON property `densityDpi`
3720
+ # @return [Fixnum]
3721
+ attr_accessor :density_dpi
3722
+
3723
+ def initialize(**args)
3724
+ update!(**args)
3725
+ end
3726
+
3727
+ # Update properties of this object
3728
+ def update!(**args)
3729
+ @density_alias = args[:density_alias] if args.key?(:density_alias)
3730
+ @density_dpi = args[:density_dpi] if args.key?(:density_dpi)
3731
+ end
3732
+ end
3733
+
3734
+ # Targeting based on screen density.
3735
+ class ScreenDensityTargeting
3736
+ include Google::Apis::Core::Hashable
3737
+
3738
+ # Targeting of other sibling directories that were in the Bundle. For main
3739
+ # splits this is targeting of other main splits.
3740
+ # Corresponds to the JSON property `alternatives`
3741
+ # @return [Array<Google::Apis::AndroidpublisherV3::ScreenDensity>]
3742
+ attr_accessor :alternatives
3743
+
3744
+ # Value of a screen density.
3745
+ # Corresponds to the JSON property `value`
3746
+ # @return [Array<Google::Apis::AndroidpublisherV3::ScreenDensity>]
3747
+ attr_accessor :value
3748
+
3749
+ def initialize(**args)
3750
+ update!(**args)
3751
+ end
3752
+
3753
+ # Update properties of this object
3754
+ def update!(**args)
3755
+ @alternatives = args[:alternatives] if args.key?(:alternatives)
3756
+ @value = args[:value] if args.key?(:value)
3757
+ end
3758
+ end
3759
+
3760
+ # Represents an sdk version.
3761
+ class SdkVersion
3762
+ include Google::Apis::Core::Hashable
3763
+
3764
+ # Inclusive minimum value of an sdk version.
3765
+ # Corresponds to the JSON property `min`
3766
+ # @return [Fixnum]
3767
+ attr_accessor :min
3768
+
3769
+ def initialize(**args)
3770
+ update!(**args)
3771
+ end
3772
+
3773
+ # Update properties of this object
3774
+ def update!(**args)
3775
+ @min = args[:min] if args.key?(:min)
3776
+ end
3777
+ end
3778
+
3779
+ # Targeting based on sdk version.
3780
+ class SdkVersionTargeting
3781
+ include Google::Apis::Core::Hashable
3782
+
3783
+ # Targeting of other sibling directories that were in the Bundle. For main
3784
+ # splits this is targeting of other main splits.
3785
+ # Corresponds to the JSON property `alternatives`
3786
+ # @return [Array<Google::Apis::AndroidpublisherV3::SdkVersion>]
3787
+ attr_accessor :alternatives
3788
+
3789
+ # Value of an sdk version.
3790
+ # Corresponds to the JSON property `value`
3791
+ # @return [Array<Google::Apis::AndroidpublisherV3::SdkVersion>]
3792
+ attr_accessor :value
3793
+
3794
+ def initialize(**args)
3795
+ update!(**args)
3796
+ end
3797
+
3798
+ # Update properties of this object
3799
+ def update!(**args)
3800
+ @alternatives = args[:alternatives] if args.key?(:alternatives)
3801
+ @value = args[:value] if args.key?(:value)
3802
+ end
3803
+ end
3804
+
3805
+ # Holds data specific to Split APKs.
3806
+ class SplitApkMetadata
3807
+ include Google::Apis::Core::Hashable
3808
+
3809
+ # Indicates whether this APK is the main split of the module.
3810
+ # Corresponds to the JSON property `isMasterSplit`
3811
+ # @return [Boolean]
3812
+ attr_accessor :is_master_split
3813
+ alias_method :is_master_split?, :is_master_split
3814
+
3815
+ # Id of the split.
3816
+ # Corresponds to the JSON property `splitId`
3817
+ # @return [String]
3818
+ attr_accessor :split_id
3819
+
3820
+ def initialize(**args)
3821
+ update!(**args)
3822
+ end
3823
+
3824
+ # Update properties of this object
3825
+ def update!(**args)
3826
+ @is_master_split = args[:is_master_split] if args.key?(:is_master_split)
3827
+ @split_id = args[:split_id] if args.key?(:split_id)
3828
+ end
3829
+ end
3830
+
3831
+ # Variant is a group of APKs that covers a part of the device configuration
3832
+ # space. APKs from multiple variants are never combined on one device.
3833
+ class SplitApkVariant
3834
+ include Google::Apis::Core::Hashable
3835
+
3836
+ # Set of APKs, one set per module.
3837
+ # Corresponds to the JSON property `apkSet`
3838
+ # @return [Array<Google::Apis::AndroidpublisherV3::ApkSet>]
3839
+ attr_accessor :apk_set
3840
+
3841
+ # Targeting on the level of variants.
3842
+ # Corresponds to the JSON property `targeting`
3843
+ # @return [Google::Apis::AndroidpublisherV3::VariantTargeting]
3844
+ attr_accessor :targeting
3845
+
3846
+ # Number of the variant, starting at 0 (unless overridden). A device will
3847
+ # receive APKs from the first variant that matches the device configuration,
3848
+ # with higher variant numbers having priority over lower variant numbers.
3849
+ # Corresponds to the JSON property `variantNumber`
3850
+ # @return [Fixnum]
3851
+ attr_accessor :variant_number
3852
+
3853
+ def initialize(**args)
3854
+ update!(**args)
3855
+ end
3856
+
3857
+ # Update properties of this object
3858
+ def update!(**args)
3859
+ @apk_set = args[:apk_set] if args.key?(:apk_set)
3860
+ @targeting = args[:targeting] if args.key?(:targeting)
3861
+ @variant_number = args[:variant_number] if args.key?(:variant_number)
3862
+ end
3863
+ end
3864
+
3865
+ # Holds data specific to Standalone APKs.
3866
+ class StandaloneApkMetadata
3867
+ include Google::Apis::Core::Hashable
3868
+
3869
+ # Names of the modules fused in this standalone APK.
3870
+ # Corresponds to the JSON property `fusedModuleName`
3871
+ # @return [Array<String>]
3872
+ attr_accessor :fused_module_name
3873
+
3874
+ def initialize(**args)
3875
+ update!(**args)
3876
+ end
3877
+
3878
+ # Update properties of this object
3879
+ def update!(**args)
3880
+ @fused_module_name = args[:fused_module_name] if args.key?(:fused_module_name)
3881
+ end
3882
+ end
3883
+
3294
3884
  # Information associated with purchases made with 'Subscribe with Google'.
3295
3885
  class SubscribeWithGoogleInfo
3296
3886
  include Google::Apis::Core::Hashable
@@ -4250,6 +4840,37 @@ module Google
4250
4840
  end
4251
4841
  end
4252
4842
 
4843
+ # Targeting information about the generated apks.
4844
+ class TargetingInfo
4845
+ include Google::Apis::Core::Hashable
4846
+
4847
+ # List of created asset slices.
4848
+ # Corresponds to the JSON property `assetSliceSet`
4849
+ # @return [Array<Google::Apis::AndroidpublisherV3::AssetSliceSet>]
4850
+ attr_accessor :asset_slice_set
4851
+
4852
+ # The package name of this app.
4853
+ # Corresponds to the JSON property `packageName`
4854
+ # @return [String]
4855
+ attr_accessor :package_name
4856
+
4857
+ # List of the created variants.
4858
+ # Corresponds to the JSON property `variant`
4859
+ # @return [Array<Google::Apis::AndroidpublisherV3::SplitApkVariant>]
4860
+ attr_accessor :variant
4861
+
4862
+ def initialize(**args)
4863
+ update!(**args)
4864
+ end
4865
+
4866
+ # Update properties of this object
4867
+ def update!(**args)
4868
+ @asset_slice_set = args[:asset_slice_set] if args.key?(:asset_slice_set)
4869
+ @package_name = args[:package_name] if args.key?(:package_name)
4870
+ @variant = args[:variant] if args.key?(:variant)
4871
+ end
4872
+ end
4873
+
4253
4874
  # Defines the scope of subscriptions which a targeting rule can match to target
4254
4875
  # offers to users based on past or current entitlement.
4255
4876
  class TargetingRuleScope
@@ -4305,6 +4926,50 @@ module Google
4305
4926
  end
4306
4927
  end
4307
4928
 
4929
+ # Represents texture compression format.
4930
+ class TextureCompressionFormat
4931
+ include Google::Apis::Core::Hashable
4932
+
4933
+ # Alias for texture compression format.
4934
+ # Corresponds to the JSON property `alias`
4935
+ # @return [String]
4936
+ attr_accessor :alias
4937
+
4938
+ def initialize(**args)
4939
+ update!(**args)
4940
+ end
4941
+
4942
+ # Update properties of this object
4943
+ def update!(**args)
4944
+ @alias = args[:alias] if args.key?(:alias)
4945
+ end
4946
+ end
4947
+
4948
+ # Targeting by a texture compression format.
4949
+ class TextureCompressionFormatTargeting
4950
+ include Google::Apis::Core::Hashable
4951
+
4952
+ # List of alternative TCFs (TCFs targeted by the sibling splits).
4953
+ # Corresponds to the JSON property `alternatives`
4954
+ # @return [Array<Google::Apis::AndroidpublisherV3::TextureCompressionFormat>]
4955
+ attr_accessor :alternatives
4956
+
4957
+ # The list of targeted TCFs. Should not be empty.
4958
+ # Corresponds to the JSON property `value`
4959
+ # @return [Array<Google::Apis::AndroidpublisherV3::TextureCompressionFormat>]
4960
+ attr_accessor :value
4961
+
4962
+ def initialize(**args)
4963
+ update!(**args)
4964
+ end
4965
+
4966
+ # Update properties of this object
4967
+ def update!(**args)
4968
+ @alternatives = args[:alternatives] if args.key?(:alternatives)
4969
+ @value = args[:value] if args.key?(:value)
4970
+ end
4971
+ end
4972
+
4308
4973
  # A Timestamp represents a point in time independent of any time zone or local
4309
4974
  # calendar, encoded as a count of seconds and fractions of seconds at nanosecond
4310
4975
  # resolution. The count is relative to an epoch at UTC midnight on January 1,
@@ -4738,6 +5403,32 @@ module Google
4738
5403
  end
4739
5404
  end
4740
5405
 
5406
+ # Describes an inclusive/exclusive list of country codes that module targets.
5407
+ class UserCountriesTargeting
5408
+ include Google::Apis::Core::Hashable
5409
+
5410
+ # List of country codes in the two-letter CLDR territory format.
5411
+ # Corresponds to the JSON property `countryCodes`
5412
+ # @return [Array<String>]
5413
+ attr_accessor :country_codes
5414
+
5415
+ # Indicates if the list above is exclusive.
5416
+ # Corresponds to the JSON property `exclude`
5417
+ # @return [Boolean]
5418
+ attr_accessor :exclude
5419
+ alias_method :exclude?, :exclude
5420
+
5421
+ def initialize(**args)
5422
+ update!(**args)
5423
+ end
5424
+
5425
+ # Update properties of this object
5426
+ def update!(**args)
5427
+ @country_codes = args[:country_codes] if args.key?(:country_codes)
5428
+ @exclude = args[:exclude] if args.key?(:exclude)
5429
+ end
5430
+ end
5431
+
4741
5432
  # A set of user countries. A country set determines what variation of app
4742
5433
  # content gets served to a specific location.
4743
5434
  class UserCountrySet
@@ -4843,6 +5534,49 @@ module Google
4843
5534
  end
4844
5535
  end
4845
5536
 
5537
+ # Targeting on the level of variants.
5538
+ class VariantTargeting
5539
+ include Google::Apis::Core::Hashable
5540
+
5541
+ # Targeting based on Abi.
5542
+ # Corresponds to the JSON property `abiTargeting`
5543
+ # @return [Google::Apis::AndroidpublisherV3::AbiTargeting]
5544
+ attr_accessor :abi_targeting
5545
+
5546
+ # Targeting based on multiple abis.
5547
+ # Corresponds to the JSON property `multiAbiTargeting`
5548
+ # @return [Google::Apis::AndroidpublisherV3::MultiAbiTargeting]
5549
+ attr_accessor :multi_abi_targeting
5550
+
5551
+ # Targeting based on screen density.
5552
+ # Corresponds to the JSON property `screenDensityTargeting`
5553
+ # @return [Google::Apis::AndroidpublisherV3::ScreenDensityTargeting]
5554
+ attr_accessor :screen_density_targeting
5555
+
5556
+ # Targeting based on sdk version.
5557
+ # Corresponds to the JSON property `sdkVersionTargeting`
5558
+ # @return [Google::Apis::AndroidpublisherV3::SdkVersionTargeting]
5559
+ attr_accessor :sdk_version_targeting
5560
+
5561
+ # Targeting by a texture compression format.
5562
+ # Corresponds to the JSON property `textureCompressionFormatTargeting`
5563
+ # @return [Google::Apis::AndroidpublisherV3::TextureCompressionFormatTargeting]
5564
+ attr_accessor :texture_compression_format_targeting
5565
+
5566
+ def initialize(**args)
5567
+ update!(**args)
5568
+ end
5569
+
5570
+ # Update properties of this object
5571
+ def update!(**args)
5572
+ @abi_targeting = args[:abi_targeting] if args.key?(:abi_targeting)
5573
+ @multi_abi_targeting = args[:multi_abi_targeting] if args.key?(:multi_abi_targeting)
5574
+ @screen_density_targeting = args[:screen_density_targeting] if args.key?(:screen_density_targeting)
5575
+ @sdk_version_targeting = args[:sdk_version_targeting] if args.key?(:sdk_version_targeting)
5576
+ @texture_compression_format_targeting = args[:texture_compression_format_targeting] if args.key?(:texture_compression_format_targeting)
5577
+ end
5578
+ end
5579
+
4846
5580
  # A VoidedPurchase resource indicates a purchase that was either canceled/
4847
5581
  # refunded/charged-back.
4848
5582
  class VoidedPurchase