由于打开相机时内存不足,phonegap Android 应用程序崩溃

发布于 2024-12-27 12:53:52 字数 2688 浏览 0 评论 0原文

我正在使用phonegap v1.3.0 开发一个android Phonegap 应用程序
我的应用程序有一个按钮,单击该按钮时使用phonegap api 启动相机,当用户捕获图像时返回照片路径。
但发生的情况是应用程序在相机返回之前崩溃,因此当相机返回时,应用程序将重新启动。所以我没有得到捕获的图像。

在检查日志时,我发现内核在相机启动后向我的应用程序发送 sigkill
需要注意的一点是,当我杀死所有正在运行的应用程序,然后启动我的应用程序并拍照时,它会正常返回而不会导致应用程序崩溃。
此问题类似于https://github.com/callback/phonegap/issues/5
请告诉我可能出了什么问题?

以下是日志 - https://github.com/ghostCoder/ Logs/blob/master/e2o.mobile-logs.txt
我的应用程序的名称是 e2o.mobile

以下是我的 manifest.xml 的内容--

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
  package="xyz.test"
  android:versionCode="1"
  android:versionName="1.0">


<supports-screens
    android:largeScreens="true"
    android:normalScreens="true"
    android:smallScreens="true"
    android:resizeable="true"
    android:anyDensity="true"
    />


<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-feature android:name="android.hardware.camera" />
<uses-feature android:name="android.hardware.camera.autofocus" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.RECORD_VIDEO"/>  
<uses-permission android:name="android.permission.STORAGE"/>  



<application android:debuggable="true" android:icon="@drawable/icon" android:label="@string/app_name">
   <activity android:configChanges="orientation|keyboardHidden" android:name=".Home" android:label="@string/app_name" android:launchMode="singleTop" android:imeOptions="actionSend|flagNoEnterAction">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>

    </activity>

<activity android:configChanges="orientation|keyboardHidden" android:name="com.phonegap.DroidGap" android:label="@string/app_name" android:launchMode="singleTop" android:imeOptions="actionSend|flagNoEnterAction">


</activity>
</application>
<uses-sdk android:minSdkVersion="7" />
</manifest>

I am developing an android phonegap app using phonegap v1.3.0
My app has a button which when clicks launches the camera using the phonegap api, when returns the photo path when the user captures the image.
But what is happening is that the app crashes before the camera returns, so when the camera returns, the app is restarted. So I dont get the image which was captured.

On checking the logs I see that the kernal sends sigkill to my app after the camera is launched.
A point to note is that when I kill all the running apps and then start my app and take a picture it returns normally without the app crashing.

This issue is similar to https://github.com/callback/phonegap/issues/5
Please tell me what could be going wrong?

Here are the logs - https://github.com/ghostCoder/Logs/blob/master/e2o.mobile-logs.txt
the name of my app is e2o.mobile

Here are the contents of my manifest.xml--

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
  package="xyz.test"
  android:versionCode="1"
  android:versionName="1.0">


<supports-screens
    android:largeScreens="true"
    android:normalScreens="true"
    android:smallScreens="true"
    android:resizeable="true"
    android:anyDensity="true"
    />


<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-feature android:name="android.hardware.camera" />
<uses-feature android:name="android.hardware.camera.autofocus" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.RECORD_VIDEO"/>  
<uses-permission android:name="android.permission.STORAGE"/>  



<application android:debuggable="true" android:icon="@drawable/icon" android:label="@string/app_name">
   <activity android:configChanges="orientation|keyboardHidden" android:name=".Home" android:label="@string/app_name" android:launchMode="singleTop" android:imeOptions="actionSend|flagNoEnterAction">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>

    </activity>

<activity android:configChanges="orientation|keyboardHidden" android:name="com.phonegap.DroidGap" android:label="@string/app_name" android:launchMode="singleTop" android:imeOptions="actionSend|flagNoEnterAction">


</activity>
</application>
<uses-sdk android:minSdkVersion="7" />
</manifest>

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

梦言归人 2025-01-03 12:53:52

将质量参数从 50 降低到 30 可以阻止相机 API 使我的 HTC Evo 上的应用程序崩溃。

Reducing the quality parameter from 50 to 30 stopped the camera API from crashing the app on my HTC Evo.

深海夜未眠 2025-01-03 12:53:52

尝试使用 targetWidth 和 targetHeight 减小图像大小。
使用 DestinationType FILE_URI。

Try to reduce image size with targetWidth and targetHeight.
Use DestinationType FILE_URI.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文