Android錯誤引用自定義資源資料型別,造成安裝解析產生未知錯誤
Android 2.3.3
Eclipse Version: 3.7.0
LogCat Console
報錯資訊:
[2012-02-15 10:24:31 - taobao] ------------------------------ [2012-02-15 10:24:31 - taobao] Android Launch! [2012-02-15 10:24:31 - taobao] adb is running normally. [2012-02-15 10:24:31 - taobao] Performing com.taobao.htc.Start activity launch [2012-02-15 10:24:31 - taobao] Automatic Target Mode: using existing emulator 'emulator-5554' running compatible AVD 'htc' [2012-02-15 10:24:31 - taobao] Uploading taobao.apk onto device 'emulator-5554' [2012-02-15 10:24:36 - taobao] Installing taobao.apk... [2012-02-15 10:24:39 - taobao] Installation error: INSTALL_PARSE_FAILED_UNEXPECTED_EXCEPTION [2012-02-15 10:24:39 - taobao] Please check logcat output for more details. [2012-02-15 10:24:39 - taobao] Launch canceled!
發生錯誤原因分析:
安裝解析失敗,遇到未知錯誤。
分析AndroidManifest.xml,android:versionCode引用自定義資源
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.taobao.htc" android:versionCode="@string/app_versionCode" android:versionName="@string/app_versionName">
在strings.xml中也有app_versionCode對應值
Xml程式碼
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_versionCode">360</string>
兩部分配置在Eclipse中均未提示錯誤。
根據在AndroidManifest.xml中直接配置versionCode值的經驗,其值應為整數,否則Eclipse報錯。
error: Error: String types not allowed (at 'versionCode' with value 'htc'). error: Error: Float types not allowed (at 'versionCode' with value '360.0'). error: Error: Boolean types not allowed (at 'versionCode' with value 'true').
解決辦法:
修改xml配置
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.taobao.htc" android:versionCode="@integer/app_versionCode" android:versionName="@string/app_versionName">
<?xml version="1.0" encoding="utf-8"?>
<resources>
<integer name="app_versionCode">360</integer>
重新執行,正常。
不管是直接配置,還是使用引用資源,android:versionCode的值都只能是整數。
引用資源,一定要使用可用的資料型別。
PS:Eclipse的Problems並不是所有錯誤都能給出提示。
相關推薦
Android錯誤引用自定義資源資料型別,造成安裝解析產生未知錯誤
Android 2.3.3 Eclipse Version: 3.7.0 LogCat Console 報錯資訊: [2012-02-15 10:24:31 - taobao] ------------------------
用typedef自定義的資料型別
嚴格說,它不是一種新型別,使用typedef一般用來達到以下幾個目的: 1,用來定義一種型別的別名,比如說一個型別名稱特別長,為了書寫方便和便於程式碼的閱讀,實現別名功能(複雜名字簡單化), typedef char* PCHAR; PCHAR pa, pb; struct Hello_
結合案例講解MapReduce重要知識點 ----------- 自定義MapReduce資料型別(1)重寫Writable介面
重寫Writable介面 如下程式碼就是自定義mr資料型別,在wordcount類使用它。 WordCountWritable import java.io.DataInput; import java.io.DataOutput; import java.io.IOE
結合案例講解MapReduce重要知識點 ------- 使用自定義MapReduce資料型別實現二次排序
自定義資料型別SSData import java.io.DataInput; import java.io.DataOutput; import java.io.IOException; import org.apache.hadoop.io.WritableCompa
使用Object物件的toString()方法自定義判斷資料型別方法
Object.prototype.toString方法返回物件的型別字串 Object.prototype.toString.call(2) // "[object Number]" Obj
MapReduce資料型別及自定義MapReduce資料型別
MapReduce資料型別 資料型別都要實現Writable介面,以便用這些型別定義的資料可以被序列化進行網路傳輸和檔案儲存。自定義key資料型別的時候,因為需要對key進行排序,需要繼承java中的比較器,所以可以直接繼承WritableComparable
QT學習筆記(七)QDataStream傳遞自定義的資料型別
QT自帶的QDataStream只能傳遞它自己要求的資料型別。但是我們可以自己過載QDataStream& operator<<()和QDataStream& operator>>();mydatastream.h#ifndef MYD
Redis 儲存自定義的資料型別
Redis自帶的基本型別的操作可以自行查閱資料,網上可以輕易找到很多的相關的資料。 儲存自定義型別時需要進行序列化、反序列化。 1. Java示例程式碼 //定義需要儲存的資料 Student
【pytorch】自定義讀取資料集,使用txt文字
使用txt文字讀入資料可以減少記憶體的需要,有時候自定義載入資料集是非常必要的,我下面的程式碼是針對影象的,並且帶有label的有監督的影象。先看程式碼: import numpy as np import os import torch.nn as nn from PIL import Ima
js javascript 自定義json資料格式,以變數作為鍵名,自定義鍵值對
js中的 json 格式資料,當用變數作為鍵(名)時,如:var a = $('#cid').val(); var b = $('#goods_name').val(); var j = {a:b}:這樣 a 是不會被解析的,正確寫法應該是:var a = $('#cid')
Android開發:自定義介面的Dialog,並且實現按鈕的監聽回撥
該專案適合想實現自定義dialog,有懶得折騰的人。 在安卓開發的時候,往往會碰到一些特別漂亮的dialog,比如這個圖片的: 很多這種型別的dialog,介面千變萬化,於是我建立了一個通用自定義dialog,可以實現以下功能: 1、介面的自定義,全部自己用xml定義介
Kubernetes CRD (CustomResourceDefinition) 自定義資源型別
目錄 1、CRD (CustomResourceDefinition) 介紹 1.1 client-go 元件 1.2 Custom Controller 元件
android串列埠通訊接受自定義協議資料並解析問題
1.一般自定義的串列埠協議 串列埠傳輸介面底層是按位(bit)傳送的,上層是按byte傳送和接收的,但協議為了方便描述,每個byte用十六進位制數(0x00~0xFF)表示,範相當於十進位制的0~255,而byte為八位且是有符號型別,相當於十進位制的-128~127,明
Kubernetes1.5新特性:自定義資源型別_Kubernetes中文社群
一、自定義資源型別 在Kubernetes1.5中,在CPU、記憶體、GPU三種類型資源的基礎上新增了一種資源型別:Opaque Integer Resources,從英文直接翻譯成不透明整數資源,但是我覺著應該翻譯成自定義資源型別。 如上圖所示:OpaqueIntResources屬性是一
Android自定義網路資料載入等待框的簡單封裝
先上效果圖(在5.0以上機型顯示效果,如果是4.0會變為灰色): 自定義Dialog如下: public class LoadingCustom extends Dialog{ pr
android 如何在自定義對話方塊中獲取edittext中的資料
在專案中忽然遇到這樣的問題,需要自定義對話方塊,對話方塊需要有一個輸入框,以便修改所選中的價格,然後點選確定之後,修改所顯示的價格。遇到的最大的問題就是如何能夠獲取到自定義對話方塊當中edittext輸入的數值,百度了很久,看到的答案都是如下: //得到自定義對話方塊
Android中自定義View的研究 -- 在XML中引用自定義View
如果在一直使用SetContentView(new HellwView(this)覺得總是少了一點東西,少了什麼了,失去了Android中使用XML定義元件的便攜性,這種感覺讓人很不爽,呵呵,在這節裡我們會看到一個自定義View報錯的解決方法,讓我們來看看在XML中定義Vi
Android Studio 佈局中引用自定義屬性不提示的問題
Eclipse裡面自定義屬性的名稱空間的宣告一般都是 xmlns:app="http://schemas.android.com/apk/res/com.xxx(包名) 而Android Stu
Hadoop——自定義資料型別,實現WritableComparable, 並且 分組,排序
http://blog.csdn.net/u014432433/article/details/51104026 1. 在進行mapreduce程式設計時key鍵往往用於分組或排序,當我們在進行這些操作時Hadoop內建的key鍵資料型別不能滿足需求時, 或針對用例優化自定
Android自定義View的屬性,attr format取值型別
原文連結 1. reference:參考某一資源ID。 (1)屬性定義: <declare-styleable name = "名稱"> <attr name = "background" format = "reference" />