コードから*.apkファイルを作成し、そのファイルをIISに配置して、多数のAndroidフォンにダウンロードすることができました。インストールすると、アプリケーションは期待どおりに動作します。
ただし、電話を再起動した後、アプリケーション名はメニュー内のアクティビティの完全なJavaクラス名に変更され(したがって、「MyActivity」は「com.mycompany.MyActivity」になります)、メニューに移動しようとすると>設定、Androidがアプリケーションを強制的に閉じる原因となるエラーが発生します。
DDMSを調べると、初期インストール時の事実にもかかわらず、設定アクティビティが見つからないことを示すエラーが表示されますが、正しく機能しています。
私はWindowsXPでEclipseを使用しており、テスト用にいくつかのAndroidデバイスを自由に使用できます。
何が起こっているのか分かりますか?
AndroidManifest.xml:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.company.app"
android:versionCode="1"
android:versionName="1.0">
<application android:icon="@drawable/logo" android:label="@string/app_name"> <!--android:debuggable="true">-->
<activity android:name="com.company.app.ActivityMain"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name="com.company.app.Preferences"
android:label="@string/app_settings">
<intent-filter>
<category android:name="android.intent.category.PREFERENCE"></category>
<action android:name="android.intent.action.MAIN"></action>
</intent-filter>
</activity>
<service android:name="com.company.app.Service"></service>
</application>
<uses-sdk android:minSdkVersion="3" />
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
</manifest>