我有一些问题。所以在过去的两周里我一直在开发一个导航应用程序,并将它发送给几个人进行 beta 测试。他们中的一些人在从电子邮件附件中安装 .apk 时遇到“解析错误”,其他人安装良好且运行完美,而其他人则应用程序将强制随机关闭。问题是什么?
我使用 jquery 移动框架和最新版本的 phonegap 以及用于谷歌地图的 jquery 移动插件开发了该应用程序。我不认为是我的 html5 标记导致应用程序出现问题,我认为这可能与我的清单文件有关?
此外,如果它有任何区别,每当我使用虚拟模拟器运行应用程序时,我都会收到 OpenGL 或类似的错误消息,无法加载顶点着色器。
这是我的清单文件的副本,以及我的应用程序的源文件..
显现:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.slammednavigator"
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-sdk android:minSdkVersion="3" android:targetSdkVersion="4"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:hardwareAccelerated="true" >
<activity
android:name=".SlammedNavigatorActivity"
android:label="@string/app_name"
android:configChanges="orientation|keyboardHidden" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name="org.apache.cordova.DroidGap"
android:label="@string/app_name"
android:configChanges="orientation|keyboardHidden" >
<intent-filter>
</intent-filter>
</activity>
</application>
</manifest>
这是我的 phonegap 源文件,它初始化并运行 assets/www 中的 html5 部分
package com.slammednavigator;
import android.os.Bundle;
import org.apache.cordova.*;
import android.content.Context;
import android.os.PowerManager;
import android.view.WindowManager;
public class SlammedNavigatorActivity extends DroidGap {
private PowerManager.WakeLock wLock;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
super.loadUrl("file:///android_asset/www/index.html");
PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
wLock = pm.newWakeLock(PowerManager.SCREEN_DIM_WAKE_LOCK, "SN Wake Lock");
wLock.acquire();
}
public void onDestroy() {
wLock.release();
}
}