US 12,436,869 B2
Segmented customization
Jeff DiTullio, Menlo Park, CA (US); and Wesley Reitzfeld, Chattanooga, TN (US)
Assigned to Apptimize, LLC, San Francisco, CA (US)
Filed by Apptimize, LLC, San Francisco, CA (US)
Filed on Nov. 14, 2023, as Appl. No. 18/509,161.
Application 18/509,161 is a continuation of application No. 17/876,548, filed on Jul. 29, 2022, granted, now 11,860,763.
Application 17/876,548 is a continuation of application No. 16/911,349, filed on Jun. 24, 2020, granted, now 11,442,840, issued on Sep. 13, 2022.
Application 16/911,349 is a continuation of application No. 15/968,020, filed on May 1, 2018, granted, now 10,725,888, issued on Jul. 28, 2020.
Claims priority of provisional application 62/492,417, filed on May 1, 2017.
Prior Publication US 2024/0086304 A1, Mar. 14, 2024
This patent is subject to a terminal disclaimer.
Int. Cl. G06F 11/3604 (2025.01); G06F 8/72 (2018.01); H04L 67/00 (2022.01); H04L 67/50 (2022.01); H04W 4/50 (2018.01); H04W 4/60 (2018.01)
CPC G06F 11/3612 (2013.01) [G06F 8/72 (2013.01); H04L 67/34 (2013.01); H04L 67/535 (2022.05); H04W 4/50 (2018.02); H04W 4/60 (2018.02)] 20 Claims
OG exemplary drawing
 
1. A system comprising:
a plurality of main mobile applications that are installed in a plurality of mobile devices, the plurality of main mobile applications published by a first party;
a plurality of application modification software development kits (SDKs) included in the plurality of mobile devices, each instance of application modification SDKs in communication with an instance of one of the main mobile applications, wherein the plurality of application modification SDKs are configured to:
receive, from the main mobile applications, manifests that include information regarding users of the main mobile applications; and
monitor occurrences of events at the main mobile applications at execution of the main mobile applications; and
a server in communication with the plurality of application modification SDKs, the server comprising memory and one or more processors, the memory configured to store code comprising instructions, wherein the instructions, when execute by the one or more processors, cause the one or more processors to:
define, according to selections provided by the first party, two or more segments based on the manifests, wherein categorizations of the segments are determined based on occurrences of events at the main mobile applications;
process the manifests to determine the segments and a plurality of feature variants corresponding to the segments;
track one or more metrics associated with a particular instance of the mobile application with respect to a feature variant;
monitor, through the application modification SDKs, program instructions executing the particular instance of the mobile application for an occurrence of an event, the event associated with how the categorizations of segments are determined;
determine that a user associated with the particular instance of the mobile application belongs to one of the user segments;
transmit a first data object for a first segment to a first subset of the application modification SDKs, the first segment including the user, the first data object including data for the first subset of the application modification SDKs to implement a first feature variant in a first subset of the main mobile applications; and
transmit a second data object for a second segment to a second subset of the application modification SDKs, the second data object including data for the second subset of the application modification SDKs to implement a second feature variant in a second subset of the main mobile applications.