2014-03-04 24 views
0

我正在與Sencha Touch一起工作,但這是更普遍的問題。本機打包的應用程序中的Android輸入類型文件

我已經實現了一個簡單的html輸入類型文件的圖像文件上傳示例。

從Android瀏覽器(如Chrome)運行示例時,當按下選擇文件按鈕時,相機將顯示爲獲取文件的選項。但是,如果我通過Phonegap打包應用程序,當按下按鈕時,只能選擇文件管理器和類似的應用程序。

此外,我已嘗試輸入類型文件,接受圖像/ *和捕獲相機沒有成功。

呈現頁面的Android WebView是否可能與Chrome視圖不兼容?

我還有另一個標準選項來選擇使用Phonegap的攝像頭嗎?

謝謝!

+0

不使用輸入類型文件,它在Android 4.4上壞了http://stackoverflow.com/questions/19882331/html-file-input-in-android-webview-android-4-4-kitkat – jcesarmobile

+0

嘿@gonzalomelov,只是想知道你是否發現了有關你的情況的任何有用信息?我和你的設置完全相同(ST2 + phonegap),並且有完全相同的問題。我在這裏找到的大多數答案都是無關緊要的,因爲人們提出的建議是「使用2個按鈕」或「用一堆代碼捕獲webview中的意圖」等等。我只想知道,如果可能我缺少一個簡單的設置/配置,或者我將不得不重新設計我的捕獲工作流程。 – JChow

+0

@JChow,我搜索了很多,但沒有成功。我們開發的最終解決方案包括兩個按鈕和Phonegap Camera插件。如果Android允許像iOS那樣的打包應用程序的輸入標籤,那將會很棒。乾杯! – gonzalomelov

回答

0

我很驚訝PhoneGap沒有公開一個處理這個函數的函數 - 他們當然要求在陽光下獲得所有權限!

,如果你正在創建的網頁,你當然可以定義一個js接口,又會做startActivityForResult,像這樣:

today.setToNow(); 
    PackageManager pm = getPackageManager(); 
// if (locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER)) 
// { 
     Intent i = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE); 
     i.putExtra(MediaStore.EXTRA_OUTPUT, FileContentProvider.CONTENT_URI);  
     if (pm.hasSystemFeature(PackageManager.FEATURE_CAMERA)) 
      i.putExtra("camerasensortype", 1); // call the rear camera   
     else if (pm.hasSystemFeature(PackageManager.FEATURE_CAMERA_FRONT)) 
      i.putExtra("camerasensortype", 2); // call the front camera   
     else Toast.makeText(getBaseContext(), "Camera is not available", Toast.LENGTH_LONG).show(); 
     i.putExtra("autofocus", true); 
     i.putExtra("fullScreen", false); 
     i.putExtra("showActionIcons", false); 
     startActivityForResult(i, CAMERA_REQUEST); 
// }  
    else askForGPS(this); 

然後

@Override 
protected void onActivityResult(int requestCode, int resultCode, Intent data) 
{ 
    super.onActivityResult(requestCode, resultCode, data); 
    if (resultCode == RESULT_OK && requestCode == CAMERA_REQUEST) 
    {...} 

甚至不需要實現一個接口=]

然後你有你的照片;設置一個ContentProvider並指向你的上傳者。 =]

相關問題