1

私は Android ブラウザで WebView をいじっていますが、ローカル デバイスのカメラと GPS を使用するためにブラウザと html5 を一緒に使用したことがある人はいますか? または、このために Java ソース コードへの Javascript 接続を行う必要がありますか?

これはIOSでも機能しますか?

これは、PhoneGap を使用しない場合です。

最高、ヘンリック

4

3 に答える 3

2

少し遅れるかもしれませんが、念のためにその例を示します。(カメラ)

1////これをwebChromeClientに追加します

myWebView.setWebChromeClient(new WebChromeClient() 
{
    public void openFileChooser( ValueCallback<Uri> uploadMsg, String acceptType ) 
    { 
        mUploadMessage = uploadMsg;
        Intent cameraIntent = new Intent("android.media.action.IMAGE_CAPTURE");
        Calendar cal = Calendar.getInstance();
        cal.getTime();
        SimpleDateFormat sdf = new SimpleDateFormat("HHmmss");
        File photo = new File(Environment.getExternalStorageDirectory(), sdf.format(cal.getTime()) +".jpg");
        cameraIntent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(photo));
        picUri = Uri.fromFile(photo);
        startActivityForResult(cameraIntent, TAKE_PICTURE);                 
    }
}); 

2///この関数を追加

@Override
public void onActivityResult(int requestCode, int resultCode, Intent data)
{
    switch(requestCode)
    {
        case TAKE_PICTURE:
            if(resultCode == Activity.RESULT_OK)
            {
                Uri mypic = picUri;
                mUploadMessage.onReceiveValue(mypic);
                mUploadMessage = null;
            }
            else
            {
                mUploadMessage.onReceiveValue(null);
                mUploadMessage = null;
                return;
            }

        default:
        {
            return;
        }   
    }
}   

3//そしてHTMLはこのようになります

<input type="file" id="files" name="files"  accept="image/*" capture="camera" >

上記のコードは、ネイティブカメラアプリを開きます。

PSこれは、さまざまなソースからのコードの組み合わせです。

于 2013-03-06T23:58:31.527 に答える