2012-11-19 4 views
1

나는이 안드로이드 장치를 처음 사용한다고 말해야하지만 USB 디버그를 설정합니다. 처음 앱을 설치 한 다음 변경 사항을 업데이트하지 않는 것과 같습니다.에뮬레이터 ok, 장치 실패, SecurityException : 사용 권한 거부

그래서,이 응용 프로그램은 에뮬레이터에서 작동합니다.

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 

있어하지만 여전히 에뮬레이터에서 작동합니다! 이미 모바일 장치에서 앱을 제거했지만 위의 오류가 발생합니다.

모바일 장치를 제거하고 다시 시작한 후에는 매니페스트가 변경되기 전에 작동 한 버전을 다시 설치합니다 (전화기에서 수동 시작할 수 있지만 이전 버전입니다).

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> 

내가 clickUno 및 clickDos를 사용하지 않는 로그 캣

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 (그들은 내게하지 않습니다)

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); 
} 
} 
+1

전체 logcat stacktrace를 공유하십시오 ... –

+0

질문 한 것을 추가 했습니까? LogCat에서 모든 메시지를 가져 왔습니다. –

+0

'InitialMenuActivity' 클래스의 코드를 공유 할 수 있습니까?이 클래스의 라이프 사이클 메소드 중 하나에 문제가있는 것처럼 보입니다 ... –

답변

0

좋아, 내가 프로젝트를 청소해야하고 문제가 해결 ... 난 아직도 왜 에뮬레이터에서 작동하지만 모바일 장치에서 작동하는지 모르겠다.

0

나는 전문가는 아니지만 Intents에 문제가있는 것 같기 때문에 가능한 모든 Intent 섹션을 주석으로 처리하지 않으십시오.

에뮬레이터에는 일반적으로 페이스 북과 같이 상호 작용할 수있는 다른 앱이 없으므로 물리적 장치가이를 처리하려고 시도하는 동안 해당 에뮬레이션을 무시하고있는 것일 수 있습니다.

아무 것도 할 가치가 없지만 촬영 가치가 있습니다.