2017-07-09 3 views
1

私はアプリケーションをAndroidの携帯電話のみで、タブレットでは動作させないようにしたいので、xpermissionsでAndroid用の電話でアプリを動作させるために、次のビルドヒントテレフォニー() ""Androidビルドビルドヒントテレフォニーで失敗し続ける

私は電話機のヒントがfalse(デフォルト)で2回追加され、生成されたXMLを添付しています。真に追加された複製(私によって追加されました)。デフォルトのビルドを置き換えるオプションはどこにありますか分かりませんヒントは偽の値で追加されました。私はそれがサーバー上でビルドに失敗する問題を引き起こしていたと思っています。

生成された以下のログ見つけてください:

<receiver android:name="com.codename1.impl.android.LocalNotificationPublisher" ></receiver> 
    <service android:name="com.codename1.impl.android.BackgroundFetchHandler" android:exported="false" /> 
    <activity android:name="com.codename1.impl.android.CodenameOneBackgroundFetchActivity" android:theme="@android:style/Theme.NoDisplay" /> 
    <activity android:name="com.codename1.location.CodenameOneBackgroundLocationActivity" android:theme="@android:style/Theme.NoDisplay" /> 
    <service android:name="com.codename1.location.BackgroundLocationHandler" android:exported="false" /> 
    <service android:name="com.codename1.location.GeofenceHandler" android:exported="false" /> 
    <service android:name="com.codename1.media.AudioService" android:exported="false" /> </application> 
<uses-feature android:name="android.hardware.touchscreen" android:required="false" /> 
<uses-feature android:name="android.hardware.telephony" android:required="false" /> 
<uses-permission android:name="android.permission.INTERNET" android:required="false" /> 
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" android:required="false" /> 
<uses-feature android:name="android.hardware.location" android:required="false" /> 
<uses-feature android:name="android.hardware.location.gps" android:required="false" /> 
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" android:required="false" /> 
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" android:required="false" /> 
<uses-permission android:name="android.permission.ACCESS_MOCK_LOCATION" android:required="false" /> 
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/><uses-feature android:name="android.hardware.telephony"/></manifest> 
+0

XMLの開始括弧とその追加方法を説明するのは難しいです。これをプロパティファイルに直接追加した場合は、これを正しく実行していない可能性があります。ビルド失敗のログは、マニフェスト用に生成された完全なXMLを出力するので、私たちが得た情報を見ることができます。私たちは完全なログが必要になります。 –

+0

Shai、。私は生成されたXMLファイルを更新し、電話機のヒントがデフォルトでfalseに追加されていることに気が付いたので、ヒントをもう一度付け加えました。問題の原因となる偽が自動的にどこに追加されるのかわからない。 codename1.arg.android.xpermissionsにビルドヒントを追加する必要がありますか? – user1678742

+0

問題をよりよく理解するために、問題の説明を更新しました。同じ問題を抱えている人なら誰でも教えてください – user1678742

答えて

0

あなたは既に含まれていますマニフェストエントリを含めるべきではありません。私たちは常に依存関係を必要に応じてマークしますfalse。つまり、権限が必要ですが、権限が取り消されてもアプリケーションは失敗しません。一般的には、trueの必須フラグは、おそらくクロスプラットフォームアプリケーションでは間違いであるため、一般的には良い方法です。

+0

その場合、タブレットではなく、携帯電話向けにのみアプリをリリースしたい場合はどうすればよいですか。さまざまな画面サイズの携帯電話でAppを動作させるには、どのようなAndroid権限を使用する必要がありますか。 – user1678742

+0

これは電話機のサイズとどう関係しているのですか? –

+0

Shai、私はcodenameone_settings.propertiesファイルにIOSのリリースのためのビルドヒントを使って、アプリケーションをiphoneにのみインストールし、ipadではインストールしないようにしています.Ipadのような大きな画面でアプリケーションをダウンロードするのを回避するためにテレフォニービルドヒントを使用しています。 UIRequiredDeviceCapabilitiesテレフォニー同様、私が使用するために、<使用し、機能のアンドロイドを:名前= "android.hardware.telephony" アンドロイド:/必要= "真">しようとしているGoogle Playのため、アプリケーションは、Androidにインストールされるように携帯電話のみ、タブレットにはインストールされません。しかし、私はtrueにfalseを上書きすることはできません。私は間違っている – user1678742

関連する問題