У меня проблемы с встраиванием моего защищенного отчета в мое приложение Xamarin.Forms с использованием WebView.Я понимаю, что Power BI Embedded можно загружать на веб-страницу с помощью JavaScript API.Моя логика заключалась в том, что это может быть достигнуто в Xamarin.Forms через WebView.
У меня есть доступ к токену вставки Power BI, URL-адресу для встраивания и идентификатору отчета.Мой текущий метод заключается в сохранении локального файла HTML с необходимыми параметрами для JavaScript в WebView для отображения встроенного отчета.
Я использую следующий JavaScript, чтобы попытаться загрузить отчет в локальный HTML:
<script>
// Read embed application token from Model
var accessToken = "<<ACCESS_TOKEN>>"
// Read embed URL from Model
var embedUrl = "<<EMBED_URL>>";
// Read report Id from Model
var embedReportId = "<<REPORT_ID>>";
// Get models. models contains enums that can be used.
var models = window['powerbi-client'].models;
var config = {
type: 'report',
tokenType: models.TokenType.Embed,
accessToken: accessToken,
embedUrl: embedUrl,
id: embedReportId,
permissions: models.Permissions.All,
settings: {
layoutType: models.LayoutType.MobilePortrait
}
};
// Get a reference to the embedded report HTML element
var reportContainer = $('#reportContainer')[0];
// Embed the report and display it within the div container.
var report = powerbi.embed(reportContainer, config);
</script>
В этом фрагменте указаны все необходимые библиотеки JavaScript.
Когда страница инициализирована, WebView содержит HTML-код с отчетом, который не отображается в назначенном <div>
.Я подозреваю, что JavaScript для загрузки встроенного отчета не запускается в Xamarin WebView.
Можно ли встраивать защищенные отчеты в приложение Xamarin.Forms?Является ли мой подход правильным способом достижения этого?Или есть лучший способ сделать это?