本文整理汇总了Java中com.mixpanel.mixpanelapi.MixpanelAPI类的典型用法代码示例。如果您正苦于以下问题:Java MixpanelAPI类的具体用法?Java MixpanelAPI怎么用?Java MixpanelAPI使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
MixpanelAPI类属于com.mixpanel.mixpanelapi包,在下文中一共展示了MixpanelAPI类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: trackSignUp
import com.mixpanel.mixpanelapi.MixpanelAPI; //导入依赖的package包/类
@Override
public void trackSignUp(UserInfo user) {
try {
JSONObject properties = new JSONObject();
properties.put("username", user.getUsername());
JSONObject signUp = messageBuilder.event(user.getUsername(), "Sign Up", properties);
ClientDelivery delivery = new ClientDelivery();
delivery.addMessage(signUp);
JSONObject userJSONObject = mapToUserJSONObject(user);
userJSONObject.put("$created", new Date());
MixpanelAPI mixpanel = new MixpanelAPI();
mixpanel.deliver(delivery);
mixpanel.sendMessage(userJSONObject);
} catch (Exception e) {
LOGGER.error("Error occurred while tacking", e);
}
}
示例2: trackLogin
import com.mixpanel.mixpanelapi.MixpanelAPI; //导入依赖的package包/类
@Override
public void trackLogin(UserInfo user) {
try {
JSONObject properties = new JSONObject();
properties.put("username", user.getUsername());
JSONObject signUp = messageBuilder.event(user.getUsername(), "Login", properties);
ClientDelivery delivery = new ClientDelivery();
delivery.addMessage(signUp);
JSONObject userJSONObject = mapToUserJSONObject(user);
userJSONObject.put("$last_login", new Date());
MixpanelAPI mixpanel = new MixpanelAPI();
mixpanel.deliver(delivery);
mixpanel.sendMessage(userJSONObject);
} catch (Exception e) {
LOGGER.error("Error occurred while tacking", e);
}
}
示例3: sendEvent
import com.mixpanel.mixpanelapi.MixpanelAPI; //导入依赖的package包/类
public static boolean sendEvent(String eventName, JSONObject props)
{
// Checking if email is blank
if (Config.email.trim().isEmpty() || debugging)
return false;
MessageBuilder b = getMessageBuilder();
JSONObject event = b.event(Config.emailHash, eventName, props);
try
{
new MixpanelAPI().sendMessage(event);
}
catch (Exception e)
{
e.printStackTrace();
return false;
}
return true;
}
示例4: doFirstStartAction
import com.mixpanel.mixpanelapi.MixpanelAPI; //导入依赖的package包/类
private void doFirstStartAction() throws Exception {
try {
final String installationUUID = PreferencesManager.getInstance().getInstallationUUID().toString();
final MessageBuilder messageBuilder = new MessageBuilder(PROJECT_TOKEN);
final MixpanelAPI mixpanel = new MixpanelAPI();
final JSONObject statistics = new JSONObject();
statistics.put("os.name", System.getProperty("os.name","unknown")); //NOI18N
statistics.put("os.arch", System.getProperty("os.arch","unknown")); //NOI18N
statistics.put("os.version", System.getProperty("os.version","unknown")); //NOI18N
statistics.put("java.vendor", System.getProperty("java.vendor","unknown")); //NOI18N
statistics.put("java.version", System.getProperty("java.version","unknown")); //NOI18N
final JSONObject event = messageBuilder.event(installationUUID, "FirstStart", statistics); //NOI18N
final ClientDelivery delivery = new ClientDelivery();
delivery.addMessage(event);
mixpanel.deliver(delivery);
} finally {
PreferencesManager.getInstance().getPreferences().putLong(PROPERTY_METRICS_SENDING_LAST_TIME, System.currentTimeMillis());
PreferencesManager.getInstance().flush();
}
}
示例5: doAction
import com.mixpanel.mixpanelapi.MixpanelAPI; //导入依赖的package包/类
private void doAction() throws Exception {
try {
final String installationUUID = PreferencesManager.getInstance().getInstallationUUID().toString();
final MessageBuilder messageBuilder = new MessageBuilder(PROJECT_TOKEN);
final MixpanelAPI mixpanel = new MixpanelAPI();
final JSONObject statistics = new JSONObject();
statistics.put(Main.PROPERTY_TOTAL_UPSTART, PreferencesManager.getInstance().getPreferences().getLong(Main.PROPERTY_TOTAL_UPSTART, 0L));
final JSONObject event = messageBuilder.event(installationUUID, "Statistics", statistics); //NOI18N
final ClientDelivery delivery = new ClientDelivery();
delivery.addMessage(event);
mixpanel.deliver(delivery);
} finally {
PreferencesManager.getInstance().getPreferences().putLong(PROPERTY_METRICS_SENDING_LAST_TIME, System.currentTimeMillis());
PreferencesManager.getInstance().flush();
}
}
示例6: trackProductView
import com.mixpanel.mixpanelapi.MixpanelAPI; //导入依赖的package包/类
@Override
public void trackProductView(List<ProductInfo> products, UserInfo user) {
try {
JSONObject properties = new JSONObject();
properties.put("products", products.stream().map(productInfo -> productInfo.getName()).collect(Collectors.toList()));
JSONObject view = messageBuilder.event(user.getUsername(), "View", properties);
ClientDelivery delivery = new ClientDelivery();
delivery.addMessage(view);
MixpanelAPI mixpanel = new MixpanelAPI();
mixpanel.deliver(delivery);
mixpanel.sendMessage(mapToUserJSONObject(user));
} catch (Exception e) {
LOGGER.error("Error occurred while tacking", e);
}
}
示例7: setUp
import com.mixpanel.mixpanelapi.MixpanelAPI; //导入依赖的package包/类
@Before
public void setUp() throws Exception {
MediaFileUtil mediaFileUtil = new MediaFileUtil();
mediaFileTestUtil = new MediaFileTestUtil(mediaFileUtil);
Calendar calendar = new GregorianCalendar();
DateToFileRenamer dateToFileRenamer = new DateToFileRenamer(calendar);
MessageBuilder messageBuilder = mock(MessageBuilder.class);
MixpanelAPI mixpanel = mock(MixpanelAPI.class);
FileDateInterpreter fileDateInterpreter = new FileDateInterpreter(mixpanel,
"",
messageBuilder);
mediaFileOutputForecaster = new MediaFileOutputForecaster(dateToFileRenamer,
fileDateInterpreter);
}
示例8: setUp
import com.mixpanel.mixpanelapi.MixpanelAPI; //导入依赖的package包/类
@Before
public void setUp() throws Exception {
readFilesFeedbackInterface = mock(ReadFilesFeedbackInterface.class);
preMoveFeedback = mock(PreMoveFeedbackInterface.class);
MediaFileUtil mediaFileUtil = new MediaFileUtil();
mediaFileTestUtil = new MediaFileTestUtil(mediaFileUtil);
Calendar calendar = new GregorianCalendar();
DateToFileRenamer dateToFileRenamer = new DateToFileRenamer(calendar);
MessageBuilder messageBuilder = mock(MessageBuilder.class);
MixpanelAPI mixpanel = mock(MixpanelAPI.class);
FileDateInterpreter fileDateInterpreter = new FileDateInterpreter(mixpanel,
"",
messageBuilder);
MediaFileOutputForecaster mediaFileOutputForecaster;
mediaFileOutputForecaster = new MediaFileOutputForecaster(dateToFileRenamer,
fileDateInterpreter);
outputToMediaFileMapper = new OutputToMediaFileMapper(mediaFileOutputForecaster);
}
示例9: setUp
import com.mixpanel.mixpanelapi.MixpanelAPI; //导入依赖的package包/类
@Before
public void setUp() throws Exception {
MediaFileTestUtil mediaFileTestUtil = new MediaFileTestUtil(new MediaFileUtil());
imageWithDate = new File(mediaFileTestUtil.getTestInputPath() +
File.separator + "2013" +
File.separator + "snapchat" +
File.separator + "2013-10-03 13.43.20-kaffe.jpg");
imageWithoutDate = new File(mediaFileTestUtil.getTestInputPath() +
File.separator +
"nixon on raindeer - no date.jpg");
videoWithDate = new File(mediaFileTestUtil.getTestInputPath() +
File.separator +
"2014-03-16 10.45.09.mp4");
trickySnapchatImage = new File(mediaFileTestUtil.getTestInputPath() +
File.separator +
"tricky-snapchat-image.jpg");
MessageBuilder messageBuilder = mock(MessageBuilder.class);
MixpanelAPI mixpanel = mock(MixpanelAPI.class);
fileDateInterpreter = new FileDateInterpreter(mixpanel, "", messageBuilder);
}
示例10: FindDuplicatesTabController
import com.mixpanel.mixpanelapi.MixpanelAPI; //导入依赖的package包/类
public FindDuplicatesTabController(final MixpanelAPI mixpanel,
final String sessionUniqueID,
final MessageBuilder messageBuilder,
final TabSwitcher tabSwitcher,
final Tab tab,
final AnchorPane loadingScene,
final AnchorPane resultScene,
final Text tabLoadingText,
final ProgressBar tabProgressBar,
final TextArea folderTextArea) {
this.mixpanel = mixpanel;
this.sessionUniqueID = sessionUniqueID;
this.messageBuilder = messageBuilder;
this.tabSwitcher = tabSwitcher;
this.tab = tab;
this.loadingScene = loadingScene;
this.resultScene = resultScene;
this.tabLoadingText = tabLoadingText;
this.tabProgressBar = tabProgressBar;
this.folderTextArea = folderTextArea;
}
示例11: setUp
import com.mixpanel.mixpanelapi.MixpanelAPI; //导入依赖的package包/类
@Before
public void setUp() throws Exception {
fileSystemPrettyPrinter = new FileSystemPrettyPrinter();
MediaFileUtil mediaFileUtil = new MediaFileUtil();
mediaFileTestUtil = new MediaFileTestUtil(mediaFileUtil);
Calendar calendar = new GregorianCalendar();
DateToFileRenamer dateToFileRenamer = new DateToFileRenamer(calendar);
MessageBuilder messageBuilder = mock(MessageBuilder.class);
MixpanelAPI mixpanel = mock(MixpanelAPI.class);
FileDateInterpreter fileDateInterpreter = new FileDateInterpreter(mixpanel,
"",
messageBuilder);
MediaFileOutputForecaster mediaFileOutputForecaster;
mediaFileOutputForecaster = new MediaFileOutputForecaster(dateToFileRenamer,
fileDateInterpreter);
readFilesFeedbackInterface = new ImageSortReadFilesInFolderFeedback();
preMoveFeedback = new ImageSortPreMoveProgressFeedback(new FileSystemPrettyPrinter());
outputToMediaFileMapper = new OutputToMediaFileMapper(mediaFileOutputForecaster);
mediaFileToOutputMapper = new MediaFileToOutputMapper(new MediaFileHashGenerator(),
mediaFileUtil);
}
示例12: trackPurchase
import com.mixpanel.mixpanelapi.MixpanelAPI; //导入依赖的package包/类
@Override
public void trackPurchase(OrderInfo order) {
try {
ClientDelivery delivery = mapToPurchaseDelivery(order);
JSONObject user = mapToUserJSONObject(order.getUser());
MixpanelAPI mixpanel = new MixpanelAPI();
mixpanel.deliver(delivery);
mixpanel.sendMessage(user);
} catch (Exception e) {
LOGGER.error("Error occurred while tacking", e);
}
}
示例13: TabGroupController
import com.mixpanel.mixpanelapi.MixpanelAPI; //导入依赖的package包/类
public TabGroupController() {
Injector injector = Guice.createInjector(new ImageModule());
googleAnalytics = injector.getInstance(GoogleAnalytics.class);
messageBuilder = injector.getInstance(MessageBuilder.class);
mixpanel = new MixpanelAPI();
sessionUniqueID = UUID.randomUUID().toString();
}
示例14: SelectFolderTabController
import com.mixpanel.mixpanelapi.MixpanelAPI; //导入依赖的package包/类
public SelectFolderTabController(final MixpanelAPI mixpanel,
final String sessionUniqueID,
final MessageBuilder messageBuilder,
final PreMoveFeedbackInterface preMoveFeedback,
final ReadFilesFeedbackInterface readFilesFeedbackInterface,
final FindDuplicatesFeedbackInterface findDuplicatesFeedbackInterface,
final TabSwitcher tabSwitcher,
final Button selectFolderButton,
final Button continueButton,
final Text selectedFolderPathText,
final Button findDuplicatesContinueButton) {
this.mixpanel = mixpanel;
this.sessionUniqueID = sessionUniqueID;
this.messageBuilder = messageBuilder;
this.preMoveFeedback = preMoveFeedback;
this.readFilesFeedbackInterface = readFilesFeedbackInterface;
this.findDuplicatesFeedbackInterface = findDuplicatesFeedbackInterface;
this.tabSwitcher = tabSwitcher;
this.selectFolderButton = selectFolderButton;
this.continueButton = continueButton;
this.selectedFolderPathText = selectedFolderPathText;
this.findDuplicatesContinueButton = findDuplicatesContinueButton;
Injector injector = Guice.createInjector(new ImageModule());
imageSorter = injector.getInstance(ImageSorter.class);
setUpListeners();
}
示例15: PreMoveTabController
import com.mixpanel.mixpanelapi.MixpanelAPI; //导入依赖的package包/类
public PreMoveTabController(final MixpanelAPI mixpanel,
final String sessionUniqueID,
final MessageBuilder messageBuilder,
final MoveFeedbackInterface moveFeedback,
final TabSwitcher tabSwitcher,
final Tab preMoveTab,
final AnchorPane preMoveLoadingScene,
final AnchorPane preMoveResultScene,
final Text preMoveTabLoadingText,
final ProgressBar preMoveTabProgressBar,
final TextArea preMoveFolderTextArea,
final ButtonBase moveImagesButton) {
this.mixpanel = mixpanel;
this.sessionUniqueID = sessionUniqueID;
this.messageBuilder = messageBuilder;
this.moveFeedback = moveFeedback;
this.tabSwitcher = tabSwitcher;
this.preMoveTab = preMoveTab;
this.preMoveLoadingScene = preMoveLoadingScene;
this.preMoveResultScene = preMoveResultScene;
this.preMoveTabLoadingText = preMoveTabLoadingText;
this.preMoveTabProgressBar = preMoveTabProgressBar;
this.preMoveFolderTextArea = preMoveFolderTextArea;
this.moveImagesButton = moveImagesButton;
Injector injector = Guice.createInjector(new ImageModule());
imageSorter = injector.getInstance(ImageSorter.class);
fileSystemPrettyPrinter = injector.getInstance(FileSystemPrettyPrinter.class);
setUpListeners();
}