1

このAndroidデバイスを初めて使用していると言わざるを得ませんが、USBデバッグを設定しました。初めてアプリをインストールした後、変更が更新されないようなものです。

そのため、アプリはエミュレーターで動作します。

Xperia arc S(Sony Ericsson)デバイスにインストールしましたが、初めて動作しました。

次に、マニフェストで別のメインアクティビティを選択しましたが、このエラーが発生しました

ActivityManager: java.lang.SecurityException: Permission Denial: starting Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10000000 cmp=com.moob/.InitialMenuActivity } from null (pid=7195, uid=2000) requires null

しかし、それでもエミュレータで動作します!! モバイルデバイスでアプリをアンインストールしましたが、上記のエラーが発生します。

movileデバイスでアンインストールして再起動した後、マニフェストが変更される前に、機能していたバージョン(電話で手動で起動できますが、古いバージョンです)が再インストールされることに注意してください。

アプリを消去した後

Installing duelos_android.apk...
Success!
Starting activity com.moob.InitialMenuActivity on device 42583930325432573634
ActivityManager: Starting: Intent { act=android.intent.action.MAIN cat=

[android.intent.category.LAUNCHER] cmp=com.moob/.InitialMenuActivity }
ActivityManager: java.lang.SecurityException: Permission Denial: starting Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10000000 cmp=com.moob/.InitialMenuActivity } from null (pid=7195, uid=2000) requires null

マニフェスト-

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

    <uses-sdk android:minSdkVersion="8" />
    <uses-permission android:name="android.permission.VIBRATE"/>
    <uses-permission android:name="android.permission.INTERNET"></uses-permission>

    <application
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name" >
        <activity
            android:name=".SingleDuelActivity"
            android:screenOrientation="portrait"
            android:label="@string/app_name" >
        </activity>

        <activity
            android:name=".MultiDuelActivity"
            android:screenOrientation="portrait"
            android:label="@string/app_name" >
        </activity>

         <activity
            android:name=".GameClientActivity"
            android:screenOrientation="portrait"
            android:label="@string/app_name" >
        </activity>

        <activity
            android:name=".LoadingActivity"
            android:screenOrientation="portrait"
            android:label="@string/app_name" >

        </activity>

        <activity
            android:name=".Ranking"
            android:screenOrientation="portrait"
            android:label="@string/app_name" >

        </activity>  
         <activity
            android:name=".LogginActivity"
            android:screenOrientation="portrait"
            android:label="@string/app_name" >

        </activity>

         <activity
            android:name="com.moob.FB.FriendsList"
            android:screenOrientation="portrait"
            android:label="@string/app_name" >
        </activity>

        <activity
            android:name="com.moob.FB.Example"            
            android:label="@string/app_name" >
        </activity>

        <activity
            android:name=".InitialMenuActivity"
            android:screenOrientation="portrait"
            android:exported="true"
            android:label="@string/app_name" >
             <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>

        </activity>
    </application>

<uses-permission android:name="android.permission.BLUETOOTH" />
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />

</manifest>

ここでLogCat

    11-19 12:32:42.506: D/AndroidRuntime(7718): >>>>>> AndroidRuntime START com.android.internal.os.RuntimeInit <<<<<<
11-19 12:32:42.506: D/AndroidRuntime(7718): CheckJNI is OFF
11-19 12:32:42.506: D/dalvikvm(7718): creating instr width table
11-19 12:32:42.616: D/AndroidRuntime(7718): Calling main entry com.android.commands.pm.Pm
11-19 12:32:42.626: D/AndroidRuntime(7718): Shutting down VM
11-19 12:32:42.626: D/dalvikvm(7718): GC_CONCURRENT freed 101K, 71% free 299K/1024K, external 0K/0K, paused 1ms+1ms
11-19 12:32:42.626: D/dalvikvm(7718): Debugger has detached; object registry had 1 entries
11-19 12:32:42.626: I/AndroidRuntime(7718): NOTE: attach of thread 'Binder Thread #2' failed
11-19 12:32:42.746: D/AndroidRuntime(7728): >>>>>> AndroidRuntime START com.android.internal.os.RuntimeInit <<<<<<
11-19 12:32:42.746: D/AndroidRuntime(7728): CheckJNI is OFF
11-19 12:32:42.746: D/dalvikvm(7728): creating instr width table
11-19 12:32:42.866: D/AndroidRuntime(7728): Calling main entry com.android.commands.am.Am
11-19 12:32:42.866: I/ActivityManager(262): Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10000000 cmp=com.moob/.InitialMenuActivity } from pid 7728
11-19 12:32:42.866: W/ActivityManager(262): Permission denied: checkComponentPermission() reqUid=10158
11-19 12:32:42.866: W/ActivityManager(262): Permission Denial: starting Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10000000 cmp=com.moob/.InitialMenuActivity } from null (pid=7728, uid=2000) requires null

