我想將html5的動畫效果打包成手機app,以方便傳播。而在android開發的組件中就直接由webview可以訪問網頁,另外在android工程中,assets文件夾下的內容是不會在被編譯的,因此可以將已經做好的html5的項目放在該文件夾下,由webview控件打開該文件夾下的index.html,這樣就可以實現html5打包成安卓的apk了。
1、修改MainActivity.java,內容如下:
package com.example.admin.yourProjectName;//改成你的項目名 import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.app.Activity; import android.view.KeyEvent; import android.webkit.WebView; public class MainActivity extends AppCompatActivity { private WebView webview; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //實例化WebView對象 webview = new WebView(this); //設置WebView屬性,能夠執行Javascript腳本 webview.getSettings().setJavaScriptEnabled(true); //加載需要顯示的網頁 //webview.loadUrl("file:///android_asset/index.html");//顯示本地網頁 webview.loadUrl("https://www.baidu.com");//顯示遠程網頁 //設置Web視圖 setContentView(webview); } @Override//設置回退 public boolean onKeyDown(int keyCode, KeyEvent event) { if ((keyCode == KeyEvent.KEYCODE_BACK) && webview.canGoBack()) { webview.goBack(); //goBack()表示返回WebView的上一頁面 return true; } return false; } } 注:如若顯示本地網頁,需要在Project視圖中app文件夾上右鍵->new->Folder->Assets Folder. 然后將本地網頁的各個文件復制到生成的assets文件夾下,將 webview.loadUrl("file:///android_asset/........."); 改為 對應的本地Url即可。
2、 修改在AndroidManifest.xml文件中添加訪問網絡的權限:在標簽前添加
<uses-permission android:name="android.permission.INTERNET"/>
即可。
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.admin.yourProject">
<application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:supportsRtl="true" android:theme="@style/AppTheme">
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
<uses-permission android:name="android.permission.INTERNET"/>
</manifest>