Google Fit перестал работать, Fitness.HistoryApi.insertData возвращает успех, но не отображается в приложении Google Fit

Код, реализованный в моем приложении, когда-то работал, данные вставлялись/отображались в Google Fit корректно, а сейчас не работает.

Я также протестировал BasicHistoryApi, но он не работает.(https://github.com/googlesamples/android-fit) Снимок экрана, на котором это тестовое приложение не возвращает ошибок: введите здесь описание изображения

Скажите, пожалуйста, используете ли вы этот метод Fitness.HistoryApi.insertData() и он работает правильно, потому что я не могу найти никакого решения, чтобы заставить его работать.

Этот фрагмент кода возвращает "успех", но никаких изменений в моем Google Fit:

		DataSet runningDataSet = DataSet.create(runningDataSource);
		runningDataSet.add(runningDataSet.createDataPoint().setTimeInterval(
				startTime, endTime, TimeUnit.MILLISECONDS));

		Session session = new Session.Builder().setName("TEST " + startTime)
				.setDescription("Test description")
				.setIdentifier("TEST " + " - " + startTime)
				.setActivity(FitnessActivities.RUNNING_JOGGING)
				.setStartTime(startTime, TimeUnit.MILLISECONDS)
				.setEndTime(endTime, TimeUnit.MILLISECONDS).build();

		SessionInsertRequest insertRequest = new SessionInsertRequest.Builder()
				.setSession(session).addDataSet(runningDataSet).build();

		Log.i(TAG, "Inserting the session in the History API");
		com.google.android.gms.common.api.Status insertStatus = Fitness.SessionsApi
				.insertSession(MainActivity.getFitnessClient(), insertRequest)
				.await(1, TimeUnit.MINUTES);

		if (!insertStatus.isSuccess()) {
			Log.i(TAG, "There was a problem inserting the session: "
					+ insertStatus.getStatusMessage());


person Kinga l    schedule 10.03.2015    source источник
comment
Было бы полезно, если бы вы опубликовали важную часть исходного кода   -  person msrd0    schedule 10.03.2015


Ответы (2)


Наконец, я решил эту проблему, заменив ".setDataType(DataType.TYPE_ACTIVITY_SEGMENT)" на ".setDataType(DataType.TYPE_SPEED)", и мне пришлось добавить новое разрешение: "addScope(new Scope(Scopes.FITNESS_LOCATION_READ_WRITE))"

person Kinga l    schedule 11.03.2015

Вы не даете многого, но в аутентификацию внесены изменения. См. объявление на странице G+ для разработчиков Google Fit.

person Ifor    schedule 10.03.2015
comment
Спасибо, фитнес-API был настроен, как описано здесь: developers.google.com/ подходит/андроид/ - person Kinga l; 11.03.2015
comment
Я проверил проблему с производственной и отладочной сборкой. Я создал тестовое приложение и отдельный проект для него в Google API Console. Код перестал работать несколько недель назад. - person Kinga l; 11.03.2015