2015-01-06 12 views
16

アクティビティとは異なるフォルダにクラスを設定したいとします。 現在のフォルダ構造:Android Studioでクラスのフォルダを追加する場所はどこですか?

-> APP 
    -> Manifests 
    -> Java 
    -> com.test.testing 
     -> classes 
      auth.java 
     home_activity 
    -> libs 

auth.java

package com.test.testing; 
// error here: Package name ‘com.test.testing’ does not correspond to file path. 
public class auth{ 

    public void auth(){} 
} 

プラス、私が活動中でこのクラスを呼び出すことはできません。

import classes.auth; 

だから私はGradleのANを構築するために行ってきましたこれは私の構成です:

apply plugin: 'com.android.application' 

android { 
    compileSdkVersion 21 
    buildToolsVersion "21.1.2" 

    defaultConfig { 
     applicationId "com.test.testing" 
     minSdkVersion 15 
     targetSdkVersion 21 
     versionCode 1 
     versionName "1.0" 
    } 
    buildTypes { 
     release { 
      minifyEnabled false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
     } 
    } 
    sourceSets { 
     main { 
      java.srcDirs = ['src/main/java', 'java/', 'src/main/java/com/test/testing/classes'] 
      assets.srcDirs = ['src/main/assets', 'src/main/assets/'] 
     } 
    } 
} 

Android Studioはフォルダ構造を少し混乱させていますが、いくつかの選択肢がありますが、その中にはいくつかのことがわかりません。 私の場合、 "classes"というフォルダを "Java Folder"として追加しました。 enter image description here

EDIT 1: 先端ではなく、フォルダのパッケージを作成することでした。 私はそれの中にパッケージと新しいファイルを作成しました。自動的に、この情報でファイルを埋めるアンドロイドスタジオauth.java;

package com.test.testing.classes; 

public class auth { 

} 

私はまだクラスをアクティビティにインポートできません。言っ Althought私は(活動中)import classesの入力を開始するとき、それはドキュメントヘルプとして表示されますが、それは任意のオブジェクトが関連付けられていない、:

import classes.auth; 

はエラーになります。

私はGradleのファイルを構築するためにもう一度行って、それがjava.srcDirsに何も追加しませんでした:

sourceSets { 
     main { 
      java.srcDirs = ['java/', 'src/main/java'] 
     } 
    } 

EDIT 2: import問題を解決するには、文字列でした。 代わりの

import classes.auth; 

は次のようになります。

import com.test.testing.classes.auth; 
+0

私はその男が上級者ではないことを心配しないでください。私は2つの理由であなたの答えを受け入れていません:stackoverflow do notはまだ私を許可し、私はパッケージを作成した後でもいくつかの問題を見つけるよ。 – Linesofcode

答えて

17

選択Package上記リストから(自分のスナップショットで)

1

私は多くの人が、ファイル構造について混乱していると思い、ここにあります:

app 
    |--> manifests 
    |--> java 
    |  |--> com.example.yourapp 
    |  |      |--> MainActivity.java 
    |  |      |--> YOUR_PACKAGE_FOLDER 
    |  | 
    |  |--> com.example.yourapp(android test) 
    |  |--> com.example.yourapp(test) 
    | 
    |--> res 

お試しくださいFile -> New -> Package、アンドロイドスタジオが正しい場所にフォルダを作成するようにします。
(クラスの場合はFile -> New -> Java Class

関連する問題