• AndroidStudio将html5打包成apk


    我想将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>
  • 相关阅读:
    vue与react的区别
    for(key in obj)
    github上传项目
    第一个blog
    黑客几乎绝不用鼠标?
    中国白帽黑客调查
    编程新手六部曲
    程序猿看了要xiao了
    程序是如何执行的?
    IT 技术人需要思考的 15 个问题
  • 原文地址:https://www.cnblogs.com/tc310/p/9599433.html
Copyright © 2020-2023  润新知