Jump to content


Approved Members
  • Content Count

  • Joined

  • Last visited

 Content Type 





Knowledge Base

База знаний


Everything posted by titanic_fanatic

  1. What kind of customization are you looking to achieve? What Android version does it need to support? You can pm me if you like ;-)
  2. I just updated mine last night ;-) Purple Silk, Emerald Desire, Saphire Dream, Ruby Red and Black Onyx. https://play.google.com/store/apps/developer?id=Net+Works+Web+Design
  3. I use Corel (formerly Jasc) Paint Shop Pro, but you can use any graphics editor you want. Many themers just use Gimp (I can't stand gimp though as it's not driven by standards and can be confusing if you have any experience with a professional graphics editing program). Be very careful with .9.png's they MUST have a 1px border with markers in pitch black #000000 marking the stretchable areas (left and top border) and the content areas (right and bottom border). If your border has a color other than transparent or pure black you will get many errors while compiling. If this happens, fix the first graphic that's listed and recompile to get the next error ;-) If your opening any png's from decompiled apk's, then you will run into an issue where they have been optimized for the platform, and most graphic editors make them look blotchy. If this is an issue for you, I have a tool on xda-developers that I designed to fix that problem... You can check out the thread here: http://forum.xda-developers.com/showthread.php?t=2216403 Good Luck ;-)
  4. Check out the android developer page on creating a keystore. This is where I learned from ;-) http://developer.android.com/tools/publishing/app-signing.html
  5. In your local.properties file, the key.store should point to your keystore file key.keystore or something similar (which I think your ok with) and the key.alias is the alias that you used to setup your keystore (like a username, not a path). this is not a path like I see in your previous post. and in regards to the AndroidManifest.xml file, the following line must be present and unchanged: <meta-data android:name="com.maxmpz.PowerampSkins" android:value="true"/>You can specify your package name in the first directive as such: <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.nwwebdesign.poweramp.skins.PurpleSilk" android:versionCode="4" android:versionName="1.3">Hopefully this will get your first build to run successfully ;-)
  6. said that the assets directory doesn't exist. Add an empty asset dir to /home/pdroid/adt-bundle-linux-x86_64-20130522/eclipse/workspace/purewhite it doesn't need to contain anything. Try recompiling again after adding the directory.
  7. Can you please post your build.xml file.
  8. The Poweramp apk has been compiled with "unknown" opcodes which is how Max fights piracy. You need to tell your compiler what to do with the "unknown" opcodes in order to decompile it. I don't think he will allow this as it would defeat the purpose of his efforts to stop piracy ;-)
  9. I don't think you've properly configured your local.properties file with the path to the Poweramp apk. This is required in order for the compiler to reference, for example, the styles that are listed above. Double check and make sure that the path to your Poweramp.apk is correct... I used an absolute path instead of a relative path in my local.properties... Not sure if that makes a difference here.
  10. Poweramp Skin Gallery I will be building a new app called Poweramp Skin Gallery. It will be a very simple play store like app to browse only Poweramp skins. In addition to browsing Poweramp skins from the market, you will be able to see all of your currently installed skins and manage them from my app. If you have any suggestions for features, please email me or post to my G+ or Twitter ;-)
  11. I noticed in your build.xml that the declaration for xml is not included: <?xml version="1.0" encoding="UTF-8"?> This should be the very first line in any xml file... Maybe this is the cause. Also, I don't think it's a cause of your problems, but why did you physically specify the build.xml from the sdk instead of letting the vars take care of that... Change the following: <!-- version-tag: custom --> <import file="D:/Android/AndroidSDK/sdk/tools/ant/build.xml" /> to <!-- version-tag: custom --> <import file="${sdk.dir}/tools/ant/build.xml" /> The var ${sdk.dir} should automatically be replaced with the path to your android sdk if you have correctly set it up on your system. One last thing, you are trying to run this from console right, and not from within eclipse... Eclipse is not supported for building/running Poweramp skins with ant. As stated in the quick start guide, eclipse will point out non-existent errors and won't work. Eclipse in this situation is only a glorified text editor... I suggest Notepad++ as it isn't a resource hog like eclipse and eclipse is kind of overkill for developing Poweramp skins.
  12. you simply use the apk that you download from the market or off of the powerampapp.com website (not the unlocker, but the trial)... Install it with apktool as a framework: apktool if C:\path\to\Poweramp.apk Once you have installed this as a framework, you shoud change the path to Poweramp.apk to point to the apk on your computer. You should then be able to compile without issue :-)
  13. Thanks for the quick response Max :-) I will implement this immediately and will keep checking back for the updated classic skin sources :-)
  14. Hey guys, So my skin has been on the market for a couple of weeks now and is doing well... I did get a crash report from my developer console yesterday though, and am not sure that it relates to my skin java.lang.IllegalStateException: Could not execute method of the activity at android.view.View$1.onClick(View.java:3598) at android.view.View.performClick(View.java:4091) at android.view.View$PerformClick.run(View.java:17036) at android.os.Handler.handleCallback(Handler.java:615) at android.os.Handler.dispatchMessage(Handler.java:92) at android.os.Looper.loop(Looper.java:137) at android.app.ActivityThread.main(ActivityThread.java:4912) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:511) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:789) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:556) at dalvik.system.NativeStart.main(Native Method) Caused by: java.lang.reflect.InvocationTargetException at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:511) at android.view.View$1.onClick(View.java:3593) ... 11 more Caused by: android.content.ActivityNotFoundException: Unable to find explicit activity class {com.maxmpz.audioplayer/com.maxmpz.audioplayer.SettingsActivity}; have you declared this activity in your AndroidManifest.xml? at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1541) at android.app.Instrumentation.execStartActivity(Instrumentation.java:1416) at android.app.Activity.startActivityForResult(Activity.java:3389) at android.app.Activity.startActivityForResult(Activity.java:3350) at android.app.Activity.startActivity(Activity.java:3562) at android.app.Activity.startActivity(Activity.java:3528) at com.nwwebdesign.Poweramp.skins.InfoActivity.onButton1Click(InfoActivity.java:51) ... 14 more Unfortunately the market report does not tell me the version of android being used when this error occurred. It seems that the activity class com.maxmpz.audioplayer.SettingsActivity could not be found. Is this maybe due to a user not using the latest version? Are the classes different from version to version? What should be done to rectify this error?
  15. Hi Max, does this mean that we can not use the xml property "android:onClick" (as of API Level 7) to attach a custom listener from within our skins apk?
  16. I totally figured it out :-) It was in relation to the public.xml file (which I had deleted but shouldn't have). This file is needed to reserve resource id's for the 3 arrays that are required by Poweramp to establish your apk as a Poweramp skin. Without these resource id reservations, the id's get assigned to other resources in your apk and Poweramp can no longer determine that your apk is a skin as it seems to be looking for these arrays defined with these specific resource id's. I will get my first skin done... Called "Purple Silk" then, if it is ok with max and the team at Poweramp, I would like to post a tutorial on skinning for Poweramp both on this forum and at the xda-developers forum :-) What do you say guys?
  17. Hi there, Over the past weekend I decided I would try to make a Poweramp skin :-) I downloaded the skin-sdk and have my styles defined in myskinname_styles.xml, my colors defined in colors.xml and dimensions defined in dimens.xml I also have skins.xml with definitions about the skin. I have included the necessary <meta-data android:name="com.maxmpz.PowerampSkins" android:value="true"/> in my AndroidManifest.xml so that Poweramp will pick it up as a skin. It compiles and installs to my device without error, but when I open Poweramp to switch to my skin, it is not in the list. Searching through my logcat reveals the following: 01-14 09:25:39.948 434 561 I ActivityManager: Displayed com.maxmpz.audioplayer/.SettingsActivity: +922ms 01-14 09:25:40.148 17232 17232 W ThemePreference: found skin theme=ClassicSkin name=ICS Skin id=-2146828288 app=com.ikorolkov.Poweramp.skins.ics 01-14 09:25:40.158 17232 17232 W ThemePreference: found skin theme=ClassicSkin name=ICS Purple id=-2146828288 app=com.ikorolkov.Poweramp.skins.icsp 01-14 09:25:40.168 17232 17232 W ResourceType: Skipping entry 0x80050000 in package table 0 because it is not complex! 01-14 09:25:40.178 17232 17232 E ThemePreference: Failed to get resources from app=com.nwwebdesign.Poweramp.skins.PurpleSilk 01-14 09:25:40.178 17232 17232 E ThemePreference: android.content.res.Resources$NotFoundException: Array resource ID #0x80050000 01-14 09:25:40.178 17232 17232 E ThemePreference: at android.content.res.Resources.obtainTypedArray(Resources.java:490) 01-14 09:25:40.178 17232 17232 E ThemePreference: at com.maxmpz.audioplayer.preference.ThemePreference.��(":97) 01-14 09:25:40.178 17232 17232 E ThemePreference: at com.maxmpz.audioplayer.preference.ThemePreference.��(":78) 01-14 09:25:40.178 17232 17232 E ThemePreference: at com.maxmpz.audioplayer.preference.ThemePreference.onPrepareDialogBuilder(":240) 01-14 09:25:40.178 17232 17232 E ThemePreference: at android.preference.DialogPreference.showDialog(DialogPreference.java:295) 01-14 09:25:40.178 17232 17232 E ThemePreference: at com.maxmpz.audioplayer.preference.ThemePreference.��(":334) 01-14 09:25:40.178 17232 17232 E ThemePreference: at com.maxmpz.audioplayer.preference.��$19.run(":798) 01-14 09:25:40.178 17232 17232 E ThemePreference: at android.os.Handler.handleCallback(Handler.java:615) 01-14 09:25:40.178 17232 17232 E ThemePreference: at android.os.Handler.dispatchMessage(Handler.java:92) 01-14 09:25:40.178 17232 17232 E ThemePreference: at android.os.Looper.loop(Looper.java:137) 01-14 09:25:40.178 17232 17232 E ThemePreference: at android.app.ActivityThread.main(ActivityThread.java:4931) 01-14 09:25:40.178 17232 17232 E ThemePreference: at java.lang.reflect.Method.invokeNative(Native Method) 01-14 09:25:40.178 17232 17232 E ThemePreference: at java.lang.reflect.Method.invoke(Method.java:511) 01-14 09:25:40.178 17232 17232 E ThemePreference: at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:791) 01-14 09:25:40.178 17232 17232 E ThemePreference: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:558) 01-14 09:25:40.178 17232 17232 E ThemePreference: at dalvik.system.NativeStart.main(Native Method) 01-14 09:25:40.188 17232 17232 W ThemePreference: found skin theme=ClassicSkin name=Poweramp Holo id=-2147221504 app=com.maxmpz.Poweramp.skins.holo It seems that this is related to resources that are not found, or are of the wrong type, so I searched the generated R.java file for resource ID 0x80050000 (assigned to dimension "coverMarginBottom") which was defined in my dimens.xml file. The value was the same as specified in the reference_resources (resource type should be correct... 184dip). I removed the resource all together and recompiled. When I did this, resource ID 0x80050000 was assigned to the next resource in my dimens.xml file and again caused the same error. 01-14 09:25:40.168 17232 17232 W ResourceType: Skipping entry 0x80050000 in package table 0 because it is not complex! It seems that it does not matter what resource I remove, Poweramp always spits out the above error in my logcat about skipping entry 0x80050000 because it is not complex. Any ideas as to what causes this error in the skinning process? I can't find anything about this error on google except for how to track down the offending value (which was to look in the generated R.java file to find the reference ID of the resource in question). http://thesoftwarero...ge-table-0.html What does it mean "because it is not complex"? Any help would be graciously appreciated :-) Titanic_Fanatic
  • Create New...