将网站转换为Android应用程序

时间:2012-02-08 19:09:23

标签: android android-intent google-play android-webview

我在asp.net C#中构建了一个站点。 Visual Studio 2010。

网站可以很好地扩展,适合我的手机和其他Android手机。它也是数据库驱动的。我想现在为我的网站制作Android市场的应用程序。免费的应用程序。

我可以轻松完成此操作吗?应用程序可以像启动浏览器窗口一样简单吗? Android市场会接受这样的应用吗?

请指出正确的方向。我不确定从哪里开始。

1 个答案:

答案 0 :(得分:27)

使用WebView可以轻松完成您所描述的内容。

WebView(来自android developers:显示网页的视图。此类是您可以在其中滚动自己的Web浏览器或仅在活动中显示一些在线内容的基础。它使用WebKit渲染引擎来显示网页,并包括在历史记录中前后导航,放大和缩小,执行文本搜索等方法。

这是一个简单的示例应用程序:

public class WebActivity extends Activity {

    WebView mWebView;

    @Override
    public void onCreate(Bundle savedInstanceState)
    {
        final Activity mActivity = this;
        super.onCreate(savedInstanceState);

        // Adds Progrss bar Support
        this.getWindow().requestFeature(Window.FEATURE_PROGRESS);
        setContentView(R.layout.main);


        // Makes Progress bar Visible
        getWindow().setFeatureInt( Window.FEATURE_PROGRESS, Window.PROGRESS_VISIBILITY_ON);

        mWebView = (WebView) findViewById( R.id.webview );
        mWebView.getSettings().setJavaScriptEnabled(true);     
        mWebView.loadUrl(http://your.url.com);


        mWebView.setWebChromeClient(new WebChromeClient() 
        {
            public void onProgressChanged(WebView view, int progress)  
            {
                //Make the bar disappear after URL is loaded, and changes string to Loading...
                mActivity .setTitle("Loading...");
                mActivity .setProgress(progress * 100); //Make the bar disappear after URL is loaded

                // Return the app name after finish loading
                if(progress == 100)
                {
                    financialPortalActivity.setTitle(R.string.yourWebSiteName);
                }
            }
        });
    }
}

和一个非常简单的布局文件:main.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical">

    <WebView 
        android:id="@+id/webview"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
    />
</LinearLayout>

当然,您必须在Manifest中设置权限:

 <uses-permission android:name="android.permission.INTERNET" />