InitialMenuActivty(clickUnoとclickDosは私からのものではありません)

public class InitialMenuActivity extends Activity {
private static final String TAG = "TESTING";

    //menu para ir a configuracion, jugar solo, ranking, puntuacion y multplayer
/*
 * 
 * 
 * http://greendao-orm.com/
 * 
 * 
 * */

    private SQLiteDatabase db;
    private DaoMaster daoMaster;
    private DaoSession daoSession;
    private LogroDao daoLogro;
    private Cursor cursor;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.mainmenu);




    }
    public void clickUno(View target)
    {
        Log.d(TAG, "click 1");  
        DevOpenHelper helper = new DaoMaster.DevOpenHelper(this, "notes-db", null);
        db = helper.getWritableDatabase();
        daoMaster = new DaoMaster(db);
        daoSession = daoMaster.newSession();
        daoLogro = daoSession.getLogroDao();
        final DateFormat df = DateFormat.getDateTimeInstance(DateFormat.MEDIUM, DateFormat.MEDIUM);
        String comment = "logro en:" + df.format(new Date());
        daoLogro.insert(new Logro(null,comment,new Date()));
     /*   List<Logro> logros=daoLogro.queryBuilder().list();
        for (Iterator iterator = logros.iterator(); iterator.hasNext();) {
            Logro logro = (Logro) iterator.next();
            Log.d(TAG, "Logro::"+logro.getLogro_name()+"-"+String.valueOf(logro.getDate()));
        }
        */



    }
    public void clickDos(View target)
    {
        Log.d(TAG, "click 2");
        List<Logro> logros=daoLogro.queryBuilder().list();
        for (Iterator iterator = logros.iterator(); iterator.hasNext();) {
            Logro logro = (Logro) iterator.next();
            Log.d(TAG, "Logro::"+logro.getLogro_name()+"-"+String.valueOf(logro.getDate()));
        }

    }

    public void exempleFB(View target){

        Intent t = new Intent(InitialMenuActivity.this, Example.class);
        startActivity(t);
    }

    public void logginActivity(View target){

        Intent t = new Intent(InitialMenuActivity.this, LogginActivity.class);
        startActivity(t);
    }

    public void rankingActivity(View target){
        //if (Utility.arrayListFriend != null){
        Intent t = new Intent(InitialMenuActivity.this, Ranking.class);
        startActivity(t);
    }

    public void singleDuelActivity(View target){

        Intent t = new Intent(InitialMenuActivity.this, SingleDuelActivity.class);
        startActivity(t);
    }

    public void multiDuelActivity(View target){

    Intent t = new Intent(InitialMenuActivity.this, MultiDuelActivity.class);
    startActivity(t);
}
}
4

2 に答える 2

0

私自身は専門家ではありませんが、インテントに問題があるようですので、できる限りすべてのインテントセクションをコメントアウトしてみてください。

エミュレーターには通常、対話できる他のアプリ(Facebookなど)がないため、物理デバイスがそれらを処理しようとしているときに、それらのインテントを無視していた可能性があります。

何もできませんでしたが、一撃の価値があります。

于 2012-11-19T21:10:01.770 に答える
0

わかりました。プロジェクトをクリーンアップする必要がありましたが、問題は解決しました...エミュレータで動作しているのに、モバイルデバイスでは動作していない理由はまだわかりません。

于 2012-11-26T16:18:26.653 に答える