Android Open Source - Music-Share-Android Music Data






From Project

Back to project page Music-Share-Android.

License

The source code is released under:

GNU General Public License

If you think the Android project Music-Share-Android listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

package com.paperairplane.music.share;
/*from   www  . j a  va  2 s.c o  m*/
import java.util.Locale;

import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;

import com.paperairplane.music.share.utils.HanziToPinyin;

/**
 * ??????????
 * 
 * @author Harry Chen (<a href="mailto:chenshengqi1@gmail.com">Harry Chen</a>)
 * @author Xavier Yao (<a href="mailto:xavieryao@me.com">Xavier Yao</a>)
 * @see <a
 *      href="http://www.github.com/PaperAirPlane-Dev-Team/Music-Share-Android">Our
 *      GitHub</a>
 */
public class MusicData implements Comparable<MusicData> {
  private String mTitle, mArtist, mDuration, mPath, mAlbum, mType, mArtworkNetUrl,mArtworkLocalUrl,
      mVersion, mMusicUrl;
  private char mFirstChar;
  private long mAlbumId;

  public void setPath(String path) {
    mPath = path;
  }

  public void setTitle(String title) {
    mTitle = title;
    char c = mTitle.charAt(0);
    if ((c >= 65 && c <= 90) || (c >= 97 && c <= 122)) {
      if (title.toLowerCase(Locale.getDefault()).startsWith("the ")) {
        title = title.substring(4, 5);
      } else if (title.toLowerCase(Locale.getDefault()).startsWith("a ")) {
        title = title.substring(2, 3);
      } else if (title.toLowerCase(Locale.getDefault()).startsWith("an ")) {
        title = title.substring(3, 4);
      } else {
        title = title.substring(0, 1);
      }
      mFirstChar = (char) (title.toUpperCase(Locale.getDefault())
          .charAt(0));
      // ????????
    } else {
      try {
        mFirstChar = (char) (HanziToPinyin.convert(String.valueOf(title.charAt(0)))
                        .toUpperCase(Locale.getDefault()).charAt(0));
      } catch (Exception e) {
        mFirstChar = Consts.UNKNOWN_CHAR;// ???????????????????
      }
    }
  }

  public void setArtist(String artist) {
    if(artist!=null){
      mArtist = artist;
    }
  }

  public void setAlbum(String album) {
    if(album!=null){
      mAlbum = album;      
    }
  }

  public void setDuration(String duration) {
    mDuration = duration;
  }

  public void setAlbumId(long albumId) {
    mAlbumId = albumId;
  }

  public void setType(String type) {
    mType = type;
  }

  public String getPath() {
    return mPath;
  }

  public String getTitle() {
    return mTitle;
  }

  public String getArtist() {
    return mArtist;
  }

  public String getDuration() {
    return mDuration;
  }

  public String getAlbum() {
    return mAlbum;
  }

  public long getAlbumId() {
    return mAlbumId;
  }

  public String getType() {
    return mType;
  }

  public char getFirstChar() {
    return mFirstChar;
  }

  public String toJsonString() {
    String strJson = null;
    JSONArray jarr = new JSONArray();
    JSONObject jobj = new JSONObject();
    try {
      jobj.put("title", mTitle);
      jobj.put("artist", mArtist);
      jobj.put("album", mAlbum);
      jarr.put(jobj);
      } catch (JSONException e) {
      e.printStackTrace();
    }
    strJson = jarr.toString();
    return strJson;
  }

  @Override
  public int compareTo(MusicData another) {
    if (this.mFirstChar - another.getFirstChar() != 0) {
      return this.mFirstChar - another.getFirstChar();
    } else {
      return this.mTitle.compareTo(another.getTitle());
    }
  }

  /**
   * @return the mArtwork
   */
  public String getArtworkNetUrl() {
    return mArtworkNetUrl;
  }

  /**
   * @param artwork
   *            the mArtwork to set
   */
  public void setArtworkNetUrl(String artwork) {
    this.mArtworkNetUrl = artwork;
    if (this.mArtworkNetUrl != null) {
      this.mArtworkNetUrl = this.mArtworkNetUrl.replace("spic", "lpic");
    }
  }

  /**
   * @return the mVersion
   */
  public String getVersion() {
    return mVersion;
  }

  /**
   * @param version
   *            the mVersion to set
   */
  public void setVersion(String version) {
    this.mVersion = version;
  }

  /**
   * @return the mMusicUrl
   */
  public String getMusicUrl() {
    return mMusicUrl;
  }

  /**
   * @param musicUrl
   *            the mMusicUrl to set
   */
  public void setMusicUrl(String musicUrl) {
    this.mMusicUrl = musicUrl;
  }

  /**
   * @return the mArtworkLocalUrl
   */
  public String getArtworkLocalUrl() {
    return mArtworkLocalUrl;
  }

