2016-03-31 4 views
0

Im пытается создать Ti.Healthkit.StatisticsCollection, где я могу получить количество шагов, сделанных сгруппированными в день. Дело в том, что мне также нужны все источники, поэтому я могу фильтровать («вручную») все шаги, добавленные через Apple Health (вручную) и другие источники, кроме устройств и часов Apple.Titanium HealthKit Module - Невозможно создать Статистику с кумулятивными и отдельными по источнику

So; Я настроил запрос статистики, все выглядит нормально. Я могу получить все источники для каждой даты. НО, вот что, я не могу, несмотря ни на что, получить количество шагов, предпринятых за источник.

var query = HealthKit.createStatisticsCollectionQuery(
    { 
     type  : HealthKit.OBJECT_TYPE_STEP_COUNT, 
     filter  : HealthKit.createFilterForSamples(
     { 
      startDate : date_from, 
      endDate  : date_to 
     }), 
     options  : HealthKit.STATISTICS_OPTION_CUMULATIVE_SUM | HealthKit.STATISTICS_OPTION_SEPARATE_BY_SOURCE, 
     anchorDate : anchorDate, 
     interval : 3600*24, // 24 hours 
     onInitialResults : function(e) 
     { 
      if (e.errorCode !== undefined) 
      { 
       //Utils.showError(e); 
      } 
      else 
      { 
       for(var i in e.statisticsCollection.statistics) 
       { 
        var statistics = e.statisticsCollection.statistics[i]; 
        console.log(statistics.sources[0]); 
        var quantity = statistics.getSumQuantityForSource(statistics.sources[0]); 


        var stepCount = quantity.valueForUnit(HealthKit.createUnit('count')); 

        console.log(statistics.sources); 
        //console.log(statistics.startDate); 
        console.log(stepCount); 

        for(var k in statistics.sources) 
        { 
         var _source = statistics.sources[k]; 


         var quantity = statistics.getSumQuantity(_source); 

         console.log(_source); 
         console.log(quantity); 

Я пытался следовать документации компании Apple, а также Ti.HealthKit документы, и, насколько я могу видеть, я попробовал все и сейчас. Я также попытался выполнить шаги, пока я повторяю все источники, чтобы поместить их в метод статистики;

sumQuantityForSource (_source)

но только возвращает "нулевой".

я могу получить число шагов в день, но она содержит все источники шагов ..

Кто-нибудь есть какие-либо предложения, что попробовать? Я чувствую, что я пробовал все возможное.

ответ

1

well okey, я работал с этим в течение 5 часов и 10 минут после этого сообщения. Я узнал, что я сделал не так. Я должен был бы проверить, было ли значение «количество» равно null (var quantity = statistics.getSumQuantity (_source);) и просто продолжить следующую итерацию, потому что по массиву результатов я удаляю источники с помощью шагов.