我正在建立一个.aar库,其中包含使用Ionic构建的活动。该平台已从Ionic平台构建迁移到Android Studio以构建aar。
.aar中的MainActivity正在扩展android.app.Activity类,而不是CordovaActivity。这是为了允许使用.aar的外部android应用调用嵌入在.aar中的活动。
我在调用Ionic活动时遇到了困难,因为index.html静态显示。如何使用仍然允许其像Ionic页面一样流动的WebView从MainActivity调用Ionic页面?
我尝试调用index.html,但它显示一个静态的空白页面。 我试图放入Javascript来加载主页,但效果不佳。 我尝试使用深层链接,但由于它位于.aar中,因此找不到。
我的代码:
import android.os.Bundle;
import org.apache.cordova.*;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.webkit.WebSettings;
import android.app.Activity;
public class MainActivity extends Activity //this is changed from CordovaActivity
{
String launchUrl = "";
WebView mWebview = null;
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
launchUrl = "file:///android_asset/www/index.html"; //call the page
mWebview = new WebView(this);
mWebview.getSettings().setJavaScriptEnabled(true); // enable javascript
WebSettings webSetting = mWebview.getSettings();
webSetting.setBuiltInZoomControls(true);
webSetting.setJavaScriptEnabled(true);
mWebview.setWebViewClient(new WebViewClient());
mWebview.loadUrl(launchUrl); //this just displays static empty index.html
setContentView(mWebview );
}
}
答案 0 :(得分:0)
最后,我不得不从Cordova Activity重写loadUrl并将其插入Activity类。这是我猜想在Cordova Activity的解析中使用Activity类的唯一方法。 谢谢。