  /**
   * @param mArtworkLocalUrl the mArtworkLocalUrl to set
   */
  public void setArtworkLocalUrl(String mArtworkLocalUrl) {
    this.mArtworkLocalUrl = mArtworkLocalUrl;
  }

}




Java Source Code List

android.net.http.SslError.java
com.paperairplane.music.share.AtSuggestionActivity.java
com.paperairplane.music.share.Consts.java
com.paperairplane.music.share.FeedbackMessage.java
com.paperairplane.music.share.Main.java
com.paperairplane.music.share.MusicData.java
com.paperairplane.music.share.MusicListAdapter.java
com.paperairplane.music.share.QueryAndShareMusicInfo.java
com.paperairplane.music.share.Receiver.java
com.paperairplane.music.share.SnsHelper.java
com.paperairplane.music.share.cache.ImageLoader.java
com.paperairplane.music.share.cache.MemoryCache.java
com.paperairplane.music.share.dialogs.AboutDialogFragment.java
com.paperairplane.music.share.dialogs.AbsDialogFragment.java
com.paperairplane.music.share.dialogs.AuthManagerDialogFragment.java
com.paperairplane.music.share.dialogs.BackgroundChooserDialogFragment.java
com.paperairplane.music.share.dialogs.ChangeColorDialogFragment.java
com.paperairplane.music.share.dialogs.EmptyDialogFragment.java
com.paperairplane.music.share.dialogs.FeedbackDialogFragment.java
com.paperairplane.music.share.dialogs.SearchDialogFragment.java
com.paperairplane.music.share.dialogs.SendWeiboDialogFragment.java
com.paperairplane.music.share.dialogs.ThankDialogFragment.java
com.paperairplane.music.share.utils.CrashHandler.java
com.paperairplane.music.share.utils.HanziToPinyin.java
com.paperairplane.music.share.utils.HttpQuestHandler.java
com.paperairplane.music.share.utils.IntentResolver.java
com.paperairplane.music.share.utils.MyLogger.java
com.paperairplane.music.share.utils.ShakeDetector.java
com.paperairplane.music.share.utils.Utilities.java
com.paperairplane.music.share.utils.lastfm.Album.java
com.paperairplane.music.share.utils.lastfm.Artist.java
com.paperairplane.music.share.utils.lastfm.Caller.java
com.paperairplane.music.share.utils.lastfm.DomElement.java
com.paperairplane.music.share.utils.lastfm.ImageHolder.java
com.paperairplane.music.share.utils.lastfm.ImageSize.java
com.paperairplane.music.share.utils.lastfm.Image.java
com.paperairplane.music.share.utils.lastfm.ItemFactoryBuilder.java
com.paperairplane.music.share.utils.lastfm.ItemFactory.java
com.paperairplane.music.share.utils.lastfm.MapUtilities.java
com.paperairplane.music.share.utils.lastfm.MusicEntry.java
com.paperairplane.music.share.utils.lastfm.PaginatedResult.java
com.paperairplane.music.share.utils.lastfm.ResponseBuilder.java
com.paperairplane.music.share.utils.lastfm.Result.java
com.paperairplane.music.share.utils.lastfm.StringUtilities.java
com.paperairplane.music.share.utils.lastfm.Track.java
com.weibo.sdk.android.Oauth2AccessToken.java
com.weibo.sdk.android.WeiboAuthListener.java
com.weibo.sdk.android.WeiboDialogError.java
com.weibo.sdk.android.WeiboDialog.java
com.weibo.sdk.android.WeiboException.java
com.weibo.sdk.android.WeiboParameters.java
com.weibo.sdk.android.Weibo.java
com.weibo.sdk.android.api.AccountAPI.java
com.weibo.sdk.android.api.ActivityInvokeAPI.java
com.weibo.sdk.android.api.CommentsAPI.java
com.weibo.sdk.android.api.CommonAPI.java
com.weibo.sdk.android.api.FavoritesAPI.java
com.weibo.sdk.android.api.FriendshipsAPI.java
com.weibo.sdk.android.api.PlaceAPI.java
com.weibo.sdk.android.api.RegisterAPI.java
com.weibo.sdk.android.api.SearchAPI.java
com.weibo.sdk.android.api.ShortUrlAPI.java
com.weibo.sdk.android.api.StatusesAPI.java
com.weibo.sdk.android.api.SuggestionsAPI.java
com.weibo.sdk.android.api.TagsAPI.java
com.weibo.sdk.android.api.TrendsAPI.java
com.weibo.sdk.android.api.UsersAPI.java
com.weibo.sdk.android.api.WeiboAPI.java
com.weibo.sdk.android.net.AsyncWeiboRunner.java
com.weibo.sdk.android.net.HttpManager.java
com.weibo.sdk.android.net.NetStateManager.java
com.weibo.sdk.android.net.RequestListener.java
com.weibo.sdk.android.sso.SsoHandler.java
com.weibo.sdk.android.util.BitmapHelper.java
com.weibo.sdk.android.util.Utility.java