Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/397.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何从java应用程序序列化和在android上反序列化?_Java_Android_Eclipse_Deserialization_Serializable - Fatal编程技术网

如何从java应用程序序列化和在android上反序列化?

如何从java应用程序序列化和在android上反序列化?,java,android,eclipse,deserialization,serializable,Java,Android,Eclipse,Deserialization,Serializable,我是安卓的新手,我正在安卓上开发一个应用程序。应用程序需要使用类来反序列化并获取数据。这是一节课: package fu.sna2014.smartnavigation.utility; import java.io.Serializable; public class StreetObject implements Serializable{ /** * */ private static final long s

我是安卓的新手,我正在安卓上开发一个应用程序。应用程序需要使用类来反序列化并获取数据。这是一节课:

package fu.sna2014.smartnavigation.utility;

import java.io.Serializable;
    public class StreetObject implements Serializable{
        /**
         * 
         */
        private static final long serialVersionUID = 437865663147928104L;
        private String id;
        private String name;
        private byte[] sound;
        public StreetObject(String id, String name, byte[] sound) {
            this.id = id;
            this.name = name;
            this.sound = sound;
        }

        public String getId() {
            return id;
        }

        public void setId(String id) {
            this.id = id;
        }

        public String getName() {
            return name;
        }

        public void setName(String name) {
            this.name = name;
        }

        public byte[] getSound() {
            return sound;
        }

        public void setSound(byte[] sound) {
            this.sound = sound;
        }
    }
我的问题是该类是从另一个包名为的Java应用程序序列化的:

package snaTool;

    import java.io.Serializable;

    /**
     *
     * @author conghits
     */
    public class StreetObject implements Serializable{
        /**
        * 
        */
        private static final long serialVersionUID = 437865663147928104L;
        private String id;
        private String name;
        private byte[] sound;
        //private transient List<File> unInterestingLongLongList; 
        public StreetObject(String id, String name, byte[] sound) {
            this.id = id;
            this.name = name;
            this.sound = sound;
        }

        public String getId() {
            return id;
        }

        public void setId(String id) {
            this.id = id;
        }

        public String getName() {
            return name;
        }

        public void setName(String name) {
            this.name = name;
        }

        public byte[] getSound() {
            return sound;
        }

        public void setSound(byte[] sound) {
            this.sound = sound;
        }   
    } 

当我反序列化时,它会使ClassNotFoundException snaTool.StreetObject。我搜索了很多主题,从Java应用程序中获得了一个解决方案,作为make.jar for StreetObject,并将其作为libs导入Andoird,但当我导入时,用于编写Android的Eclipse没有找到作为libs的.jar,换句话说,我可以在Eclipse上从.jar调用类。有人帮我知道这里出了什么问题吗?非常感谢并为我的英文写作感到抱歉:

您自己也指出了问题:该类在您的Android应用程序中有不同的包名。你为什么这么做?您应该在两个应用程序中使用完全相同的jar。

:感谢您的回答,我很容易解决了这个问题,只需在Eclipse中创建包snaTool,并将类StreetObject放入包中即可