Search This Blog

Thursday, February 20, 2014

Adding Unmanaged Dependencies to a Maven Project

Adding Unmanaged Dependencies to a Maven Project

To add a local jar to maven build you need to deploy it to your project's local repository (that's NOT your local maven's repository placed in home/user/.m2 folder).

Adding the jar file as a system dependency won't work as the jar would have to be copied by hand to every device where you want to install your application.

Changing local system dependency to maven's local project repository:

            <dependency>
            <groupId>com.wagnerandade</groupId>
            <artifactId>coollection</artifactId>
            <version>0.2.2</version>
            <scope>system</scope>
            <systemPath>${project.basedir}/lib/coollection-0.2.2.jar</systemPath>
        </dependency>

Use the command to register a local project repository:

mvn deploy:deploy-file -Durl=file:///android/myapplication/repo/ -Dfile=coollection-0.2.2.jar -DgroupId=com.wagnerandade -DartifactId=coollection -Dpackaging=jar -Dversion=0.2.2



and change the pom to:

          <repositories>
        <repository>
            <id>project.local</id>
            <name>project</name>
            <url>file:${project.basedir}/repo</url>
        </repository>
    </repositories>

[...]

        <dependency>
            <groupId>com.wagnerandade</groupId>
            <artifactId>coollection</artifactId>
            <version>0.2.2</version>
     </dependency>


PDF tutorial



Thursday, February 13, 2014

Android - Integrate scaloid with android annotations, maven and proguard

I managed to integrate Scaloid with android annotations, maven and proguard. The resulting "hello world" project contains:
- main start Activity written in SCALA
- second activity written in SCALA which uses Java classes (example of JAVA & SCALA integration)
- third activity is written in Java and uses Android Annotations
- all in obsfuscated & profiled with ProGuard
- project compiles from maven

Project: here



Wednesday, February 12, 2014

IntelliJ 13 + ProGuard + Android Annotations on Android

Proguard configuration working with:
IntelliJ 13 & Android Annotations

download

ProGuard 4.11
Android annotations 2.7.1

Settings:







Tuesday, February 11, 2014

IntelliJ 13 + Scaloid + maven 3

Some helpful links:

Scaloid:  https://github.com/pocorall/scaloid
Scaloid maven project:  https://github.com/pocorall/hello-scaloid-maven
or https://github.com/kosiara/hello-scaloid-maven
Maven: http://maven.apache.org/
Intellij 13: http://www.jetbrains.com/idea/
JDK 6: JDK_6
Android API level 8:  http://developer.android.com/sdk/index.html


1. Download&install&set up - maven, intellij 13, Android SDK
2. Install JDK 6 alongside JDK 7 (in my case it was: /usr/lib/jvm/jdk1.6.0_45 )
3. Download API level 8 SDK platform for Android from Android SDK Manager
(adt-linux-x64/sdk/tools/android ), set ANDROID_HOME env variable
4. Clone scaloid maven project repository
5. mvn package -Prelease  in the scaloid maven project
6. Run IntelliJ, install SCALA plugin (worked for me on version:  0.30.380 and 0.26.361)
7. Close IntelliJ, choose Open Project,  navigate to the project directory and open the pom.xml file (hello-scaloid-maven/pom.xml)

upon question:

Language level changes will take effect on project reload.
Would you like to reload project "hello-scaloid-maven" now?

select Yes. Android framework will be loaded.

8. Change project settings according to the attached images.

















Errors:

Unable to execute dex: method ID not in [0, 0xffff]: 65536

Your ProGuard configuration DID not work. Scala has too many methods for dex compiler. Dex has a limit of 65536. ProGuard limits the number of SCALA methods and so the dex compiler succeeds in processing the class files.




Monday, February 3, 2014

HTML :textile advanced table layout

In this example we're going learn how to:
- create a cell spanning 2 rows
- create a cell spanning 2 cells
- create styled links
- create image with specific height/width


Advanced textile table layout


table(#newstable){width:100%; border:0px;border-collapse:collapse}.
|\2{font-weight:bold;color:#FF6700;width:50%}. Topic 1 |\2{font-weight:bold;color:#FF6700;width:50%}. Topic 2 |
|/3{width:1%}.!{height:120px;width:170px}http://www.android.com/media/android_vector.jpg! 
|{height:22px}<. By: example |/3{width:1%}.!{height:120px;width:170px}http://www.android.com/media/android_vector.jpg! |{height:22px}<. 1111 |
|<. text  |<. 2222 |
|{height:22px}<. "{font-style:italic;color:#FF6700}Read more":http://test.com |{height:22px}<. "{font-style:italic;color:#FF6700}Read more":http://test.com |



Download textile

Tuesday, January 14, 2014

Ubuntu 12.04 - make a DVD ISO from command line


Make a DVD ISO from command line. No additional tools required.

sudo dd if=/dev/sr0 of=image_name.iso


Sunday, January 12, 2014

Ubuntu 12.04 - TeamViewer 8 / TeamViewer 9 - no sound/no microphone. Sound problems

TeamViewer 8 run in Wine so if there is no sound - it's probably wine's configuration fault. In my case I had a standard Intel's integrated sound card in Lenovo Workstation.

To resolve the issue, install wine 1.4 and then configure teamviewer's wine settings:

sudo apt-get install wine1.4

and then:

WINEPREFIX=$HOME/.config/teamviewer8 winecfg


For more details go to:

Configuration:



THE PROCEDURE DOES NOT WORK FOR TEAMVIEWER 9,
On Ubuntu 12.04 I tried:

  • removing puleaudio package
  • installing wine1.6 instead wine1.4 (teamviewer9 runs on wine1.6)

sudo apt-get purge pulseaudio

WINEPREFIX=$HOME/.config/teamviewer9 winecfg

$ sudo add-apt-repository ppa:ubuntu-wine/ppa
$ sudo apt-get update
$ sudo apt-get install wine1.6
$ sudo apt-get install winetricks