如何将POWER BI嵌入到APP里?

发布时间 2023-04-10 16:45:36作者: herry507

在finereport中的话可以通过web页面集成来进行实现,将报表显示下iframe框架内进行集成就可以了,

如果是在powei-bi的话有如下几种方法:

1、android webview控件加载html5;

2、即webview基于webkit内核支持html5;

3、进行做自定义屏幕适应调试和测试!

 

基础使用
WebView控件使用寄来挺简单,无非是在视图中添加该控件,然后在代码中设置控件相关属性并加载要加载的网页,最后需要开启相关权限。下面是个简单的示例:

activity_main.xml 文件:

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout 省略若干... >

<!-- 添加WebView对象 -->
<WebView
android:id="@+id/webview"
android:layout_width="match_parent"
android:layout_height="match_parent" />

</androidx.constraintlayout.widget.ConstraintLayout>

MainActivity.java 文件:

package com.example.myapplication;

import androidx.appcompat.app.AppCompatActivity;

import android.annotation.SuppressLint;
import android.os.Bundle;
import android.webkit.WebSettings;
import android.webkit.WebView;

public class MainActivity extends AppCompatActivity {

@SuppressLint("SetJavaScriptEnabled") // 忽略使能JS警告
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN); //隐藏状态栏
setContentView(R.layout.activity_main);

WebView myWebView = findViewById(R.id.webview); // 获取WebView控件
WebSettings webSettings = myWebView.getSettings();
webSettings.setJavaScriptEnabled(true); // 使加载的网页可以运行JS代码
myWebView.loadUrl("https://html5test.com/"); // 加载网页链接
// https://html5test.com/是一个测试Html功能兼容性的网站
// 你要是喜欢也可以使用https://www.baidu.com/等
}
}

AndroidManifest.xml 文件:

<?xml version="1.0" encoding="utf-8"?>
<manifest 省略若干... >

<!-- 下面一行使APP可以访问网络内容 -->
<uses-permission android:name="android.permission.INTERNET" />

<application
<!-- 使用没有标题栏的主题来去除标题栏 -->
android:theme="@style/Theme.AppCompat.NoActionBar"
<!-- 下面一行使WebView可以访问基于HTTP协议的明文内容 -->
android:usesCleartextTraffic="true"
<!-- 省略若干... -->
</application>

</manifest>

WebView使用基本上要涉及的东西都在上面演示中展示了,主要分为三个方面:

在界面中放置WebView控件;
在代码中设置WebView功能及需要加载的内容;
在APP配置中启用相关权限;
前面演示中配置加载的网页可以使用JS代码,通常来说现在的网页为了获得更好的效果或是更多的功能通常都会有JS代码,所以这个功能基本上都需要打开。需要注意的是这会降低安全性,具体使用时需要根据实际情况来设置。

上面的 WebSettings 除了可以用来设置是否启用JS外,还有非常多的功能可以设置,比如是否可以缩放,是否可以跨域,是否可以缓存等功能,这些都可能是在一定应用下比较重要的功能。详细的内容可以参考下面链接:
https://developer.android.google.cn/reference/kotlin/android/webkit/WebSettings
————————————————版权声明:本文为CSDN博主「Naisu Xu」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/Naisu_kun/article/details/127243840