2010-06-24 82 views
2

這將是我第一次使用Keytool和Jarsigner簽署應用程序。與我的應用程序apk文件簽署問題

我一步貫穿市場簽名過程我的APK,一步,因爲它採用的是Android官方網站解釋

https://developer.android.com/guide/publishing/app-signing.html

與APK創建成功完成簽名過程。
在Nexus One上安裝此apk也已通過,但是當我嘗試從Nexus One啓動它時,我收到了Permission Denial錯誤。

請幫忙。

我在這裏添加一個完整的錯誤:順便說一句我從apk運行我的測試,因爲它們是用Instrumentation編寫的。

INSTRUMENTATION_STATUS: id=ActivityManagerService 
INSTRUMENTATION_STATUS: Error=Permission Denial: starting instrumentation Compon 
entInfo{com.android.phonetests/com.android.phonetests.PhoneInstrumentationTestRu 
nner} from pid=4598, uid=4598 not allowed because package com.android.phonetests 
does not have a signature matching the target com.android.phone 
INSTRUMENTATION_STATUS_CODE: -1 
+0

您使用的是什麼環境?如果您使用的是Eclipse,則可以在設備上進行調試,而無需執行任何手動簽名或apk安裝。 – 2010-06-24 14:53:53

+0

嗨,我可以不使用Eclipse – ilana 2010-06-27 05:49:08

+0

Ups!你必須調整你的應用程序,因爲你有這個消息「那是不允許的,因爲包com.android.phonetests沒有與目標com.android.phone相匹配的簽名」,請使用:zipalign -v 4「C:\ Android \ Apps \ MyAppNotAligned.apk「」C:\ Android \ Apps \ MyAPP.apk「 – Jorgesys 2010-06-30 15:22:04

回答

0

你不能簡單地通過要求獲得每個許可;有許多權限需要特定的簽名(通常是系統的平臺簽名)才能被授予。

卸載您的應用程序,然後在監控logcat時安裝它。查找指示識別請求的簽名但拒絕其被授予的消息。